/**
 * OpenAI Provider (GPT)
 *
 * LLM provider implementation for OpenAI API.
 * Provides access to GPT-4o, GPT-4 Turbo, and O-series models.
 */
import { BaseProvider } from './base-provider.js';
import type { ProviderType, ProviderConfig, CompletionOptions, LLMResponse, StreamChunk, ProviderFeature } from './types.js';
/**
 * Implementation of the OpenAI provider.
 * Uses the official OpenAI SDK.
 */
export declare class OpenAIProvider extends BaseProvider {
    readonly type: ProviderType;
    readonly name = "GPT (OpenAI)";
    readonly defaultModel = "gpt-4o";
    private client;
    /**
     * Initializes the OpenAI provider.
     * Dynamically imports the OpenAI SDK.
     */
    initialize(config: ProviderConfig): Promise<void>;
    /**
     * Sends a completion request to the OpenAI API.
     * Standardizes tool calls and finish reasons.
     */
    complete(options: CompletionOptions): Promise<LLMResponse>;
    /**
     * Streams the response from the OpenAI API.
     * Handles accumulating tool calls (which are streamed in parts).
     * Wrapped with latency tracking for first-token and total streaming time.
     */
    stream(options: CompletionOptions): AsyncIterable<StreamChunk>;
    /**
     * Internal streaming implementation.
     */
    private streamInternal;
    getModels(): Promise<string[]>;
    getPricing(): {
        input: number;
        output: number;
    };
    supports(feature: ProviderFeature): boolean;
    /**
     * Formats internal messages to OpenAI's ChatCompletionMessageParam.
     */
    private formatMessages;
    /**
     * Formats tool definitions for OpenAI.
     */
    private formatTools;
}
