import { ISelector, ILeaf, ISelectorProxy, ISelectorConfig, IPicker, IFinder, IPointData, IPickOptions, IPickResult, IFindCondition, IFindMethod, ILeafList, IRadiusPointData, IPickBottom } from '@leafer/interface'; import { LeafList } from '@leafer/core'; declare class Selector implements ISelector { target?: ILeaf; proxy?: ISelectorProxy; config: ISelectorConfig; picker: IPicker; finder?: IFinder; constructor(target: ILeaf, userConfig?: ISelectorConfig); getByPoint(hitPoint: IPointData, hitRadius: number, options?: IPickOptions): IPickResult; hitPoint(hitPoint: IPointData, hitRadius: number, options?: IPickOptions): boolean; getBy(condition: number | string | IFindCondition | IFindMethod, branch?: ILeaf, one?: boolean, options?: any): ILeaf | ILeaf[]; destroy(): void; } declare class Picker implements IPicker { protected target?: ILeaf; protected selector: ISelector; protected findList: ILeafList; protected exclude: ILeafList; protected point: IRadiusPointData; constructor(target: ILeaf, selector: ISelector); getByPoint(hitPoint: IPointData, hitRadius: number, options?: IPickOptions): IPickResult; hitPoint(hitPoint: IPointData, hitRadius: number, options?: IPickOptions): boolean; getBestMatchLeaf(list: ILeaf[], bottomList: IPickBottom[], ignoreHittable: boolean, allowNull?: boolean): ILeaf; getPath(leaf: ILeaf): LeafList; getHitablePath(leaf: ILeaf): LeafList; getThroughPath(list: ILeaf[]): LeafList; protected hitBranch(branch: ILeaf): void; protected eachFind(children: ILeaf[], hitMask: boolean): void; protected hitChild(child: ILeaf, point: IRadiusPointData, proxy?: ILeaf): void; protected clear(): void; destroy(): void; } export { Picker, Selector };