import type { TreeStore } from './tree-store';
import type { TreeNodeState, TreeNodeValue, TypeIdMap, TypeSettingOptions, TypeTreeItem, TypeTreeNodeData, TypeTreeNodeModel } from './types';
export declare const defaultStatus: {
    expandMutex: boolean;
    activable: boolean;
    checkable: boolean;
    disabled: boolean;
    draggable: boolean;
    loading: boolean;
};
export declare const privateKey = "__tdesign_id__";
export declare class TreeNode {
    tree: TreeStore;
    value: string;
    label: string;
    data: TypeTreeNodeData;
    parent: TreeNode;
    children: TreeNode[] | boolean;
    model: TypeTreeNodeModel;
    vmIsLeaf: boolean;
    vmIsFirst: boolean;
    vmIsLast: boolean;
    vmIsRest: boolean;
    vmIsLocked: boolean;
    expanded: boolean;
    expandMutex: boolean;
    actived: boolean;
    activable: boolean;
    checkable: boolean;
    vmCheckable: boolean;
    checked: boolean;
    indeterminate: boolean;
    disabled: boolean;
    draggable: boolean;
    visible: boolean;
    level: number;
    loading: boolean;
    constructor(tree: TreeStore, data?: TypeTreeNodeData, parent?: TreeNode);
    initChecked(): void;
    initExpanded(): void;
    initActived(): void;
    append(data: TypeTreeNodeData | TypeTreeNodeData[]): void;
    appendTo(tree: TreeStore, parent?: TreeNode, index?: number): void;
    insert(item: TypeTreeItem, index?: number): void;
    insertBefore(newData: TypeTreeItem): void;
    insertAfter(newData: TypeTreeItem): void;
    remove(): void;
    clean(): void;
    loadChildren(): Promise<void>;
    set(item: TreeNodeState): void;
    getParent(): TreeNode;
    getParents(): TreeNode[];
    getSiblings(): TreeNode[];
    getRoot(): TreeNode;
    getIndex(): number;
    getPath(): TreeNode[];
    getLevel(): number;
    isRest(): boolean;
    isVisible(): boolean;
    isDisabled(): boolean;
    isDraggable(): boolean;
    isExpandMutex(): boolean;
    isActivable(): boolean;
    isCheckable(): boolean;
    isActived(map?: Map<string, boolean>): boolean;
    isExpanded(map?: Map<string, boolean>): boolean;
    isChecked(map?: TypeIdMap): boolean;
    isIndeterminate(): boolean;
    isFirst(): boolean;
    isLast(): boolean;
    isLeaf(): boolean;
    lock(lockState: boolean): void;
    afterExpanded(): void;
    toggleExpanded(): TreeNodeValue[];
    setExpanded(expanded: boolean, opts?: TypeSettingOptions): TreeNodeValue[];
    toggleActived(): TreeNodeValue[];
    setActived(actived: boolean, opts?: TypeSettingOptions): TreeNodeValue[];
    toggleChecked(): TreeNodeValue[];
    setChecked(checked: boolean, opts?: TypeSettingOptions): TreeNodeValue[];
    update(): void;
    updateChecked(isFromValueChange?: boolean): void;
    updateChildren(): void;
    updateParents(): void;
    updateRelated(): void;
    walk(): TreeNode[];
    getModel(): TypeTreeNodeModel;
}
export default TreeNode;
