// Type definitions for jquery.dynatree 1.2.5 // Project: http://code.google.com/p/dynatree/ // Definitions by: François de Campredon // Definitions: https://github.com/borisyankov/DefinitelyTyped /// /// declare module JQueryUI { interface UI { dynatree: DynatreeNamespace } } interface JQuery { dynatree(options?: DynatreeOptions): DynaTree; dynatree(option?: string, ...rest: any[]): any; } interface DynaTree { activateKey(key: string): DynaTreeNode; count(): number; enable(): void; disable(): void; enableUpdate(enable: boolean): void; getActiveNode(): DynaTreeNode; getNodeByKey(key: string): DynaTreeNode; getPersistData(): any; getRoot(): DynaTreeNode; getSelectedNodes(stopOnParents: boolean): DynaTreeNode[]; initialize(): void; isInitializing(): boolean; isReloading(): boolean; isUserEvent(): boolean; loadKeyPath(keyPath: string, callback: (node: DynaTreeNode, status: string) =>void ): void; reactivate(setFocus: boolean): void; redraw(): void; reload(): void; renderInvisibleNodes(): void; selectKey(key: string, flag: string): DynaTreeNode; serializeArray(stopOnParents: boolean): any[]; toDict(includeRoot?: boolean): any; visit(fn: (node: DynaTreeNode) =>boolean, includeRoot?: boolean): void; } interface DynaTreeNode { data: DynaTreeDataModel; activate(): void; activateSilently(): void; addChild(nodeData: DynaTreeDataModel, beforeNode?: DynaTreeNode): void; addChild(nodeData: DynaTreeDataModel[], beforeNode?: DynaTreeNode): void; appendAjax(ajaxOptions: JQueryAjaxSettings): void; countChildren(): number; deactivate(): void; expand(flag: boolean): void; focus(): void; getChildren(): DynaTreeNode[]; getEventTargetType(event: Event): string; getLevel(): number; getNextSibling(): DynaTreeNode; getParent(): DynaTreeNode; getPrevSibling(): DynaTreeNode; hasChildren(): boolean; isActive(): boolean; isChildOf(otherNode: DynaTreeNode): boolean; isDescendantOf(otherNode: DynaTreeNode): boolean; isExpanded(): boolean; isFirstSibling(): boolean; isFocused(): boolean; isLastSibling(): boolean; isLazy(): boolean; isLoading(): boolean; isSelected(): boolean; isStatusNode(): boolean; isVisible(): boolean; makeVisible(): boolean; move(targetNode: DynaTreeNode, mode: string): boolean; reload(force: boolean): void; reloadChildren(callback?: (node: DynaTreeNode, isOk: boolean) => any): void; remove(): void; removeChildren(): void; render(useEffects: boolean, includeInvisible: boolean): void; resetLazy(): void; scheduleAction(mode: string, ms: number): void; select(flag: boolean): void; setLazyNodeStatus(status: number): void; setTitle(title: string): void; sortChildren(cmp?: (a: DynaTreeNode, b: DynaTreeNode) =>number, deep?: boolean): void; toDict(recursive: boolean, callback?: (node: any) =>any): any; toggleExpand(): void; toggleSelect(): void; visit(fn: (node: DynaTreeNode) =>boolean, includeSelf: boolean): void; visitParents(fn: (node: DynaTreeNode) =>boolean, includeSelf: boolean): void; } interface DynatreeOptions { title?: string; // Tree's name (only used for debug outpu) minExpandLevel?: number; // 1: root node is not collapsible imagePath?: string; // Path to a folder containing icons. Defaults to 'skin/' subdirectory. children?: DynaTreeDataModel[]; // Init tree structure from this object array. initId?: string; // Init tree structure from a