import { Node, type NodeFormatted, type NodeParams } from "../domains/index.js"; interface TreePresenterInitParams { rootId?: string; defaultOpenNodeIds?: string[]; defaultLockedOpenNodeIds?: string[]; loadingNodeIds?: string[]; } interface ITreePresenter { init: (params: TreePresenterInitParams) => void; initNodes: (nodes?: NodeParams[]) => void; handleDrop: (newTree: Node[]) => Promise; vm: { nodes: NodeFormatted[]; rootId: string; openNodeIds: string[]; lockedOpenNodeIds?: string[]; loadingNodeIds?: string[]; }; } declare class TreePresenter implements ITreePresenter { private nodes; private openNodeIds; private lockedOpenNodeIds; private loadingNodeIds; private rootId; constructor(); get vm(): { nodes: NodeFormatted[]; openNodeIds: string[]; lockedOpenNodeIds: string[]; loadingNodeIds: string[]; rootId: string; }; init(params: TreePresenterInitParams): void; initNodes(nodes?: NodeParams[]): void; handleDrop: (newTree: NodeParams[]) => Promise; } export { TreePresenter, type TreePresenterInitParams };