import { IMap } from '../../../../../types'; import { ITreeNodeInfo, ITreeParams, IItemsAccessor } from './types'; import { NOT_FOUND_RECORD } from '../constants'; import { ItemsMap } from '../ItemsMap'; import { ITree, ITreeItemsInfo } from '../ITree'; export declare class TreeStructure implements ITree { private _params; private readonly _itemsAccessor; protected readonly _byParentId: IMap; protected readonly _nodeInfoById: IMap; constructor(_params: ITreeParams, _itemsAccessor: IItemsAccessor, _byParentId?: IMap, _nodeInfoById?: IMap); getItemsAccessor(): IItemsAccessor; get itemsAccessor(): IItemsAccessor; getParams(): ITreeParams; get byParentId(): IMap; get nodeInfoById(): IMap; getRootItems(): TItem[]; getById(id: TId): typeof NOT_FOUND_RECORD | TItem; getItems(parentId?: TId): ITreeItemsInfo; getChildren(parentId: TId): TItem[]; getTotalCount(): number; computeSubtotals(get: (item: TItem, hasChildren: boolean) => TSubtotals, add: (a: TSubtotals, b: TSubtotals) => TSubtotals): import("../helpers/map").CompositeKeysMap | Map; static create(params: ITreeParams, itemsAccessor: IItemsAccessor, byParentId?: IMap, nodeInfoById?: IMap): TreeStructure; static withNewItemsAccessor(itemsAccessor: IItemsAccessor, treeStructure: TreeStructure): TreeStructure; static createFromItems({ params, items, itemsAccessor, }: { params: ITreeParams; items: TItem[] | ItemsMap; itemsAccessor: IItemsAccessor; }): TreeStructure; isBlank(): boolean; } //# sourceMappingURL=TreeStructure.d.ts.map