UNPKG

@nuxt/ui

Version:

A UI Library for Modern Web Apps, powered by Vue & Tailwind CSS.

55 lines (54 loc) 2.06 kB
import type { AppConfig } from '@nuxt/schema'; import theme from '#build/ui/chat-prompt'; import type { TextareaProps, TextareaSlots } from '../types'; import type { ComponentConfig } from '../types/tv'; type ChatPrompt = ComponentConfig<typeof theme, AppConfig, 'chatPrompt'>; export interface ChatPromptProps extends Pick<TextareaProps, 'rows' | 'autofocus' | 'autofocusDelay' | 'autoresize' | 'autoresizeDelay' | 'maxrows' | 'icon' | 'avatar' | 'loading' | 'loadingIcon' | 'disabled'> { /** * The element or component this component should render as. * @defaultValue 'form' */ as?: any; /** * The placeholder text for the textarea. * @defaultValue t('chatPrompt.placeholder') */ placeholder?: string; /** * @defaultValue 'outline' */ variant?: ChatPrompt['variants']['variant']; error?: Error; class?: any; ui?: ChatPrompt['slots'] & TextareaProps['ui']; } export interface ChatPromptEmits { submit: [event: Event]; close: [event: Event]; } export interface ChatPromptSlots extends TextareaSlots { header(props?: {}): any; footer(props?: {}): any; } declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<ChatPromptProps & { modelValue?: string; }, { textareaRef: Readonly<import("vue").Ref<any, any>>; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { close: (event: Event) => any; submit: (event: Event) => any; "update:modelValue": (value: string) => any; }, string, import("vue").PublicProps, Readonly<ChatPromptProps & { modelValue?: string; }> & Readonly<{ onClose?: ((event: Event) => any) | undefined; onSubmit?: ((event: Event) => any) | undefined; "onUpdate:modelValue"?: ((value: string) => any) | undefined; }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, ChatPromptSlots>; declare const _default: typeof __VLS_export; export default _default; type __VLS_WithSlots<T, S> = T & { new (): { $slots: S; }; };