@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
TypeScript
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 {};