import { ContinueChatResponse, StartChatResponse } from '@indite.io/schemas' export type BotContext = { bot: StartChatResponse['bot'] resultId?: string isPreview: boolean apiHost?: string source?: string sessionId: string wsHost?: string; storage: 'local' | 'session' | undefined } export type OutgoingLog = { status: string description: string details?: unknown } export type ClientSideActionContext = { apiHost?: string; wsHost?: string; sessionId: string; resultId?: string; } export type ChatChunk = Pick< ContinueChatResponse, 'messages' | 'input' | 'clientSideActions' > & { streamingMessageId?: string } export type Attachment = { type: string url: string blobUrl?: string; } export type TextInputSubmitContent = { type: 'text' value: string label?: string attachments?: Attachment[] } export type RecordingInputSubmitContent = { type: 'recording' url: string blobUrl?: string; } export type InputSubmitContent = | TextInputSubmitContent | RecordingInputSubmitContent