import type { App } from 'vue';
import type { ArcoOptions } from '../_utils/types';
import _InputTag from './input-tag';
declare const InputTag: {
    new (...args: any[]): {
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            disabled: boolean;
            focused: boolean;
            readonly: boolean;
            error: boolean;
            allowClear: boolean;
            defaultValue: (string | number | import("./interface").TagData)[];
            retainInputValue: boolean | {
                create?: boolean | undefined;
                blur?: boolean | undefined;
            };
            uninjectFormItemContext: boolean;
            maxTagCount: number;
            tagNowrap: boolean;
            defaultInputValue: string;
            uniqueValue: boolean;
            disabledInput: boolean;
        }> & Omit<Readonly<{
            modelValue?: unknown;
            defaultValue?: unknown;
            inputValue?: unknown;
            defaultInputValue?: unknown;
            placeholder?: unknown;
            disabled?: unknown;
            error?: unknown;
            readonly?: unknown;
            allowClear?: unknown;
            size?: unknown;
            maxTagCount?: unknown;
            retainInputValue?: unknown;
            formatTag?: unknown;
            uniqueValue?: unknown;
            fieldNames?: unknown;
            tagNowrap?: unknown;
            baseCls?: unknown;
            focused?: unknown;
            disabledInput?: unknown;
            uninjectFormItemContext?: unknown;
        } & {
            disabled: boolean;
            focused: boolean;
            readonly: boolean;
            error: boolean;
            allowClear: boolean;
            defaultValue: (string | number | import("./interface").TagData)[];
            retainInputValue: boolean | {
                create?: boolean | undefined;
                blur?: boolean | undefined;
            };
            uninjectFormItemContext: boolean;
            maxTagCount: number;
            tagNowrap: boolean;
            defaultInputValue: string;
            uniqueValue: boolean;
            disabledInput: boolean;
        } & {
            size?: "mini" | "small" | "medium" | "large" | undefined;
            placeholder?: string | undefined;
            inputValue?: string | undefined;
            modelValue?: (string | number | import("./interface").TagData)[] | undefined;
            baseCls?: string | undefined;
            formatTag?: ((data: import("./interface").TagData) => string) | undefined;
            fieldNames?: import("../_utils/types").FieldString<import("./interface").TagData> | undefined;
        }> & {
            onFocus?: ((ev: FocusEvent) => any) | undefined;
            onBlur?: ((ev: FocusEvent) => any) | undefined;
            onChange?: ((value: (string | number | import("./interface").TagData)[], ev: Event) => any) | undefined;
            onClear?: ((ev: MouseEvent) => any) | undefined;
            onPressEnter?: ((inputValue: string, ev: KeyboardEvent) => any) | undefined;
            "onUpdate:inputValue"?: ((inputValue: string) => any) | undefined;
            onInputValueChange?: ((inputValue: string, ev: Event) => any) | undefined;
            onRemove?: ((removed: string | number, ev: Event) => any) | undefined;
            "onUpdate:modelValue"?: ((value: (string | number | import("./interface").TagData)[]) => any) | undefined;
        } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "disabled" | "focused" | "readonly" | "error" | "allowClear" | "defaultValue" | "retainInputValue" | "uninjectFormItemContext" | "maxTagCount" | "tagNowrap" | "defaultInputValue" | "uniqueValue" | "disabledInput">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot | undefined;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
        $emit: ((event: "focus", ev: FocusEvent) => void) & ((event: "clear", ev: MouseEvent) => void) & ((event: "change", value: (string | number | import("./interface").TagData)[], ev: Event) => void) & ((event: "blur", ev: FocusEvent) => void) & ((event: "update:inputValue", inputValue: string) => void) & ((event: "inputValueChange", inputValue: string, ev: Event) => void) & ((event: "update:modelValue", value: (string | number | import("./interface").TagData)[]) => void) & ((event: "remove", removed: string | number, ev: Event) => void) & ((event: "pressEnter", inputValue: string, ev: KeyboardEvent) => void);
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<{
            modelValue?: unknown;
            defaultValue?: unknown;
            inputValue?: unknown;
            defaultInputValue?: unknown;
            placeholder?: unknown;
            disabled?: unknown;
            error?: unknown;
            readonly?: unknown;
            allowClear?: unknown;
            size?: unknown;
            maxTagCount?: unknown;
            retainInputValue?: unknown;
            formatTag?: unknown;
            uniqueValue?: unknown;
            fieldNames?: unknown;
            tagNowrap?: unknown;
            baseCls?: unknown;
            focused?: unknown;
            disabledInput?: unknown;
            uninjectFormItemContext?: unknown;
        } & {
            disabled: boolean;
            focused: boolean;
            readonly: boolean;
            error: boolean;
            allowClear: boolean;
            defaultValue: (string | number | import("./interface").TagData)[];
            retainInputValue: boolean | {
                create?: boolean | undefined;
                blur?: boolean | undefined;
            };
            uninjectFormItemContext: boolean;
            maxTagCount: number;
            tagNowrap: boolean;
            defaultInputValue: string;
            uniqueValue: boolean;
            disabledInput: boolean;
        } & {
            size?: "mini" | "small" | "medium" | "large" | undefined;
            placeholder?: string | undefined;
            inputValue?: string | undefined;
            modelValue?: (string | number | import("./interface").TagData)[] | undefined;
            baseCls?: string | undefined;
            formatTag?: ((data: import("./interface").TagData) => string) | undefined;
            fieldNames?: import("../_utils/types").FieldString<import("./interface").TagData> | undefined;
        }> & {
            onFocus?: ((ev: FocusEvent) => any) | undefined;
            onBlur?: ((ev: FocusEvent) => any) | undefined;
            onChange?: ((value: (string | number | import("./interface").TagData)[], ev: Event) => any) | undefined;
            onClear?: ((ev: MouseEvent) => any) | undefined;
            onPressEnter?: ((inputValue: string, ev: KeyboardEvent) => any) | undefined;
            "onUpdate:inputValue"?: ((inputValue: string) => any) | undefined;
            onInputValueChange?: ((inputValue: string, ev: Event) => any) | undefined;
            onRemove?: ((removed: string | number, ev: Event) => any) | undefined;
            "onUpdate:modelValue"?: ((value: (string | number | import("./interface").TagData)[]) => any) | undefined;
        }, {
            inputRef: import("vue").Ref<HTMLInputElement | undefined>;
            render: () => JSX.Element;
        }, unknown, {}, {
            focus(): void;
            blur(): void;
        }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
            'update:modelValue': (value: (string | number | import("./interface").TagData)[]) => true;
            'update:inputValue': (inputValue: string) => true;
            change: (value: (string | number | import("./interface").TagData)[], ev: Event) => true;
            inputValueChange: (inputValue: string, ev: Event) => true;
            pressEnter: (inputValue: string, ev: KeyboardEvent) => true;
            remove: (removed: string | number, ev: Event) => true;
            clear: (ev: MouseEvent) => true;
            focus: (ev: FocusEvent) => true;
            blur: (ev: FocusEvent) => true;
        }, string, {
            disabled: boolean;
            focused: boolean;
            readonly: boolean;
            error: boolean;
            allowClear: boolean;
            defaultValue: (string | number | import("./interface").TagData)[];
            retainInputValue: boolean | {
                create?: boolean | undefined;
                blur?: boolean | undefined;
            };
            uninjectFormItemContext: boolean;
            maxTagCount: number;
            tagNowrap: boolean;
            defaultInputValue: string;
            uniqueValue: boolean;
            disabledInput: 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: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof import("vue").nextTick;
        $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
    } & Readonly<{
        modelValue?: unknown;
        defaultValue?: unknown;
        inputValue?: unknown;
        defaultInputValue?: unknown;
        placeholder?: unknown;
        disabled?: unknown;
        error?: unknown;
        readonly?: unknown;
        allowClear?: unknown;
        size?: unknown;
        maxTagCount?: unknown;
        retainInputValue?: unknown;
        formatTag?: unknown;
        uniqueValue?: unknown;
        fieldNames?: unknown;
        tagNowrap?: unknown;
        baseCls?: unknown;
        focused?: unknown;
        disabledInput?: unknown;
        uninjectFormItemContext?: unknown;
    } & {
        disabled: boolean;
        focused: boolean;
        readonly: boolean;
        error: boolean;
        allowClear: boolean;
        defaultValue: (string | number | import("./interface").TagData)[];
        retainInputValue: boolean | {
            create?: boolean | undefined;
            blur?: boolean | undefined;
        };
        uninjectFormItemContext: boolean;
        maxTagCount: number;
        tagNowrap: boolean;
        defaultInputValue: string;
        uniqueValue: boolean;
        disabledInput: boolean;
    } & {
        size?: "mini" | "small" | "medium" | "large" | undefined;
        placeholder?: string | undefined;
        inputValue?: string | undefined;
        modelValue?: (string | number | import("./interface").TagData)[] | undefined;
        baseCls?: string | undefined;
        formatTag?: ((data: import("./interface").TagData) => string) | undefined;
        fieldNames?: import("../_utils/types").FieldString<import("./interface").TagData> | undefined;
    }> & {
        onFocus?: ((ev: FocusEvent) => any) | undefined;
        onBlur?: ((ev: FocusEvent) => any) | undefined;
        onChange?: ((value: (string | number | import("./interface").TagData)[], ev: Event) => any) | undefined;
        onClear?: ((ev: MouseEvent) => any) | undefined;
        onPressEnter?: ((inputValue: string, ev: KeyboardEvent) => any) | undefined;
        "onUpdate:inputValue"?: ((inputValue: string) => any) | undefined;
        onInputValueChange?: ((inputValue: string, ev: Event) => any) | undefined;
        onRemove?: ((removed: string | number, ev: Event) => any) | undefined;
        "onUpdate:modelValue"?: ((value: (string | number | import("./interface").TagData)[]) => any) | undefined;
    } & import("vue").ShallowUnwrapRef<{
        inputRef: import("vue").Ref<HTMLInputElement | undefined>;
        render: () => JSX.Element;
    }> & {} & {} & {
        focus(): void;
        blur(): void;
    } & import("vue").ComponentCustomProperties;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<{
    modelValue?: unknown;
    defaultValue?: unknown;
    inputValue?: unknown;
    defaultInputValue?: unknown;
    placeholder?: unknown;
    disabled?: unknown;
    error?: unknown;
    readonly?: unknown;
    allowClear?: unknown;
    size?: unknown;
    maxTagCount?: unknown;
    retainInputValue?: unknown;
    formatTag?: unknown;
    uniqueValue?: unknown;
    fieldNames?: unknown;
    tagNowrap?: unknown;
    baseCls?: unknown;
    focused?: unknown;
    disabledInput?: unknown;
    uninjectFormItemContext?: unknown;
} & {
    disabled: boolean;
    focused: boolean;
    readonly: boolean;
    error: boolean;
    allowClear: boolean;
    defaultValue: (string | number | import("./interface").TagData)[];
    retainInputValue: boolean | {
        create?: boolean | undefined;
        blur?: boolean | undefined;
    };
    uninjectFormItemContext: boolean;
    maxTagCount: number;
    tagNowrap: boolean;
    defaultInputValue: string;
    uniqueValue: boolean;
    disabledInput: boolean;
} & {
    size?: "mini" | "small" | "medium" | "large" | undefined;
    placeholder?: string | undefined;
    inputValue?: string | undefined;
    modelValue?: (string | number | import("./interface").TagData)[] | undefined;
    baseCls?: string | undefined;
    formatTag?: ((data: import("./interface").TagData) => string) | undefined;
    fieldNames?: import("../_utils/types").FieldString<import("./interface").TagData> | undefined;
}> & {
    onFocus?: ((ev: FocusEvent) => any) | undefined;
    onBlur?: ((ev: FocusEvent) => any) | undefined;
    onChange?: ((value: (string | number | import("./interface").TagData)[], ev: Event) => any) | undefined;
    onClear?: ((ev: MouseEvent) => any) | undefined;
    onPressEnter?: ((inputValue: string, ev: KeyboardEvent) => any) | undefined;
    "onUpdate:inputValue"?: ((inputValue: string) => any) | undefined;
    onInputValueChange?: ((inputValue: string, ev: Event) => any) | undefined;
    onRemove?: ((removed: string | number, ev: Event) => any) | undefined;
    "onUpdate:modelValue"?: ((value: (string | number | import("./interface").TagData)[]) => any) | undefined;
}, {
    inputRef: import("vue").Ref<HTMLInputElement | undefined>;
    render: () => JSX.Element;
}, unknown, {}, {
    focus(): void;
    blur(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:modelValue': (value: (string | number | import("./interface").TagData)[]) => true;
    'update:inputValue': (inputValue: string) => true;
    change: (value: (string | number | import("./interface").TagData)[], ev: Event) => true;
    inputValueChange: (inputValue: string, ev: Event) => true;
    pressEnter: (inputValue: string, ev: KeyboardEvent) => true;
    remove: (removed: string | number, ev: Event) => true;
    clear: (ev: MouseEvent) => true;
    focus: (ev: FocusEvent) => true;
    blur: (ev: FocusEvent) => true;
}, string, {
    disabled: boolean;
    focused: boolean;
    readonly: boolean;
    error: boolean;
    allowClear: boolean;
    defaultValue: (string | number | import("./interface").TagData)[];
    retainInputValue: boolean | {
        create?: boolean | undefined;
        blur?: boolean | undefined;
    };
    uninjectFormItemContext: boolean;
    maxTagCount: number;
    tagNowrap: boolean;
    defaultInputValue: string;
    uniqueValue: boolean;
    disabledInput: boolean;
}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
    install: (app: App, options?: ArcoOptions | undefined) => void;
};
export declare type InputTagInstance = InstanceType<typeof _InputTag>;
export type { TagData, InputTagFieldNames } from './interface';
export default InputTag;
