import type { Plugin } from '@vue/runtime-core';
import type { Recordable } from '../typings/global';
import type { FieldNames, Option } from './src/types';
import type { ComponentInternalInstance, VNodeProps, AllowedComponentProps, ComponentCustomProps, Slot, ComponentPublicInstance, ComponentOptionsBase, Ref, VNode, RendererNode, RendererElement, ComponentOptionsMixin, DebuggerEvent, nextTick, WatchOptions, WatchStopHandle, ShallowUnwrapRef, ComponentCustomProperties } from 'vue';
declare const _default: {
    new (...args: any[]): {
        $: ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            value: (string | number)[];
            placeholder: string;
            fieldNames: FieldNames;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            asyncFetchChildrenParamkey: string;
        }> & Omit<Readonly<{
            value?: unknown;
            api?: unknown;
            resultField?: unknown;
            numberToString?: unknown;
            fieldNames?: unknown;
            params?: unknown;
            asyncFetchChildrenParamkey?: unknown;
            placeholder?: unknown;
            checkIsLeaf?: unknown;
        } & {
            value: (string | number)[];
            placeholder: string;
            fieldNames: FieldNames;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            asyncFetchChildrenParamkey: string;
        } & {
            api?: ((arg?: Recordable<any> | undefined) => Promise<Recordable<any> | Option[]>) | undefined;
            checkIsLeaf?: ((data: Recordable<any>) => boolean) | undefined;
        }> & {
            "onUpdate:value"?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
        } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "value" | "placeholder" | "fieldNames" | "resultField" | "numberToString" | "params" | "asyncFetchChildrenParamkey">;
        $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", ...args: any[]) => void;
        $el: any;
        $options: ComponentOptionsBase<Readonly<{
            value?: unknown;
            api?: unknown;
            resultField?: unknown;
            numberToString?: unknown;
            fieldNames?: unknown;
            params?: unknown;
            asyncFetchChildrenParamkey?: unknown;
            placeholder?: unknown;
            checkIsLeaf?: unknown;
        } & {
            value: (string | number)[];
            placeholder: string;
            fieldNames: FieldNames;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            asyncFetchChildrenParamkey: string;
        } & {
            api?: ((arg?: Recordable<any> | undefined) => Promise<Recordable<any> | Option[]>) | undefined;
            checkIsLeaf?: ((data: Recordable<any>) => boolean) | undefined;
        }> & {
            "onUpdate:value"?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
        }, {
            prefixCls: string;
            loading: Ref<boolean>;
            options: Ref<{
                value?: any;
                label?: string | undefined;
                disabled?: boolean | undefined;
                loading?: boolean | undefined;
                isLeaf?: boolean | undefined;
                children?: any[] | undefined;
            }[]>;
            state: any;
            spin: VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>;
            loadChildrenData: (selectedOptions: Option[]) => Promise<void>;
            handleChange: (value: any, ...args: any[]) => void;
        }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("change" | "update:value")[], string, {
            value: (string | number)[];
            placeholder: string;
            fieldNames: FieldNames;
            resultField: string;
            numberToString: boolean;
            params: Recordable<any>;
            asyncFetchChildrenParamkey: string;
        }> & {
            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;
        api?: unknown;
        resultField?: unknown;
        numberToString?: unknown;
        fieldNames?: unknown;
        params?: unknown;
        asyncFetchChildrenParamkey?: unknown;
        placeholder?: unknown;
        checkIsLeaf?: unknown;
    } & {
        value: (string | number)[];
        placeholder: string;
        fieldNames: FieldNames;
        resultField: string;
        numberToString: boolean;
        params: Recordable<any>;
        asyncFetchChildrenParamkey: string;
    } & {
        api?: ((arg?: Recordable<any> | undefined) => Promise<Recordable<any> | Option[]>) | undefined;
        checkIsLeaf?: ((data: Recordable<any>) => boolean) | undefined;
    }> & {
        "onUpdate:value"?: ((...args: any[]) => any) | undefined;
        onChange?: ((...args: any[]) => any) | undefined;
    } & ShallowUnwrapRef<{
        prefixCls: string;
        loading: Ref<boolean>;
        options: Ref<{
            value?: any;
            label?: string | undefined;
            disabled?: boolean | undefined;
            loading?: boolean | undefined;
            isLeaf?: boolean | undefined;
            children?: any[] | undefined;
        }[]>;
        state: any;
        spin: VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }>;
        loadChildrenData: (selectedOptions: Option[]) => Promise<void>;
        handleChange: (value: any, ...args: any[]) => void;
    }> & {} & {} & ComponentCustomProperties;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & ComponentOptionsBase<Readonly<{
    value?: unknown;
    api?: unknown;
    resultField?: unknown;
    numberToString?: unknown;
    fieldNames?: unknown;
    params?: unknown;
    asyncFetchChildrenParamkey?: unknown;
    placeholder?: unknown;
    checkIsLeaf?: unknown;
} & {
    value: (string | number)[];
    placeholder: string;
    fieldNames: FieldNames;
    resultField: string;
    numberToString: boolean;
    params: Recordable<any>;
    asyncFetchChildrenParamkey: string;
} & {
    api?: ((arg?: Recordable<any> | undefined) => Promise<Recordable<any> | Option[]>) | undefined;
    checkIsLeaf?: ((data: Recordable<any>) => boolean) | undefined;
}> & {
    "onUpdate:value"?: ((...args: any[]) => any) | undefined;
    onChange?: ((...args: any[]) => any) | undefined;
}, {
    prefixCls: string;
    loading: Ref<boolean>;
    options: Ref<{
        value?: any;
        label?: string | undefined;
        disabled?: boolean | undefined;
        loading?: boolean | undefined;
        isLeaf?: boolean | undefined;
        children?: any[] | undefined;
    }[]>;
    state: any;
    spin: VNode<RendererNode, RendererElement, {
        [key: string]: any;
    }>;
    loadChildrenData: (selectedOptions: Option[]) => Promise<void>;
    handleChange: (value: any, ...args: any[]) => void;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("change" | "update:value")[], "change" | "update:value", {
    value: (string | number)[];
    placeholder: string;
    fieldNames: FieldNames;
    resultField: string;
    numberToString: boolean;
    params: Recordable<any>;
    asyncFetchChildrenParamkey: string;
}> & VNodeProps & AllowedComponentProps & ComponentCustomProps & Plugin;
export default _default;
