import type { Plugin } from '@vue/runtime-core';
import type { Recordable } from '../typings/global';
import type { ComponentInternalInstance, VNodeProps, AllowedComponentProps, ComponentCustomProps, Slot, ComponentPublicInstance, ComponentOptionsBase, Ref, ComputedRef, ComponentOptionsMixin, DebuggerEvent, nextTick, WatchOptions, WatchStopHandle, ShallowUnwrapRef, ComponentCustomProperties } from 'vue';
declare const _default: {
    new (...args: any[]): {
        $: ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            options: Recordable<any>[];
            placeholder: string;
            allowClear: boolean;
            fieldNames: {
                label: string;
                value: string;
            };
            showSearch: boolean;
            maxTagCount: number;
            maxTagTextLength: number;
            showArrow: boolean;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            optionFilterProp: string;
            immediate: boolean;
            alwaysLoad: boolean;
            showCheckBox: boolean;
            labelJoinValue: boolean;
            valueJoinLabel: boolean;
        }> & Omit<Readonly<{
            value?: unknown;
            allowClear?: unknown;
            api?: unknown;
            resultField?: unknown;
            numberToString?: unknown;
            fieldNames?: unknown;
            params?: unknown;
            immediate?: unknown;
            alwaysLoad?: unknown;
            placeholder?: unknown;
            options?: unknown;
            mode?: unknown;
            maxTagCount?: unknown;
            maxTagTextLength?: unknown;
            showArrow?: unknown;
            showCheckBox?: unknown;
            showSearch?: unknown;
            optionFilterProp?: unknown;
            labelJoinValue?: unknown;
            valueJoinLabel?: unknown;
            labelFormat?: unknown;
        } & {
            options: Recordable<any>[];
            placeholder: string;
            allowClear: boolean;
            fieldNames: {
                label: string;
                value: string;
            };
            showSearch: boolean;
            maxTagCount: number;
            maxTagTextLength: number;
            showArrow: boolean;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            optionFilterProp: string;
            immediate: boolean;
            alwaysLoad: boolean;
            showCheckBox: boolean;
            labelJoinValue: boolean;
            valueJoinLabel: boolean;
        } & {
            value?: Object | String | Number | any[] | undefined;
            mode?: "multiple" | "tags" | "SECRET_COMBOBOX_MODE_DO_NOT_USE" | undefined;
            api?: ((...args: any[]) => Promise<Recordable<any> | {
                value: string | number;
                label: string;
                disabeld?: boolean | undefined;
            }[]>) | undefined;
            labelFormat?: ((...args: any[]) => string) | undefined;
        }> & {
            "onUpdate:value"?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
            onSearch?: ((...args: any[]) => any) | undefined;
            "onOptions-change"?: ((...args: any[]) => any) | undefined;
        } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "options" | "placeholder" | "allowClear" | "fieldNames" | "showSearch" | "maxTagCount" | "maxTagTextLength" | "showArrow" | "resultField" | "numberToString" | "params" | "optionFilterProp" | "immediate" | "alwaysLoad" | "showCheckBox" | "labelJoinValue" | "valueJoinLabel">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: Slot | undefined;
        }>;
        $root: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $parent: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $emit: (event: "change" | "update:value" | "options-change" | "search", ...args: any[]) => void;
        $el: any;
        $options: ComponentOptionsBase<Readonly<{
            value?: unknown;
            allowClear?: unknown;
            api?: unknown;
            resultField?: unknown;
            numberToString?: unknown;
            fieldNames?: unknown;
            params?: unknown;
            immediate?: unknown;
            alwaysLoad?: unknown;
            placeholder?: unknown;
            options?: unknown;
            mode?: unknown;
            maxTagCount?: unknown;
            maxTagTextLength?: unknown;
            showArrow?: unknown;
            showCheckBox?: unknown;
            showSearch?: unknown;
            optionFilterProp?: unknown;
            labelJoinValue?: unknown;
            valueJoinLabel?: unknown;
            labelFormat?: unknown;
        } & {
            options: Recordable<any>[];
            placeholder: string;
            allowClear: boolean;
            fieldNames: {
                label: string;
                value: string;
            };
            showSearch: boolean;
            maxTagCount: number;
            maxTagTextLength: number;
            showArrow: boolean;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            optionFilterProp: string;
            immediate: boolean;
            alwaysLoad: boolean;
            showCheckBox: boolean;
            labelJoinValue: boolean;
            valueJoinLabel: boolean;
        } & {
            value?: Object | String | Number | any[] | undefined;
            mode?: "multiple" | "tags" | "SECRET_COMBOBOX_MODE_DO_NOT_USE" | undefined;
            api?: ((...args: any[]) => Promise<Recordable<any> | {
                value: string | number;
                label: string;
                disabeld?: boolean | undefined;
            }[]>) | undefined;
            labelFormat?: ((...args: any[]) => string) | undefined;
        }> & {
            "onUpdate:value"?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
            onSearch?: ((...args: any[]) => any) | undefined;
            "onOptions-change"?: ((...args: any[]) => any) | undefined;
        }, {
            prefixCls: string;
            loading: Ref<boolean>;
            state: any;
            innerOptions: ComputedRef<{
                label: any;
                value: any;
            }[]>;
            handleChange: (value: any, ...args: any[]) => void;
            handleVisibleChange: (open: boolean) => void;
            isMultipleMode: ComputedRef<boolean>;
            getTitle: ComputedRef<any>;
            computedShowSearch: ComputedRef<boolean>;
        }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("change" | "update:value" | "options-change" | "search")[], string, {
            options: Recordable<any>[];
            placeholder: string;
            allowClear: boolean;
            fieldNames: {
                label: string;
                value: string;
            };
            showSearch: boolean;
            maxTagCount: number;
            maxTagTextLength: number;
            showArrow: boolean;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            optionFilterProp: string;
            immediate: boolean;
            alwaysLoad: boolean;
            showCheckBox: boolean;
            labelJoinValue: boolean;
            valueJoinLabel: boolean;
        }> & {
            beforeCreate?: ((() => void) | (() => void)[]) | undefined;
            created?: ((() => void) | (() => void)[]) | undefined;
            beforeMount?: ((() => void) | (() => void)[]) | undefined;
            mounted?: ((() => void) | (() => void)[]) | undefined;
            beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
            updated?: ((() => void) | (() => void)[]) | undefined;
            activated?: ((() => void) | (() => void)[]) | undefined;
            deactivated?: ((() => void) | (() => void)[]) | undefined;
            beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
            beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
            destroyed?: ((() => void) | (() => void)[]) | undefined;
            unmounted?: ((() => void) | (() => void)[]) | undefined;
            renderTracked?: (((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof nextTick;
        $watch(source: string | Function, cb: Function, options?: WatchOptions<boolean> | undefined): WatchStopHandle;
    } & Readonly<{
        value?: unknown;
        allowClear?: unknown;
        api?: unknown;
        resultField?: unknown;
        numberToString?: unknown;
        fieldNames?: unknown;
        params?: unknown;
        immediate?: unknown;
        alwaysLoad?: unknown;
        placeholder?: unknown;
        options?: unknown;
        mode?: unknown;
        maxTagCount?: unknown;
        maxTagTextLength?: unknown;
        showArrow?: unknown;
        showCheckBox?: unknown;
        showSearch?: unknown;
        optionFilterProp?: unknown;
        labelJoinValue?: unknown;
        valueJoinLabel?: unknown;
        labelFormat?: unknown;
    } & {
        options: Recordable<any>[];
        placeholder: string;
        allowClear: boolean;
        fieldNames: {
            label: string;
            value: string;
        };
        showSearch: boolean;
        maxTagCount: number;
        maxTagTextLength: number;
        showArrow: boolean;
        resultField: string;
        numberToString: boolean;
        params: Recordable<any>;
        optionFilterProp: string;
        immediate: boolean;
        alwaysLoad: boolean;
        showCheckBox: boolean;
        labelJoinValue: boolean;
        valueJoinLabel: boolean;
    } & {
        value?: Object | String | Number | any[] | undefined;
        mode?: "multiple" | "tags" | "SECRET_COMBOBOX_MODE_DO_NOT_USE" | undefined;
        api?: ((...args: any[]) => Promise<Recordable<any> | {
            value: string | number;
            label: string;
            disabeld?: boolean | undefined;
        }[]>) | undefined;
        labelFormat?: ((...args: any[]) => string) | undefined;
    }> & {
        "onUpdate:value"?: ((...args: any[]) => any) | undefined;
        onChange?: ((...args: any[]) => any) | undefined;
        onSearch?: ((...args: any[]) => any) | undefined;
        "onOptions-change"?: ((...args: any[]) => any) | undefined;
    } & ShallowUnwrapRef<{
        prefixCls: string;
        loading: Ref<boolean>;
        state: any;
        innerOptions: ComputedRef<{
            label: any;
            value: any;
        }[]>;
        handleChange: (value: any, ...args: any[]) => void;
        handleVisibleChange: (open: boolean) => void;
        isMultipleMode: ComputedRef<boolean>;
        getTitle: ComputedRef<any>;
        computedShowSearch: ComputedRef<boolean>;
    }> & {} & {} & ComponentCustomProperties;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & ComponentOptionsBase<Readonly<{
    value?: unknown;
    allowClear?: unknown;
    api?: unknown;
    resultField?: unknown;
    numberToString?: unknown;
    fieldNames?: unknown;
    params?: unknown;
    immediate?: unknown;
    alwaysLoad?: unknown;
    placeholder?: unknown;
    options?: unknown;
    mode?: unknown;
    maxTagCount?: unknown;
    maxTagTextLength?: unknown;
    showArrow?: unknown;
    showCheckBox?: unknown;
    showSearch?: unknown;
    optionFilterProp?: unknown;
    labelJoinValue?: unknown;
    valueJoinLabel?: unknown;
    labelFormat?: unknown;
} & {
    options: Recordable<any>[];
    placeholder: string;
    allowClear: boolean;
    fieldNames: {
        label: string;
        value: string;
    };
    showSearch: boolean;
    maxTagCount: number;
    maxTagTextLength: number;
    showArrow: boolean;
    resultField: string;
    numberToString: boolean;
    params: Recordable<any>;
    optionFilterProp: string;
    immediate: boolean;
    alwaysLoad: boolean;
    showCheckBox: boolean;
    labelJoinValue: boolean;
    valueJoinLabel: boolean;
} & {
    value?: Object | String | Number | any[] | undefined;
    mode?: "multiple" | "tags" | "SECRET_COMBOBOX_MODE_DO_NOT_USE" | undefined;
    api?: ((...args: any[]) => Promise<Recordable<any> | {
        value: string | number;
        label: string;
        disabeld?: boolean | undefined;
    }[]>) | undefined;
    labelFormat?: ((...args: any[]) => string) | undefined;
}> & {
    "onUpdate:value"?: ((...args: any[]) => any) | undefined;
    onChange?: ((...args: any[]) => any) | undefined;
    onSearch?: ((...args: any[]) => any) | undefined;
    "onOptions-change"?: ((...args: any[]) => any) | undefined;
}, {
    prefixCls: string;
    loading: Ref<boolean>;
    state: any;
    innerOptions: ComputedRef<{
        label: any;
        value: any;
    }[]>;
    handleChange: (value: any, ...args: any[]) => void;
    handleVisibleChange: (open: boolean) => void;
    isMultipleMode: ComputedRef<boolean>;
    getTitle: ComputedRef<any>;
    computedShowSearch: ComputedRef<boolean>;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("change" | "update:value" | "options-change" | "search")[], "change" | "update:value" | "search" | "options-change", {
    options: Recordable<any>[];
    placeholder: string;
    allowClear: boolean;
    fieldNames: {
        label: string;
        value: string;
    };
    showSearch: boolean;
    maxTagCount: number;
    maxTagTextLength: number;
    showArrow: boolean;
    resultField: string;
    numberToString: boolean;
    params: Recordable<any>;
    optionFilterProp: string;
    immediate: boolean;
    alwaysLoad: boolean;
    showCheckBox: boolean;
    labelJoinValue: boolean;
    valueJoinLabel: boolean;
}> & VNodeProps & AllowedComponentProps & ComponentCustomProps & Plugin;
export default _default;
