import { TreeProps, TreeNodeModel } from '../tree';
import { TdSelectInputProps } from '../select-input';
import { PopupVisibleChangeContext } from '../popup';
import { TreeSelectValue, TreeSelectValueChangeTrigger } from './type';
import { TreeOptionData } from '../common';
declare const _default: import("vue").DefineComponent<{
    autoWidth: BooleanConstructor;
    borderless: BooleanConstructor;
    clearable: BooleanConstructor;
    collapsedItems: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: {
            value: TreeOptionData<string | number>[];
            collapsedSelectedItems: TreeOptionData<string | number>[];
            count: number;
        }) => import("../common").SlotReturnValue>;
    };
    data: {
        type: import("vue").PropType<TreeOptionData<string | number>[]>;
        default: () => TreeOptionData<string | number>[];
    };
    disabled: BooleanConstructor;
    empty: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("../common").SlotReturnValue)>;
        default: string;
    };
    filter: {
        type: import("vue").PropType<(filterWords: string, option: TreeOptionData<string | number>) => boolean>;
    };
    filterable: BooleanConstructor;
    inputProps: {
        type: import("vue").PropType<import("../input").TdInputProps>;
    };
    inputValue: {
        type: import("vue").PropType<string>;
        default: any;
    };
    defaultInputValue: {
        type: import("vue").PropType<string>;
    };
    keys: {
        type: import("vue").PropType<import("../common").TreeKeysType>;
    };
    loading: BooleanConstructor;
    loadingText: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("../common").SlotReturnValue)>;
        default: string;
    };
    max: {
        type: NumberConstructor;
        default: number;
    };
    minCollapsedNum: {
        type: NumberConstructor;
        default: number;
    };
    multiple: BooleanConstructor;
    placeholder: {
        type: StringConstructor;
        default: any;
    };
    popupProps: {
        type: import("vue").PropType<import("../popup").TdPopupProps>;
    };
    popupVisible: {
        type: BooleanConstructor;
        default: any;
    };
    prefixIcon: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("../common").SlotReturnValue>;
    };
    readonly: BooleanConstructor;
    selectInputProps: {
        type: import("vue").PropType<TdSelectInputProps>;
    };
    size: {
        type: import("vue").PropType<"small" | "medium" | "large">;
        default: "small" | "medium" | "large";
        validator(val: "small" | "medium" | "large"): boolean;
    };
    tagProps: {
        type: import("vue").PropType<import("..").TdTagProps>;
    };
    treeProps: {
        type: import("vue").PropType<TreeProps>;
    };
    value: {
        type: import("vue").PropType<TreeSelectValue>;
        default: TreeSelectValue;
    };
    modelValue: {
        type: import("vue").PropType<TreeSelectValue>;
        default: TreeSelectValue;
    };
    defaultValue: {
        type: import("vue").PropType<TreeSelectValue>;
    };
    valueDisplay: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: {
            value: TreeOptionData<string | number>[];
            onClose: () => void;
        }) => import("../common").SlotReturnValue>;
    };
    valueType: {
        type: import("vue").PropType<"object" | "value">;
        default: "object" | "value";
        validator(val: "object" | "value"): boolean;
    };
    onBlur: import("vue").PropType<(context: {
        value: TreeSelectValue;
        e: FocusEvent;
    }) => void>;
    onChange: import("vue").PropType<(value: TreeSelectValue, context: {
        node: TreeNodeModel<TreeOptionData<string | number>>;
        trigger: TreeSelectValueChangeTrigger;
        e?: MouseEvent | KeyboardEvent;
    }) => void>;
    onClear: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onFocus: import("vue").PropType<(context: {
        value: TreeSelectValue;
        e: FocusEvent;
    }) => void>;
    onInputChange: import("vue").PropType<(value: string, context?: import("../select-input").SelectInputValueChangeContext) => void>;
    onPopupVisibleChange: import("vue").PropType<(visible: boolean, context: PopupVisibleChangeContext) => void>;
    onRemove: import("vue").PropType<(options: import("./type").RemoveOptions<TreeOptionData<string | number>>) => void>;
    onSearch: import("vue").PropType<(filterWords: string) => void>;
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    autoWidth: BooleanConstructor;
    borderless: BooleanConstructor;
    clearable: BooleanConstructor;
    collapsedItems: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: {
            value: TreeOptionData<string | number>[];
            collapsedSelectedItems: TreeOptionData<string | number>[];
            count: number;
        }) => import("../common").SlotReturnValue>;
    };
    data: {
        type: import("vue").PropType<TreeOptionData<string | number>[]>;
        default: () => TreeOptionData<string | number>[];
    };
    disabled: BooleanConstructor;
    empty: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("../common").SlotReturnValue)>;
        default: string;
    };
    filter: {
        type: import("vue").PropType<(filterWords: string, option: TreeOptionData<string | number>) => boolean>;
    };
    filterable: BooleanConstructor;
    inputProps: {
        type: import("vue").PropType<import("../input").TdInputProps>;
    };
    inputValue: {
        type: import("vue").PropType<string>;
        default: any;
    };
    defaultInputValue: {
        type: import("vue").PropType<string>;
    };
    keys: {
        type: import("vue").PropType<import("../common").TreeKeysType>;
    };
    loading: BooleanConstructor;
    loadingText: {
        type: import("vue").PropType<string | ((h: typeof import("vue").h) => import("../common").SlotReturnValue)>;
        default: string;
    };
    max: {
        type: NumberConstructor;
        default: number;
    };
    minCollapsedNum: {
        type: NumberConstructor;
        default: number;
    };
    multiple: BooleanConstructor;
    placeholder: {
        type: StringConstructor;
        default: any;
    };
    popupProps: {
        type: import("vue").PropType<import("../popup").TdPopupProps>;
    };
    popupVisible: {
        type: BooleanConstructor;
        default: any;
    };
    prefixIcon: {
        type: import("vue").PropType<(h: typeof import("vue").h) => import("../common").SlotReturnValue>;
    };
    readonly: BooleanConstructor;
    selectInputProps: {
        type: import("vue").PropType<TdSelectInputProps>;
    };
    size: {
        type: import("vue").PropType<"small" | "medium" | "large">;
        default: "small" | "medium" | "large";
        validator(val: "small" | "medium" | "large"): boolean;
    };
    tagProps: {
        type: import("vue").PropType<import("..").TdTagProps>;
    };
    treeProps: {
        type: import("vue").PropType<TreeProps>;
    };
    value: {
        type: import("vue").PropType<TreeSelectValue>;
        default: TreeSelectValue;
    };
    modelValue: {
        type: import("vue").PropType<TreeSelectValue>;
        default: TreeSelectValue;
    };
    defaultValue: {
        type: import("vue").PropType<TreeSelectValue>;
    };
    valueDisplay: {
        type: import("vue").PropType<(h: typeof import("vue").h, props: {
            value: TreeOptionData<string | number>[];
            onClose: () => void;
        }) => import("../common").SlotReturnValue>;
    };
    valueType: {
        type: import("vue").PropType<"object" | "value">;
        default: "object" | "value";
        validator(val: "object" | "value"): boolean;
    };
    onBlur: import("vue").PropType<(context: {
        value: TreeSelectValue;
        e: FocusEvent;
    }) => void>;
    onChange: import("vue").PropType<(value: TreeSelectValue, context: {
        node: TreeNodeModel<TreeOptionData<string | number>>;
        trigger: TreeSelectValueChangeTrigger;
        e?: MouseEvent | KeyboardEvent;
    }) => void>;
    onClear: import("vue").PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onFocus: import("vue").PropType<(context: {
        value: TreeSelectValue;
        e: FocusEvent;
    }) => void>;
    onInputChange: import("vue").PropType<(value: string, context?: import("../select-input").SelectInputValueChangeContext) => void>;
    onPopupVisibleChange: import("vue").PropType<(visible: boolean, context: PopupVisibleChangeContext) => void>;
    onRemove: import("vue").PropType<(options: import("./type").RemoveOptions<TreeOptionData<string | number>>) => void>;
    onSearch: import("vue").PropType<(filterWords: string) => void>;
}>>, {
    max: number;
    data: TreeOptionData<string | number>[];
    value: TreeSelectValue;
    loading: boolean;
    disabled: boolean;
    multiple: boolean;
    size: "small" | "medium" | "large";
    readonly: boolean;
    empty: string | ((h: typeof import("vue").h) => import("../common").SlotReturnValue);
    placeholder: string;
    modelValue: TreeSelectValue;
    autoWidth: boolean;
    clearable: boolean;
    inputValue: string;
    minCollapsedNum: number;
    borderless: boolean;
    popupVisible: boolean;
    loadingText: string | ((h: typeof import("vue").h) => import("../common").SlotReturnValue);
    valueType: "object" | "value";
    filterable: boolean;
}, {}>;
export default _default;
