/**
 * Enhanced OpenAI Format Transformer
 * Handles conversion between OpenAI API format and unified format
 * Includes tool call processing and response handling
 *
 * 遵循零硬编码、零Fallback、零沉默失败原则
 */
import { MessageTransformer, UnifiedRequest, UnifiedResponse, StreamChunk } from './types';
import { BaseRequest, BaseResponse } from '@/types';
export declare class OpenAITransformer implements MessageTransformer {
    readonly name = "openai";
    /**
     * 🎯 Convert BaseRequest (Anthropic format) to OpenAI API format
     * 这是Provider调用的主要入口点
     */
    transformBaseRequestToOpenAI(request: BaseRequest): any;
    /**
     * 🎯 Convert OpenAI API response to BaseResponse (Anthropic format)
     * 这是Provider调用的主要出口点
     */
    transformOpenAIResponseToBase(response: any, originalRequest: BaseRequest): BaseResponse;
    /**
     * 🎯 Process OpenAI streaming response and convert to Anthropic SSE events
     * 处理流式响应转换
     */
    transformOpenAIStreamToAnthropicSSE(stream: AsyncIterable<any>, originalRequest: BaseRequest, requestId: string): AsyncIterable<any>;
    /**
     * Convert OpenAI request to unified format
     */
    transformRequestToUnified(request: any): UnifiedRequest;
    /**
     * Convert unified request to OpenAI format
     */
    transformRequestFromUnified(request: UnifiedRequest): any;
    /**
     * Convert OpenAI response to unified format
     */
    transformResponseToUnified(response: any): UnifiedResponse;
    /**
     * Convert unified response to OpenAI format
     */
    transformResponseFromUnified(response: UnifiedResponse): any;
    /**
     * Convert OpenAI streaming chunk to unified format
     * 保留finish_reason，传递给下游处理
     */
    /**
     * Convert OpenAI streaming chunk to unified format
     * 🔧 修复finish_reason映射，确保工具调用正确处理
     */
    transformStreamChunk(chunk: any): StreamChunk | null;
    /**
     * Convert messages to unified format
     */
    private convertMessagesToUnified;
    /**
     * Convert messages from unified format
     */
    private convertMessagesFromUnified;
    /**
     * 🔧 Convert Anthropic messages to OpenAI format
     */
    private convertAnthropicMessagesToOpenAI;
    /**
     * 🔧 Convert Anthropic content blocks to OpenAI format
     */
    private convertAnthropicContentToOpenAI;
    /**
     * 🔧 Convert Anthropic tools to OpenAI format
     */
    private convertAnthropicToolsToOpenAI;
    /**
     * 🔧 Convert tool choice
     */
    private convertToolChoice;
    /**
     * 🔧 Convert OpenAI message to Anthropic content blocks
     */
    private convertOpenAIMessageToAnthropicContent;
    /**
     * 🎯 Map OpenAI finish_reason to Anthropic stop_reason
     * 修复跨节点耦合问题 - finish reason映射应在Transformer内部处理
     */
    private mapOpenAIFinishReasonToAnthropic;
    /**
     * 🔧 Check if message has tool calls
     */
    private hasToolCalls;
}
/**
 * Utility function to create OpenAI transformer
 */
export declare function createOpenAITransformer(): OpenAITransformer;
//# sourceMappingURL=openai.d.ts.map