UNPKG

@gravity-ui/graph

Version:

Modern graph editor component

34 lines (33 loc) 1.02 kB
type TIterator = (node: Tree) => boolean; export interface ITree { iterate(): boolean; } export declare class Tree<T extends ITree = ITree> { data: T; parent: Tree; children: Set<Tree>; private childrenArray; protected childrenDirty: boolean; protected zIndexGroups: Map<number, Set<Tree>>; protected zIndexChildrenCache: { get: () => Tree<ITree>[]; reset(): void; clear(): void; }; renderOrder: number; zIndex: number; constructor(data: T, parent?: Tree); append(node: Tree): void; protected addInZIndex(node: Tree): void; protected removeZIndex(node: Tree): void; remove(node?: Tree): void; setChildren(nodes: Tree[]): void; updateZIndex(index: number): void; updateChildZIndex(child: Tree): void; clearChildren(): void; traverseDown(iterator: TIterator): void; private _traverse; protected getChildrenArray(): Tree<ITree>[]; protected _walkDown(iterator: TIterator, order: number): void; } export {};