import type { Disposable } from '@difizen/mana-common'; import { DisposableCollection } from '@difizen/mana-common'; import type { TreeNode } from '../tree'; import { TreeDecoratorService } from '../tree-decorator'; import { TreeModel } from '../tree-model'; import type { TreeProps } from '../tree-protocol'; import { TreeViewDecorationData } from '../tree-view-decoration'; export declare class TreeViewDecorator implements Disposable { decorations: Map; protected toDispose: DisposableCollection; protected readonly decoratorService: TreeDecoratorService; readonly model: TreeModel; protected readonly props: TreeProps; constructor(decoratorService: TreeDecoratorService, model: TreeModel, props: TreeProps); protected init(): void; dispose(): void; /** * Update tree decorations. * - Updating decorations are debounced in order to limit the number of expensive updates. */ readonly updateDecorations: () => Promise | undefined; protected doUpdateDecorations(): Promise; /** * Get the tree decoration data for the given key. * @param node the tree node. * @param key the tree decoration data key. * * @returns the tree decoration data at the given key. */ getDecorationData(node: TreeNode, key: K): TreeViewDecorationData[K][]; /** * Get the tree node decorations. * @param node the tree node. * @returns the list of tree decoration data. */ protected getDecorations(node: TreeNode): TreeViewDecorationData[]; } //# sourceMappingURL=tree-view-decorator.d.ts.map