/** * @public */ export declare type TreeData = { text?: string; value?: T; icon?: string | false; state: TreeNodeState; children: TreeData[]; contextmenu?: string | Function; component?: string | Function; }; /** * @public */ export declare type TreeNodeState = { opened: boolean; selected: boolean; disabled: boolean; loading: boolean; highlighted: boolean; openable: boolean; dropPosition: DropPosition; dropAllowed: boolean; }; /** * @public */ export declare type EventData = { data: TreeData; path: number[]; }; /** * @public */ export declare type ContextMenuData = { data: TreeData; path: number[]; root: TreeData[]; parent?: any; }; /** * @public */ export declare class DoubleClick { private timeout; private clicked; private timer; constructor(timeout?: number); onclick(singleClick: () => void): void; } /** * @public */ export declare function getContainerClassName(noDots: boolean | undefined): string; /** * @public */ export declare function getNodeClassName(data: TreeData, last: boolean): string; /** * @public */ export declare function getAnchorClassName(data: TreeData, hovered: boolean, path: number[]): string; /** * @public */ export declare function getCheckboxClassName(data: TreeData, path: number[]): string; /** * @public */ export declare function getRootClassName(checkbox: boolean | undefined, size: string | undefined, theme?: string): string; /** * @public */ export declare function getIconClassName(icon: string | false | undefined): string; /** * @public */ export declare function getOclClassName(path: number[]): string; /** * @public */ export declare function getMarkerClassName(data: TreeData): string; /** * @public */ export declare const enum DropPosition { empty = 0, up = 1, inside = 2, down = 3 } /** * @public */ export declare type DropData = { sourceData: TreeData; sourcePath: number[]; targetData: TreeData; targetPath: number[]; }; /** * @public */ export declare function getNodeFromPath(rootData: TreeData[], path: number[]): TreeData | null; /** * @public */ export declare function ondrag(pageY: number, dragTarget: HTMLElement | null, dropTarget: HTMLElement | null, data: TreeData[], dropAllowed?: (dropData: DropData) => boolean, next?: () => void): void; /** * @public */ export declare function ondragleave(target: HTMLElement, data: TreeData[]): void; /** * @public */ export declare function ondrop(target: HTMLElement, dragTarget: HTMLElement | null, data: TreeData[], next: (dropData: DropData) => void): void; /** * @public */ export declare function clearMarkerOfTree(tree: TreeData): void; /** * @public */ export declare function getId(path: number[], preid?: string): string | undefined;