import { DataObject, SelectTransform } from './internal'; export declare type SelectItem = { path: string; value: DataObject; key: string | number; object: DataObject; index: number; }; export declare class Select { private st; private sync; private $injected; private $progress; private $selectedRoot; private $templateRoot; private $selected; private $val; constructor(st: SelectTransform, sync?: boolean); root(): DataObject; values(): DataObject[]; paths(): string[]; keys(): (string | number)[]; objects(): DataObject[]; transformSync(obj: DataObject | string, serialized: boolean): Select; transform(obj: DataObject | string, serialized: boolean): Promise; inject(obj: DataObject | string, serialized: boolean): Select; exec(current: DataObject, path: string, filter: Function): void; select(obj: DataObject, filter: Function | undefined, serialized: boolean): this; transformSelectedItemWith(selection: SelectItem, template: DataObject): void; transformSelectedItem(selection: SelectItem, data: DataObject): void; }