/** * Chat handler for conversational spec planning * Uses Server-Sent Events (SSE) for streaming responses */ import type { Message, CodebaseContext, SpecReference } from "./types.js"; export interface ChatInput { messages: Message[]; codebaseContext: CodebaseContext; repoPath: string; } export interface GeneratedSpec { title: string; content: string; extends?: SpecReference[]; } export interface QuestionOption { label: string; description?: string; } export interface Question { id: string; text: string; options: QuestionOption[]; multiSelect: boolean; } export interface ChatStreamEvent { type: "text" | "spec" | "question" | "done" | "error"; text?: string; spec?: GeneratedSpec; question?: Question; error?: string; } /** * Create an SSE stream for chat responses */ export declare function createChatStream(input: ChatInput, abortController?: AbortController): Promise>; /** * Create a simple non-streaming chat response (for testing/fallback) */ export declare function runChat(input: ChatInput, abortController?: AbortController): Promise<{ response: string; spec?: GeneratedSpec; question?: Question; }>; //# sourceMappingURL=chat.d.ts.map