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

29 lines (28 loc) 1.63 kB
import { Message } from './MessageModel'; import { ObservableReactValue } from '../utils/observers'; import { ThreadModel, Thread } from './ThreadModel'; import { AdapterType } from '../views/adapter/AdapterType'; import { MessageSentParams } from './MessageSentParams'; import { ThreadListCache } from './ThreadListCache'; import { EventsEmitter } from './EventsEmitter'; export declare class Threads<DM extends Message, DD extends Thread<DM>> { readonly list: ObservableReactValue<ThreadModel<DM, DD>[]>; readonly currentThread: ObservableReactValue<ThreadModel<DM, DD> | undefined>; readonly listGroups: ThreadListCache; readonly menuDrawerOpen: ObservableReactValue<boolean>; readonly deleteItem: ObservableReactValue<Thread<any> | undefined>; readonly emitter: EventsEmitter; constructor(adapter: AdapterType, threads: Thread[], onUserMessageSent: (params: MessageSentParams) => void | Promise<void>); get: (id: DD['id']) => ThreadModel<DM, DD> | undefined; delete: (id: DD['id']) => void; /** * Populates a Thread instance from provided data parameters, or fetches the existing instance * if it already exists in the list. * * @param params - The arguments required to create a Thread instance, including data and a stream function. * @returns The existing or newly created Thread instance. */ createFromData: (data: DD, streamMessage: (params: MessageSentParams<any>) => void | Promise<void>) => ThreadModel<any, DD>; setMenuDrawerOpen: (v: boolean) => void; setDeleteItem: (v: Thread | undefined) => void; }