import { SetupContext } from 'vue';
import { IInnerTreeNode, ITreeNode, IUseCore, IUseTree } from './use-tree-types';
export declare const DEFAULT_TREE_PLUGINS: ((data: import("vue").Ref<IInnerTreeNode[], IInnerTreeNode[]>, core: IUseCore, context: {
    attrs: {
        [x: string]: unknown;
    };
    slots: Readonly<{
        [name: string]: import("vue").Slot<any> | undefined;
    }>;
    emit: (event: string, ...args: any[]) => void;
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
} | {
    attrs: {
        [x: string]: unknown;
    };
    slots: Readonly<{
        [name: string]: import("vue").Slot<any> | undefined;
    }>;
    emit: (event: string, ...args: any[]) => void;
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
}, lazyLode: import("./use-tree-types").IUseLazyLoad) => import("./use-tree-types").IUseToggle)[];
export declare function useTree(tree: ITreeNode[], plugins: never[] | undefined, context: SetupContext): Partial<IUseTree>;
