import { TreeNode } from './TreeNode'; import { UTIL } from './Util'; import { NodeInterface } from './Treant'; import { Tree } from './Tree'; import { CollapsableNodesStore } from '@pointlinejs/stores/collapsable-nodes/collaplable-nodes.store'; export declare class NodeDBState { totalNodes: number; nodesWithHeightAndWidth: Set; dbReadyResolve: (value: boolean | PromiseLike) => void; dbReadyReject: (value: boolean | PromiseLike) => void; dbReady: Promise | null; } export declare class NodeDB { nodeDBState: NodeDBState; private readonly collapsableNodesStore; protected readonly maxStackedChilren = 1; protected util: UTIL; db: TreeNode[]; constructor(nodeDBState: NodeDBState, collapsableNodesStore: CollapsableNodesStore); get size(): number; init(nodeStructure: Partial, tree: Tree): this; private iterateChildren; private reset; private createGeometries; get(nodeId: number): TreeNode; walk(callback: (node: TreeNode) => void): this; createNode(nodeStructure: Partial | 'pseudo', parentId: number, tree: Tree, stackParentId?: number | null): TreeNode; removeChildren(nodeId: number): void; getMinMaxCoord(dim: 'X' | 'Y', parent: TreeNode, MinMax: { min: number; max: number; }): { min: number; max: number; }; private hasGrandChildren; }