import type { ReactNode, MouseEvent } from "react";
import type { TreeNodeData } from "./types";
export interface TreeContextValue {
    checkable: boolean;
    checkedKeys: Set<string>;
    halfCheckedKeys: Set<string>;
    onCheckToggle: (key: string) => void;
    titleRender?: (node: TreeNodeData) => ReactNode;
    switcherIcon?: ReactNode | ((props: {
        expanded: boolean;
    }) => ReactNode);
    filterTreeNode?: (node: TreeNodeData) => boolean;
    showLine: boolean;
    blockNode: boolean;
    disabled: boolean;
    selectable: boolean;
    indent: number;
    loadingKeys: Set<string>;
    hasLoadData: boolean;
    onRightClick?: (info: {
        event: MouseEvent;
        node: TreeNodeData;
    }) => void;
}
export declare const TreeContext: import("react").Context<TreeContextValue>;
export declare const useTreeContext: () => TreeContextValue;
