import { DefineComponent, Ref, ComponentOptionsMixin, PublicProps, ExtractPropTypes, CSSProperties, PropType } from 'vue'; import { Mutable, IntrinsicAttributes, RecordType } from 'yc-pro-components/es/types'; import { InputProps, TagProps, InputInstance, TagInstance } from 'element-plus'; type TriggerType = 'blur' | 'enter' | 'space'; export interface PlusInputTagProps { modelValue?: string[]; trigger?: TriggerType[] | TriggerType; inputProps?: Partial & IntrinsicAttributes>; tagProps?: Partial & IntrinsicAttributes>; limit?: number; formatTag?: (tag: string) => string; retainInputValue?: boolean; /** * @version 0.1.14 */ disabled?: boolean; } export interface PlusInputTagEmits { (e: 'update:modelValue', data: string[]): void; (e: 'change', data: string[]): void; (e: 'remove', tag: string): void; (e: 'blur', value: string, event: FocusEvent): void; (e: 'enter', value: string, event: MouseEvent): void; (e: 'space', value: string, event: MouseEvent): void; } export interface PlusInputTagState { tags: string[]; inputValue: string; isFocus: boolean; } declare const _default: DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, { modelValue: () => never[]; trigger: () => string[]; limit: number; inputProps: () => {}; tagProps: () => {}; disabled: boolean; formatTag: undefined; retainInputValue: boolean; }>, { inputInstance: Ref; tagInstance: Ref; }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, { "update:modelValue": (data: string[]) => void; change: (data: string[]) => void; remove: (tag: string) => void; blur: (value: string, event: FocusEvent) => void; enter: (value: string, event: MouseEvent) => void; space: (value: string, event: MouseEvent) => void; }, string, PublicProps, Readonly< ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, { modelValue: () => never[]; trigger: () => string[]; limit: number; inputProps: () => {}; tagProps: () => {}; disabled: boolean; formatTag: undefined; retainInputValue: boolean; }>>> & { onBlur?: ((value: string, event: FocusEvent) => any) | undefined; onChange?: ((data: string[]) => any) | undefined; onEnter?: ((value: string, event: MouseEvent) => any) | undefined; "onUpdate:modelValue"?: ((data: string[]) => any) | undefined; onRemove?: ((tag: string) => any) | undefined; onSpace?: ((value: string, event: MouseEvent) => any) | undefined; }, { trigger: TriggerType | TriggerType[]; disabled: boolean; modelValue: string[]; inputProps: Partial & { style?: CSSProperties | undefined; class?: any; } & RecordType>; tagProps: Partial & { style?: CSSProperties | undefined; class?: any; } & RecordType>; limit: number; formatTag: (tag: string) => string; retainInputValue: boolean; }, {}>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: PropType<__VLS_NonUndefinedable>; } : { type: PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {};