export type ChatSessionStatus = 'active' | 'closed' | 'expired'; export type ChatTurnRole = 'user' | 'agent'; export type ChatTurnStatus = 'queued' | 'processing' | 'completed' | 'failed'; export interface ChatToolCall { name: string; status: 'success' | 'failed'; } export interface ChatTokenUsage { prompt_tokens: number; completion_tokens: number; } export interface ChatAgentMetadata { tool_calls: ChatToolCall[]; referenced_documents: string[]; model: string; token_usage: ChatTokenUsage; } export interface ChatTurnError { code: 'agent_error' | 'timeout' | 'context_too_large' | 'rate_limited'; message: string; } export interface ChatTurn { id: string; session_id: string; sequence_number: number; role: ChatTurnRole; content: string; status: ChatTurnStatus; error?: ChatTurnError | null; agent_metadata?: ChatAgentMetadata | null; created_at: string; completed_at: string | null; } export interface ChatTurnListResponse { items: ChatTurn[]; total: number; limit: number; offset: number; } export interface ChatSession { id: string; meeting_id?: string | null; status: ChatSessionStatus; title?: string | null; turn_count: number; metadata?: Record; created_at: string; updated_at: string; current_turn?: ChatTurn; turns?: ChatTurnListResponse; } export interface ChatSessionListParams { meeting_id?: string; status?: ChatSessionStatus; limit?: number; offset?: number; } export interface ChatSessionListResponse { items: ChatSession[]; total: number; limit: number; offset: number; } export interface CreateChatSessionRequest { meeting_id?: string; message: string; context_document_ids?: string[]; metadata?: Record; } export interface GetChatSessionParams { include?: 'undelivered' | 'all_turns'; turn_limit?: number; turn_offset?: number; } export interface SendChatMessageRequest { message: string; } export interface SendChatMessageResponse { turn: ChatTurn; position: number; queued_turns: number; } export interface GetTurnResponse { turn: ChatTurn; } //# sourceMappingURL=chat.d.ts.map