import { BaseProvider } from './base-provider'; import type { Message, ProviderOptions, ProviderResponse, ProviderChunk, Model, ServiceName } from '../types'; /** * OpenAI API provider implementation */ export declare class OpenAIProvider extends BaseProvider { readonly name: ServiceName; readonly supportsThinking = false; readonly supportsTools = true; readonly supportsVision = true; readonly supportsDocuments = false; private readonly defaultBaseUrl; /** * Send a non-streaming request to OpenAI */ sendRequest(messages: Message[], options: ProviderOptions): Promise; /** * Send a streaming request to OpenAI */ sendStreamingRequest(messages: Message[], options: ProviderOptions): AsyncIterable; /** * Fetch available models from OpenAI */ fetchModels(apiKey?: string): Promise; /** * Verify connection to OpenAI */ verifyConnection(apiKey?: string): Promise; /** * Build the request body for OpenAI API */ private buildRequestBody; /** * Format messages for OpenAI API */ protected formatMessages(messages: Message[]): unknown[]; /** * Format content for OpenAI API */ private formatContent; /** * Parse OpenAI response */ protected parseResponse(response: unknown): ProviderResponse; /** * Make HTTP request to OpenAI */ private makeRequest; /** * Handle error responses from OpenAI */ private handleErrorResponse; /** * Get API key from environment */ private getApiKeyFromEnv; } //# sourceMappingURL=openai.d.ts.map