import { ComputedRef, Ref } from "vue";
import { TreeData, TreeProps } from "./interface";
export type UseTree = {
    /**
     * 树形结构数据
     */
    _tree: Ref<TreeData[]>;
    /**
     * 树形结构展开的一维数组
     */
    _flatTree: ComputedRef<TreeData[]>;
    /**
     * 查找节点路径
     * @param id 节点id
     */
    _findNodePath: (id: string | number) => TreeData[];
    /**
     * 查找父节点
     * @param id 节点id
     */
    _findParent: (id?: string | number) => TreeData | undefined;
    /**
     * 查找兄弟节点
     * @param id 节点id
     */
    _findSiblings: (id?: string | number) => Array<TreeData> | undefined;
    /**
     * 节点向下查找全部叶子节点
     * @param id 节点id
     */
    _findLeafs: (id?: string | number) => Array<TreeData> | undefined;
    /**
     * 懒加载
     * @param node 节点
     */
    _lazyLoad: (node?: TreeData) => Promise<any>;
    /**
     * 重新加载节点状态
     */
    _reloadNodeStatus: () => void;
    /**
     * 已勾选的节点id
     */
    checkedKeys: ComputedRef<(string | number)[]>;
    /**
     * 已勾选的节点路径
     */
    checkedPath: ComputedRef<(string | number)[][]>;
    /**
     * 已勾选的节点标题
     */
    checkedTitle: ComputedRef<string[]>;
    /**
     * 已勾选的节点标题路径
     */
    checkedTitlePath: ComputedRef<string[][]>;
    /**
     * 查找节点
     * @param id 节点id
     */
    _findNode: (id?: string | number) => TreeData | undefined;
    /**
     * 查找mock节点
     */
    _findMockNodes: (id?: string | number) => Array<TreeData> | undefined;
    /**
     * 已展开的节点ID
     */
    expandedKeys: ComputedRef<(string | number)[]>;
    /**
     * 已展开的节点ID路径
     */
    expandedPath: ComputedRef<(string | number)[][]>;
};
declare const useTree: (props: TreeProps) => UseTree;
export { useTree };
