/** * OpenAI LLM Provider * * Provider for OpenAI API (https://api.openai.com). * Supports GPT-4, GPT-4 Turbo, and GPT-3.5. * * Environment variables: * - OPENAI_API_KEY: Required API key * - OPENAI_BASE_URL: Optional base URL (default: https://api.openai.com/v1) * - OPENAI_MODEL: Model to use (default: gpt-4) */ import type { LLMProvider, GenerationRequest, GenerationResponse } from './index.js'; export interface OpenAIConfig { apiKey?: string; baseURL?: string; model?: string; timeout?: number; } export declare class OpenAIProvider implements LLMProvider { name: string; models: string[]; private readonly apiKey; private readonly baseURL; private readonly defaultModel; private readonly timeout; constructor(config?: OpenAIConfig); isAvailable(): Promise; generate(request: GenerationRequest): Promise; stream(request: GenerationRequest): AsyncIterable; countTokens(text: string): number; private buildMessages; } /** * OpenAI-specific error */ export declare class OpenAIError extends Error { code: string; details?: Record; constructor(message: string, details?: Record); } /** * Create OpenAI provider with default settings */ export declare function createOpenAIProvider(config?: OpenAIConfig): OpenAIProvider; /** * Check if OpenAI is available and configured */ export declare function checkOpenAISetup(): Promise;