export type ChatRuntimeId = string; export type ChatMode = 'ask' | 'plan' | 'agent'; export type ChatHistoryEntry = { role: 'user' | 'assistant'; content: string; }; export type ChatProcessInvocation = { command: string; args: string[]; stdin: string; }; export type ChatStreamEvent = { event: string; data: unknown; }; export type ImageAttachment = { mimeType: string; base64: string; }; export type ChatRuntimeAdapter = { id: ChatRuntimeId; buildSpawnInvocation(input: { prompt: string; providerSessionId: string; model?: string; chatMode?: ChatMode; images?: ImageAttachment[]; workspace?: string; }): ChatProcessInvocation; buildResumeInvocation(input: { providerSessionId: string | null; history: ChatHistoryEntry[]; message: string; model?: string; workspace?: string; images?: ImageAttachment[]; }): ChatProcessInvocation; extractHistoryText(rawOutput: string): string; normalizeStreamLine(line: string): ChatStreamEvent[]; }; export declare const CHAT_MODE_TOOLS: Record; export declare function registerChatRuntimeAdapter(adapter: ChatRuntimeAdapter): void; export declare function getChatRuntimeAdapter(runtime: ChatRuntimeId): ChatRuntimeAdapter; export declare function listChatRuntimeAdapters(): ChatRuntimeAdapter[];