import type { App, PropType, ExtractPropTypes } from 'vue'; import type { KeyboardEventHandler } from '../_util/EventInterface'; interface MentionsConfig { prefix?: string | string[]; split?: string; } export interface MentionsOptionProps { value: string; disabled?: boolean; label?: string | number | ((o: MentionsOptionProps) => any); [key: string]: any; } interface MentionsEntity { prefix: string; value: string; } export declare type MentionPlacement = 'top' | 'bottom'; export declare const mentionsProps: () => { loading: { type: BooleanConstructor; default: any; }; onFocus: { type: PropType<(e: FocusEvent) => void>; }; onBlur: { type: PropType<(e: FocusEvent) => void>; }; onSelect: { type: PropType<(option: MentionsOptionProps, prefix: string) => void>; }; onChange: { type: PropType<(text: string) => void>; }; onPressenter: { type: PropType; }; 'onUpdate:value': { type: PropType<(text: string) => void>; }; notFoundContent: import("vue-types").VueTypeValidableDef; defaultValue: StringConstructor; id: StringConstructor; autofocus: { type: BooleanConstructor; default: any; }; prefix: import("vue-types").VueTypeDef; prefixCls: StringConstructor; value: StringConstructor; disabled: { type: BooleanConstructor; default: any; }; split: StringConstructor; transitionName: StringConstructor; placement: import("vue-types").VueTypeDef<"bottom" | "top">; character: import("vue-types").VueTypeValidableDef; characterRender: FunctionConstructor; filterOption: { type: PropType; }; validateSearch: FunctionConstructor; getPopupContainer: { type: PropType<() => HTMLElement>; }; options: { type: PropType>>; default: () => any; }; rows: (StringConstructor | NumberConstructor)[]; direction: { type: PropType; }; }; export declare type MentionsProps = Partial>>; export declare const MentionsOption: import("vue").DefineComponent<{ value: StringConstructor; disabled: BooleanConstructor; label: (FunctionConstructor | StringConstructor | NumberConstructor)[]; }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>, { disabled: boolean; }>; declare const _default: { new (...args: any[]): { $: import("vue").ComponentInternalInstance; $data: {}; $props: Partial<{ disabled: boolean; autofocus: boolean; options: any; loading: boolean; }> & Omit void>; }; onBlur: { type: PropType<(e: FocusEvent) => void>; }; onSelect: { type: PropType<(option: MentionsOptionProps, prefix: string) => void>; }; onChange: { type: PropType<(text: string) => void>; }; onPressenter: { type: PropType; }; 'onUpdate:value': { type: PropType<(text: string) => void>; }; notFoundContent: import("vue-types").VueTypeValidableDef; defaultValue: StringConstructor; id: StringConstructor; autofocus: { type: BooleanConstructor; default: any; }; prefix: import("vue-types").VueTypeDef; prefixCls: StringConstructor; value: StringConstructor; disabled: { type: BooleanConstructor; default: any; }; split: StringConstructor; transitionName: StringConstructor; placement: import("vue-types").VueTypeDef<"bottom" | "top">; character: import("vue-types").VueTypeValidableDef; characterRender: FunctionConstructor; filterOption: { type: PropType; }; validateSearch: FunctionConstructor; getPopupContainer: { type: PropType<() => HTMLElement>; }; options: { type: PropType>>; default: () => any; }; rows: (StringConstructor | NumberConstructor)[]; direction: { type: PropType; }; }>> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "disabled" | "autofocus" | "options" | "loading">; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; }; $slots: Readonly<{ [name: string]: import("vue").Slot; }>; $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>; $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>; $emit: (event: string, ...args: any[]) => void; $el: any; $options: import("vue").ComponentOptionsBase void>; }; onBlur: { type: PropType<(e: FocusEvent) => void>; }; onSelect: { type: PropType<(option: MentionsOptionProps, prefix: string) => void>; }; onChange: { type: PropType<(text: string) => void>; }; onPressenter: { type: PropType; }; 'onUpdate:value': { type: PropType<(text: string) => void>; }; notFoundContent: import("vue-types").VueTypeValidableDef; defaultValue: StringConstructor; id: StringConstructor; autofocus: { type: BooleanConstructor; default: any; }; prefix: import("vue-types").VueTypeDef; prefixCls: StringConstructor; value: StringConstructor; disabled: { type: BooleanConstructor; default: any; }; split: StringConstructor; transitionName: StringConstructor; placement: import("vue-types").VueTypeDef<"bottom" | "top">; character: import("vue-types").VueTypeValidableDef; characterRender: FunctionConstructor; filterOption: { type: PropType; }; validateSearch: FunctionConstructor; getPopupContainer: { type: PropType<() => HTMLElement>; }; options: { type: PropType>>; default: () => any; }; rows: (StringConstructor | NumberConstructor)[]; direction: { type: PropType; }; }>>, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, { disabled: boolean; autofocus: boolean; options: any; loading: boolean; }> & { beforeCreate?: (() => void) | (() => void)[]; created?: (() => void) | (() => void)[]; beforeMount?: (() => void) | (() => void)[]; mounted?: (() => void) | (() => void)[]; beforeUpdate?: (() => void) | (() => void)[]; updated?: (() => void) | (() => void)[]; activated?: (() => void) | (() => void)[]; deactivated?: (() => void) | (() => void)[]; beforeDestroy?: (() => void) | (() => void)[]; beforeUnmount?: (() => void) | (() => void)[]; destroyed?: (() => void) | (() => void)[]; unmounted?: (() => void) | (() => void)[]; renderTracked?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]; renderTriggered?: ((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]; errorCaptured?: ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase>, info: string) => boolean | void)[]; }; $forceUpdate: () => void; $nextTick: typeof import("vue").nextTick; $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions): import("vue").WatchStopHandle; } & Readonly void>; }; onBlur: { type: PropType<(e: FocusEvent) => void>; }; onSelect: { type: PropType<(option: MentionsOptionProps, prefix: string) => void>; }; onChange: { type: PropType<(text: string) => void>; }; onPressenter: { type: PropType; }; 'onUpdate:value': { type: PropType<(text: string) => void>; }; notFoundContent: import("vue-types").VueTypeValidableDef; defaultValue: StringConstructor; id: StringConstructor; autofocus: { type: BooleanConstructor; default: any; }; prefix: import("vue-types").VueTypeDef; prefixCls: StringConstructor; value: StringConstructor; disabled: { type: BooleanConstructor; default: any; }; split: StringConstructor; transitionName: StringConstructor; placement: import("vue-types").VueTypeDef<"bottom" | "top">; character: import("vue-types").VueTypeValidableDef; characterRender: FunctionConstructor; filterOption: { type: PropType; }; validateSearch: FunctionConstructor; getPopupContainer: { type: PropType<() => HTMLElement>; }; options: { type: PropType>>; default: () => any; }; rows: (StringConstructor | NumberConstructor)[]; direction: { type: PropType; }; }>> & import("vue").ShallowUnwrapRef<() => JSX.Element> & {} & import("vue").ComponentCustomProperties; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import("vue").ComponentOptionsBase void>; }; onBlur: { type: PropType<(e: FocusEvent) => void>; }; onSelect: { type: PropType<(option: MentionsOptionProps, prefix: string) => void>; }; onChange: { type: PropType<(text: string) => void>; }; onPressenter: { type: PropType; }; 'onUpdate:value': { type: PropType<(text: string) => void>; }; notFoundContent: import("vue-types").VueTypeValidableDef; defaultValue: StringConstructor; id: StringConstructor; autofocus: { type: BooleanConstructor; default: any; }; prefix: import("vue-types").VueTypeDef; prefixCls: StringConstructor; value: StringConstructor; disabled: { type: BooleanConstructor; default: any; }; split: StringConstructor; transitionName: StringConstructor; placement: import("vue-types").VueTypeDef<"bottom" | "top">; character: import("vue-types").VueTypeValidableDef; characterRender: FunctionConstructor; filterOption: { type: PropType; }; validateSearch: FunctionConstructor; getPopupContainer: { type: PropType<() => HTMLElement>; }; options: { type: PropType>>; default: () => any; }; rows: (StringConstructor | NumberConstructor)[]; direction: { type: PropType; }; }>>, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, { disabled: boolean; autofocus: boolean; options: any; loading: boolean; }> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & { Option: import("vue").DefineComponent<{ value: StringConstructor; disabled: BooleanConstructor; label: (FunctionConstructor | StringConstructor | NumberConstructor)[]; }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>, { disabled: boolean; }>; getMentions: (value?: string, config?: MentionsConfig) => MentionsEntity[]; install: (app: App) => App; }; export default _default;