import mitt from 'mitt';
import { TreeNode } from './tree-node';
import type { TreeNodeValue, TypeIdMap, TypeRelatedNodesOptions, TypeTargetNode, TypeTimer, TypeTreeEventState, TypeTreeFilter, TypeTreeFilterOptions, TypeTreeItem, TypeTreeNodeData, TypeTreeStoreOptions } from './types';
export declare class TreeStore {
    children: TreeNode[];
    nodes: TreeNode[];
    nodeMap: Map<TreeNodeValue, TreeNode>;
    privateMap: Map<string, TreeNode>;
    config: TypeTreeStoreOptions;
    activedMap: TypeIdMap;
    updatedMap: TypeIdMap;
    checkedMap: TypeIdMap;
    expandedMap: TypeIdMap;
    filterMap: TypeIdMap;
    updateTimer: TypeTimer;
    shouldReflow: boolean;
    hasFilter: boolean;
    prevFilter: TypeTreeFilter;
    emitter: ReturnType<typeof mitt>;
    constructor(options: TypeTreeStoreOptions);
    setConfig(options: TypeTreeStoreOptions): void;
    getChildren(): TreeNode[];
    getNode(item: TypeTargetNode): TreeNode;
    getIndex(node: TreeNode): number;
    getParent(value: TypeTargetNode): TreeNode;
    getParents(value: TypeTargetNode): TreeNode[];
    getNodeIndex(value: TypeTargetNode): number;
    getNodes(item?: TypeTargetNode, options?: TypeTreeFilterOptions): TreeNode[];
    append(list: TypeTreeNodeData[]): void;
    reload(list: TypeTreeNodeData[]): void;
    parseNodeData(para: TreeNodeValue | TreeNode | TypeTreeNodeData, item: TypeTreeNodeData | TypeTreeNodeData[] | TreeNode): {
        node: any;
        data: any;
    };
    appendNodes(para?: TypeTargetNode | TypeTreeNodeData, item?: TypeTreeNodeData | TreeNode): void;
    insertBefore(value: TypeTargetNode, item: TypeTreeItem): void;
    insertAfter(value: TypeTargetNode, item: TypeTreeItem): void;
    refreshNodes(): void;
    refreshState(): void;
    reflow(node?: TreeNode): void;
    updated(node?: TreeNode): void;
    getActived(map?: TypeIdMap): TreeNodeValue[];
    getActivedNodes(item?: TypeTargetNode): TreeNode[];
    replaceActived(list: TreeNodeValue[]): void;
    setActived(actived: TreeNodeValue[]): void;
    resetActived(): void;
    getExpanded(map?: TypeIdMap): TreeNodeValue[];
    replaceExpanded(list: TreeNodeValue[]): void;
    setExpanded(list: TreeNodeValue[]): void;
    setExpandedDirectly(list: TreeNodeValue[], expanded?: boolean): void;
    resetExpanded(): void;
    updateExpanded(list: TreeNodeValue[]): void;
    getChecked(map?: TypeIdMap): TreeNodeValue[];
    getCheckedNodes(item?: TypeTargetNode): TreeNode[];
    replaceChecked(list: TreeNodeValue[]): void;
    setChecked(list: TreeNodeValue[], isFromValueChange?: boolean): void;
    resetChecked(): void;
    updateAll(): void;
    remove(value?: TypeTargetNode): void;
    removeAll(): void;
    getRelatedNodes(list: TreeNodeValue[], options?: TypeRelatedNodesOptions): TreeNode[];
    emit(name: string, state?: TypeTreeEventState): void;
    lockFilterPathNodes(): void;
}
export default TreeStore;
