import { type Interrupt, type InterruptResume, type UserMessage, MessageContentType, MessageStatus } from '../../ag-ui/types'; import { type AITippyProps, type IAiSlashMenuItem, type ISkillListItem, type Shortcut, type TagSchema, type UploadFile, UploadStatus } from '../../types'; export type ChatInputEmits = { (e: 'selectShortcut', shortcut: Shortcut): void; (e: 'deleteShortcut'): void; (e: 'update:modelValue', value: string | TagSchema, selectedResourceList: IAiSlashMenuItem[]): void; }; export type ChatInputProps = { defaultUploadFiles?: UploadFile[]; inputMaxHeight?: number; messageStatus?: MessageStatus; modelValue: string | TagSchema; onSendMessage?: (message: UserMessage['content'], docSchema: TagSchema, options?: { interrupt?: Interrupt; payload?: InterruptResume; }) => Promise; onStopSending?: () => Promise; onUpload?: (files: File) => Promise<{ download_url?: string; }>; placeholder?: string; prompts?: string[]; resources?: IAiSlashMenuItem[]; sendDisabledTip?: string; shortcutId?: string; shortcuts?: Shortcut[]; skills?: ISkillListItem[]; supportUpload?: boolean; tippyOptions?: AITippyProps; }; type __VLS_Props = ChatInputProps; type __VLS_ModelProps = { 'cite'?: string; }; type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps; declare var __VLS_1: {}, __VLS_3: {}, __VLS_5: {}, __VLS_14: { files: { data?: string | undefined; filename?: string | undefined; id?: string | undefined; mimeType?: string | undefined; type?: MessageContentType.Binary | undefined; url?: string | undefined; file?: { readonly lastModified: number; readonly name: string; readonly webkitRelativePath: string; readonly size: number; readonly type: string; arrayBuffer: () => Promise; bytes: () => Promise>; slice: (start?: number, end?: number, contentType?: string) => Blob; stream: () => ReadableStream>; text: () => Promise; } | undefined; status?: UploadStatus | undefined; }[]; }, __VLS_51: {}, __VLS_75: {}; type __VLS_Slots = {} & { top?: (props: typeof __VLS_1) => any; } & { interrupt?: (props: typeof __VLS_3) => any; } & { 'input-header'?: (props: typeof __VLS_5) => any; } & { files?: (props: typeof __VLS_14) => any; } & { attachment?: (props: typeof __VLS_51) => any; } & { 'send-icon'?: (props: typeof __VLS_75) => any; }; declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, { focus: () => void; triggerSendMessage: () => Promise; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { "update:cite": (value: string) => any; } & { "update:modelValue": (value: string | ({ text: string; type: "text"; } | { data: { readonly label: string; readonly value: string; readonly type: string; }; type: "tag"; })[][], selectedResourceList: IAiSlashMenuItem[]) => any; selectShortcut: (shortcut: Shortcut) => any; deleteShortcut: () => any; }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{ "onUpdate:modelValue"?: ((value: string | ({ text: string; type: "text"; } | { data: { readonly label: string; readonly value: string; readonly type: string; }; type: "tag"; })[][], selectedResourceList: IAiSlashMenuItem[]) => any) | undefined; onSelectShortcut?: ((shortcut: Shortcut) => any) | undefined; onDeleteShortcut?: (() => any) | undefined; "onUpdate:cite"?: ((value: string) => any) | undefined; }>, { placeholder: string; prompts: string[]; skills: ISkillListItem[]; resources: IAiSlashMenuItem[]; inputMaxHeight: number; supportUpload: boolean; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>; declare const __VLS_export: __VLS_WithSlots; declare const _default: typeof __VLS_export; export default _default; type __VLS_WithSlots = T & { new (): { $slots: S; }; };