UNPKG

@plteam/chat-ui

Version:

CUI Kit is a free and open-source library for creating AI assistant chat interfaces, built with React, Material UI, and TypeScript

26 lines (25 loc) 1.42 kB
import { ThreadModel, MessageUserContent, MessageModel, InternalMessageType } from '../../models'; import { ChatUsersProps } from '../core/useChatProps'; import { Threads } from '../../models/Threads'; import { ApiManager } from '../core/useApiManager'; type BeforeUserMessageSendFnParams = { text: string; content: MessageUserContent; history: InternalMessageType[]; reason: 'editMessage' | 'newMessage'; parentMessage?: InternalMessageType; }; export type BeforeUserMessageSendFnType = (params: BeforeUserMessageSendFnParams) => { userMessage?: InternalMessageType; assistantMessage?: InternalMessageType; } | Promise<{ userMessage?: InternalMessageType; assistantMessage?: InternalMessageType; }>; export declare const useThreadSendMessage: (thread: ThreadModel | undefined, model: Threads<any, any>, onFirstMessageSent: ChatUsersProps<any, any>['onFirstMessageSent'], beforeUserMessageSend: BeforeUserMessageSendFnType | undefined, onAssistantMessageTypingFinish: ChatUsersProps<any, any>['onAssistantMessageTypingFinish'], scroller: { handleBottomScroll?: () => void; } | undefined, apiManager: ApiManager) => { onSendNewsMessage: (content: MessageUserContent) => Promise<boolean>; onEditMessage: (content: MessageUserContent, messageEdit: MessageModel) => Promise<MessageModel<import("../../models").Message> | undefined>; }; export {};