UNPKG

radix-vue

Version:

Vue port for Radix UI Primitives.

143 lines (142 loc) 4.24 kB
import type { PrimitiveProps } from '../Primitive'; import type { Direction } from '../shared/types'; import { type Ref } from 'vue'; export interface TagsInputRootProps extends PrimitiveProps { modelValue?: Array<string>; defaultValue?: Array<string>; addOnPaste?: boolean; duplicate?: boolean; disabled?: boolean; delimiter?: string; dir?: Direction; max?: number; required?: boolean; name?: string; id?: string; } export type TagsInputRootEmits = { 'update:modelValue': [payload: Array<string>]; 'invalid': [payload: string]; }; export interface TagsInputRootContext { modelValue: Ref<Array<string>>; onAddValue: (payload: string) => boolean; onRemoveValue: (index: number) => void; onInputKeydown: (event: KeyboardEvent) => void; selectedElement: Ref<HTMLElement | undefined>; isInvalidInput: Ref<boolean>; addOnPaste: Ref<boolean>; disabled: Ref<boolean>; delimiter: Ref<string>; dir: Ref<Direction>; max: Ref<number>; id: Ref<string | undefined> | undefined; } export declare const injectTagsInputRootContext: <T extends TagsInputRootContext | null | undefined = TagsInputRootContext>(fallback?: T | undefined) => T extends null ? TagsInputRootContext | null : TagsInputRootContext, provideTagsInputRootContext: (contextValue: TagsInputRootContext) => TagsInputRootContext; declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{ dir: { type: import("vue").PropType<Direction>; }; disabled: { type: import("vue").PropType<boolean>; }; name: { type: import("vue").PropType<string>; }; asChild: { type: import("vue").PropType<boolean>; }; as: { type: import("vue").PropType<import('../Primitive').AsTag | import("vue").Component>; }; defaultValue: { type: import("vue").PropType<string[]>; default: () => never[]; }; id: { type: import("vue").PropType<string>; }; max: { type: import("vue").PropType<number>; default: number; }; required: { type: import("vue").PropType<boolean>; }; modelValue: { type: import("vue").PropType<string[]>; }; addOnPaste: { type: import("vue").PropType<boolean>; }; duplicate: { type: import("vue").PropType<boolean>; }; delimiter: { type: import("vue").PropType<string>; default: string; }; }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { invalid: (payload: string) => void; "update:modelValue": (payload: string[]) => void; }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{ dir: { type: import("vue").PropType<Direction>; }; disabled: { type: import("vue").PropType<boolean>; }; name: { type: import("vue").PropType<string>; }; asChild: { type: import("vue").PropType<boolean>; }; as: { type: import("vue").PropType<import('../Primitive').AsTag | import("vue").Component>; }; defaultValue: { type: import("vue").PropType<string[]>; default: () => never[]; }; id: { type: import("vue").PropType<string>; }; max: { type: import("vue").PropType<number>; default: number; }; required: { type: import("vue").PropType<boolean>; }; modelValue: { type: import("vue").PropType<string[]>; }; addOnPaste: { type: import("vue").PropType<boolean>; }; duplicate: { type: import("vue").PropType<boolean>; }; delimiter: { type: import("vue").PropType<string>; default: string; }; }>> & { "onUpdate:modelValue"?: ((payload: string[]) => any) | undefined; onInvalid?: ((payload: string) => any) | undefined; }, { defaultValue: string[]; max: number; delimiter: string; }, {}>, { default?(_: { values: string[]; }): any; }>; export default _default; type __VLS_WithTemplateSlots<T, S> = T & { new (): { $slots: S; }; };