/** * Agentic QE v3 - OpenAI Provider * ADR-011: LLM Provider System for Quality Engineering * * Secondary LLM provider using OpenAI's API. * Supports GPT-4o, GPT-4-turbo, and GPT-3.5-turbo models. */ import { LLMProvider, LLMProviderType, OpenAIConfig, Message, GenerateOptions, EmbedOptions, CompleteOptions, LLMResponse, EmbeddingResponse, CompletionResponse, HealthCheckResult } from '../interfaces'; /** * Default OpenAI configuration */ export declare const DEFAULT_OPENAI_CONFIG: OpenAIConfig; /** * OpenAI LLM provider implementation */ export declare class OpenAIProvider implements LLMProvider { readonly type: LLMProviderType; readonly name: string; private config; private requestId; constructor(config?: Partial); /** * Check if OpenAI is available and configured */ isAvailable(): Promise; /** * Health check with latency measurement */ healthCheck(): Promise; /** * Generate text from a prompt or messages */ generate(input: string | Message[], options?: GenerateOptions): Promise; /** * Generate embedding for text */ embed(text: string, options?: EmbedOptions): Promise; /** * Complete a partial text (code completion style) */ complete(prompt: string, options?: CompleteOptions): Promise; /** * Get current provider configuration */ getConfig(): OpenAIConfig; /** * Get supported models */ getSupportedModels(): string[]; /** * Get cost per token for current model */ getCostPerToken(): { input: number; output: number; }; /** * Dispose provider resources */ dispose(): Promise; /** * Get API key from config or environment */ private getApiKey; /** * Get base URL */ private getBaseUrl; /** * Get request headers */ private getHeaders; /** * Format input to messages array */ private formatMessages; /** * Map OpenAI finish reason to standard format */ private mapFinishReason; /** * Handle API errors with proper error types */ private handleApiError; /** * Fetch with timeout */ private fetchWithTimeout; /** * Fetch with retry logic */ private fetchWithRetry; /** * Sleep utility */ private sleep; } //# sourceMappingURL=openai.d.ts.map