import type { RecordString } from '../../select-modal';
import type { DefineComponent, PropType, ComputedRef, Ref, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes } from 'vue';
import type { FieldNames, TreeSelectPayload, TreeNode } from './tree-select-types';
declare const _sfc_main: DefineComponent<{
    readonly value: {
        readonly type: StringConstructor;
        readonly default: "";
    };
    readonly multiple: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly dictCode: {
        readonly type: StringConstructor;
        readonly default: "";
    };
    readonly params: {
        readonly type: PropType<RecordString>;
        readonly default: () => {};
    };
    readonly fieldNames: {
        readonly type: PropType<FieldNames>;
        readonly default: () => {
            children: string;
            label: string;
            value: string;
        };
    };
    readonly options: {
        readonly type: PropType<TreeNode[]>;
        readonly default: () => never[];
    };
    readonly 'onUpdate:value': {
        type: PropType<((value: string) => void) | ((value: string) => void)[]>;
        default: unknown;
    };
    readonly onChange: {
        type: PropType<((payload: TreeSelectPayload) => void) | ((payload: TreeSelectPayload) => void)[]>;
        default: unknown;
    };
}, {
    classes: ComputedRef<{
        [key: string]: string | boolean;
    }>;
    realValue: Ref<string | string[]>;
    options: Ref<{
        [x: string]: unknown;
        id: string;
        key: string;
        hasChildren: boolean;
        title: string;
        value: string;
        level: number;
        children?: any[] | null | undefined;
    }[]>;
    labelProp: ComputedRef<string>;
    fieldNames: FieldNames;
    multiple: Ref<boolean>;
    onChange: (value: string | string[], label: string | string[], extra: any) => void;
    searchValue: Ref<string>;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("change" | "update:value")[], "change" | "update:value", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
    readonly value: {
        readonly type: StringConstructor;
        readonly default: "";
    };
    readonly multiple: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly dictCode: {
        readonly type: StringConstructor;
        readonly default: "";
    };
    readonly params: {
        readonly type: PropType<RecordString>;
        readonly default: () => {};
    };
    readonly fieldNames: {
        readonly type: PropType<FieldNames>;
        readonly default: () => {
            children: string;
            label: string;
            value: string;
        };
    };
    readonly options: {
        readonly type: PropType<TreeNode[]>;
        readonly default: () => never[];
    };
    readonly 'onUpdate:value': {
        type: PropType<((value: string) => void) | ((value: string) => void)[]>;
        default: unknown;
    };
    readonly onChange: {
        type: PropType<((payload: TreeSelectPayload) => void) | ((payload: TreeSelectPayload) => void)[]>;
        default: unknown;
    };
}>> & {
    onChange?: ((...args: any[]) => any) | undefined;
    "onUpdate:value"?: ((...args: any[]) => any) | undefined;
}, {
    readonly value: string;
    readonly params: RecordString;
    readonly onChange: ((payload: TreeSelectPayload) => void) | ((payload: TreeSelectPayload) => void)[];
    readonly multiple: boolean;
    readonly options: TreeNode[];
    readonly 'onUpdate:value': ((value: string) => void) | ((value: string) => void)[];
    readonly fieldNames: FieldNames;
    readonly dictCode: string;
}, {}>;
export default _sfc_main;
