//#region src/services/prompt/types.d.ts /** * Prompt request and response types */ /** * Chat message format (OpenAI-compatible) */ interface ChatMessage { role: "system" | "user" | "assistant"; content: string; } /** * Prompt request configuration * Supports both single-turn (prompt) and multi-turn (messages) modes */ interface PromptRequest { prompt?: string; system?: string; messages?: ChatMessage[]; model?: string; temperature?: number; maxTokens?: number; stream?: boolean; abortSignal?: AbortSignal; } /** * Prompt response */ interface PromptResponse { content: string; model: string; provider: string; usage?: { promptTokens: number; completionTokens: number; totalTokens: number; }; finishReason?: string; } /** * Error thrown when a model is not supported */ declare class ModelNotSupportedError extends Error { constructor(model: string, availableModels: string[]); } /** * Error thrown when all providers fail */ declare class AllProvidersFailedError extends Error { readonly errors: Array<{ provider: string; error: Error; }>; constructor(model: string, errors: Array<{ provider: string; error: Error; }>); } //#endregion export { PromptResponse as a, PromptRequest as i, ChatMessage as n, ModelNotSupportedError as r, AllProvidersFailedError as t };