import type { LLMProvider, ChatRequest, ChatResponse, ProviderEmbeddingRequest, ProviderEmbeddingResult, ProviderBatchAdapter, ProviderRuntimeMetadata, ProviderRuntimeMetadataDeps } from './interface.js';
import type { CacheHitTracker } from './cache-strategy.js';
/**
 * OpenAIProvider — wraps the official `openai` npm package.
 * Supports GPT-5 family models with full function/tool calling.
 */
export declare class OpenAIProvider implements LLMProvider {
    readonly name = "openai";
    readonly models: string[];
    readonly batch: ProviderBatchAdapter;
    private client;
    private readonly apiKey;
    private readonly embeddingModel;
    private readonly cacheHitTracker;
    constructor(apiKey: string, cacheHitTracker?: Pick<CacheHitTracker, 'recordTurn'>);
    chat(params: ChatRequest): Promise<ChatResponse>;
    embed(request: ProviderEmbeddingRequest): Promise<ProviderEmbeddingResult>;
    isConfigured(): boolean;
    describeRuntime(deps: ProviderRuntimeMetadataDeps): Promise<ProviderRuntimeMetadata>;
    private createChatBatch;
    private retrieveBatch;
    private cancelBatch;
    private getBatchResults;
    private toOpenAIBatchChatBody;
    private mapOpenAIBatchStatus;
    private readOpenAIBatchResultFile;
    private parseOpenAIBatchResult;
    private openAIBatchBodyToChatResponse;
}
//# sourceMappingURL=openai.d.ts.map