import type { App } from 'vue';
import type { ArcoOptions } from '../_utils/types';
import _Mention from './mention';
declare const Mention: {
    new (...args: any[]): {
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            prefix: string | string[];
            disabled: boolean;
            data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
            type: "textarea" | "input";
            allowClear: boolean;
            defaultValue: string;
            split: string;
        }> & Omit<Readonly<{
            modelValue?: unknown;
            defaultValue?: unknown;
            data?: unknown;
            prefix?: unknown;
            split?: unknown;
            type?: unknown;
            disabled?: unknown;
            allowClear?: unknown;
        } & {
            prefix: string | string[];
            disabled: boolean;
            data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
            type: "textarea" | "input";
            allowClear: boolean;
            defaultValue: string;
            split: string;
        } & {
            modelValue?: string | undefined;
        }> & {
            onFocus?: ((ev: FocusEvent) => any) | undefined;
            onBlur?: ((ev: FocusEvent) => any) | undefined;
            onChange?: ((value: string) => any) | undefined;
            onSelect?: ((value: string | number | Record<string, any> | undefined) => any) | undefined;
            onClear?: ((ev: Event) => any) | undefined;
            "onUpdate:modelValue"?: ((value: string) => any) | undefined;
            onSearch?: ((value: string, prefix: string) => any) | undefined;
        } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "prefix" | "disabled" | "data" | "type" | "allowClear" | "defaultValue" | "split">;
        $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: Event) => void) & ((event: "select", value: string | number | Record<string, any> | undefined) => void) & ((event: "change", value: string) => void) & ((event: "blur", ev: FocusEvent) => void) & ((event: "update:modelValue", value: string) => void) & ((event: "search", value: string, prefix: string) => void);
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<{
            modelValue?: unknown;
            defaultValue?: unknown;
            data?: unknown;
            prefix?: unknown;
            split?: unknown;
            type?: unknown;
            disabled?: unknown;
            allowClear?: unknown;
        } & {
            prefix: string | string[];
            disabled: boolean;
            data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
            type: "textarea" | "input";
            allowClear: boolean;
            defaultValue: string;
            split: string;
        } & {
            modelValue?: string | undefined;
        }> & {
            onFocus?: ((ev: FocusEvent) => any) | undefined;
            onBlur?: ((ev: FocusEvent) => any) | undefined;
            onChange?: ((value: string) => any) | undefined;
            onSelect?: ((value: string | number | Record<string, any> | undefined) => any) | undefined;
            onClear?: ((ev: Event) => any) | undefined;
            "onUpdate:modelValue"?: ((value: string) => any) | undefined;
            onSearch?: ((value: string, prefix: string) => any) | undefined;
        }, {
            inputRef: import("vue").Ref<HTMLElement | undefined>;
            render: () => JSX.Element;
        }, unknown, {}, {
            focus(): void;
            blur(): void;
        }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
            'update:modelValue': (value: string) => true;
            change: (value: string) => true;
            search: (value: string, prefix: string) => true;
            select: (value: string | number | Record<string, any> | undefined) => true;
            clear: (ev: Event) => true;
            focus: (ev: FocusEvent) => true;
            blur: (ev: FocusEvent) => true;
        }, string, {
            prefix: string | string[];
            disabled: boolean;
            data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
            type: "textarea" | "input";
            allowClear: boolean;
            defaultValue: string;
            split: 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: 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;
        data?: unknown;
        prefix?: unknown;
        split?: unknown;
        type?: unknown;
        disabled?: unknown;
        allowClear?: unknown;
    } & {
        prefix: string | string[];
        disabled: boolean;
        data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
        type: "textarea" | "input";
        allowClear: boolean;
        defaultValue: string;
        split: string;
    } & {
        modelValue?: string | undefined;
    }> & {
        onFocus?: ((ev: FocusEvent) => any) | undefined;
        onBlur?: ((ev: FocusEvent) => any) | undefined;
        onChange?: ((value: string) => any) | undefined;
        onSelect?: ((value: string | number | Record<string, any> | undefined) => any) | undefined;
        onClear?: ((ev: Event) => any) | undefined;
        "onUpdate:modelValue"?: ((value: string) => any) | undefined;
        onSearch?: ((value: string, prefix: string) => any) | undefined;
    } & import("vue").ShallowUnwrapRef<{
        inputRef: import("vue").Ref<HTMLElement | 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;
    data?: unknown;
    prefix?: unknown;
    split?: unknown;
    type?: unknown;
    disabled?: unknown;
    allowClear?: unknown;
} & {
    prefix: string | string[];
    disabled: boolean;
    data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
    type: "textarea" | "input";
    allowClear: boolean;
    defaultValue: string;
    split: string;
} & {
    modelValue?: string | undefined;
}> & {
    onFocus?: ((ev: FocusEvent) => any) | undefined;
    onBlur?: ((ev: FocusEvent) => any) | undefined;
    onChange?: ((value: string) => any) | undefined;
    onSelect?: ((value: string | number | Record<string, any> | undefined) => any) | undefined;
    onClear?: ((ev: Event) => any) | undefined;
    "onUpdate:modelValue"?: ((value: string) => any) | undefined;
    onSearch?: ((value: string, prefix: string) => any) | undefined;
}, {
    inputRef: import("vue").Ref<HTMLElement | undefined>;
    render: () => JSX.Element;
}, unknown, {}, {
    focus(): void;
    blur(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:modelValue': (value: string) => true;
    change: (value: string) => true;
    search: (value: string, prefix: string) => true;
    select: (value: string | number | Record<string, any> | undefined) => true;
    clear: (ev: Event) => true;
    focus: (ev: FocusEvent) => true;
    blur: (ev: FocusEvent) => true;
}, string, {
    prefix: string | string[];
    disabled: boolean;
    data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
    type: "textarea" | "input";
    allowClear: boolean;
    defaultValue: string;
    split: string;
}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
    install: (app: App, options?: ArcoOptions | undefined) => void;
};
export declare type MentionInstance = InstanceType<typeof _Mention>;
export default Mention;
