import type { IRecord } from '../../table/src/table/types';
import type { NodeKey } from './props';
declare const _default: import("vue").DefineComponent<{
    disabled: boolean;
    draggable: boolean;
    multiple: boolean;
    autoFocus: boolean;
    filterable: boolean;
    checkStrictly: boolean;
    asyncLoad: boolean;
    checkStrategy: "SHOW_ALL" | "SHOW_PARENT" | "SHOW_CHILD";
    defaultExpandAll: boolean;
    defaultExpandedKeys: NodeKey[];
    defaultSelectedKeys: NodeKey[];
    showSearchBar: boolean;
    showCollapse: boolean;
    size?: import("../../_utils/types").ComponentSize | undefined;
    placeholder?: string | undefined;
    class?: string | import("../../_utils/types").Arrayable<Record<string, boolean>> | undefined;
    style?: import("../../_utils/types").StyleValue | undefined;
    modelValue?: NodeKey[] | undefined;
    dataSource?: IRecord<any>[] | undefined;
    fetch?: import("../../table/src/table/types").IFetch | undefined;
    fieldsDefine?: {
        textKey?: string | undefined;
        valueKey?: string | undefined;
        children?: string | undefined;
    } | undefined;
    titleRender?: ((row: IRecord<any>, node: any) => import("../../_utils/types").JSXElement) | undefined;
}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (val: NodeKey[]) => boolean;
    selectChange: (record: IRecord<any>) => boolean;
    checkChange: (records: IRecord<any>[]) => boolean;
    dropChange: (...rest: any[]) => boolean;
    dragStart: (...rest: any[]) => boolean;
    expand: (expandKeys: NodeKey[], option: {
        expanded: boolean;
        node: any;
    }) => boolean;
}, string, import("vue").PublicProps, Readonly<{
    disabled: boolean;
    draggable: boolean;
    multiple: boolean;
    autoFocus: boolean;
    filterable: boolean;
    checkStrictly: boolean;
    asyncLoad: boolean;
    checkStrategy: "SHOW_ALL" | "SHOW_PARENT" | "SHOW_CHILD";
    defaultExpandAll: boolean;
    defaultExpandedKeys: NodeKey[];
    defaultSelectedKeys: NodeKey[];
    showSearchBar: boolean;
    showCollapse: boolean;
    size?: import("../../_utils/types").ComponentSize | undefined;
    placeholder?: string | undefined;
    class?: string | import("../../_utils/types").Arrayable<Record<string, boolean>> | undefined;
    style?: import("../../_utils/types").StyleValue | undefined;
    modelValue?: NodeKey[] | undefined;
    dataSource?: IRecord<any>[] | undefined;
    fetch?: import("../../table/src/table/types").IFetch | undefined;
    fieldsDefine?: {
        textKey?: string | undefined;
        valueKey?: string | undefined;
        children?: string | undefined;
    } | undefined;
    titleRender?: ((row: IRecord<any>, node: any) => import("../../_utils/types").JSXElement) | undefined;
}> & Readonly<{
    onExpand?: ((expandKeys: NodeKey[], option: {
        expanded: boolean;
        node: any;
    }) => any) | undefined;
    "onUpdate:modelValue"?: ((val: NodeKey[]) => any) | undefined;
    onSelectChange?: ((record: IRecord<any>) => any) | undefined;
    onCheckChange?: ((records: IRecord<any>[]) => any) | undefined;
    onDropChange?: ((...args: any[]) => any) | undefined;
    onDragStart?: ((...args: any[]) => any) | undefined;
}>, {
    disabled: boolean;
    draggable: boolean;
    multiple: boolean;
    autoFocus: boolean;
    filterable: boolean;
    checkStrictly: boolean;
    asyncLoad: boolean;
    checkStrategy: "SHOW_ALL" | "SHOW_PARENT" | "SHOW_CHILD";
    defaultExpandAll: boolean;
    defaultExpandedKeys: NodeKey[];
    defaultSelectedKeys: NodeKey[];
    showSearchBar: boolean;
    showCollapse: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
