route-claudecode
Version:
Advanced routing and transformation system for Claude Code outputs to multiple AI providers
56 lines • 1.96 kB
TypeScript
/**
* Pure OpenAI Client - 纯粹的OpenAI逻辑 (重构版)
* @deprecated Use UnifiedOpenAIClient instead - this client will be removed in v3.0.0
* 废弃警告:请使用UnifiedOpenAIClient - 此客户端将在v3.0.0中移除
*
* 只负责与OpenAI API的通信,所有转换逻辑都在transformer中处理
* 遵循零硬编码、零Fallback、零沉默失败原则
*/
import { BaseRequest, BaseResponse, Provider, ProviderConfig } from '@/types';
export interface PureOpenAIConfig extends ProviderConfig {
sdkOptions?: {
timeout?: number;
maxRetries?: number;
defaultHeaders?: Record<string, string>;
};
}
/**
* 纯粹的OpenAI客户端 - 只做API调用 (重构版)
*/
export declare class PureOpenAIClient implements Provider {
readonly name: string;
readonly type = "openai-pure";
readonly config: PureOpenAIConfig;
private openaiClient;
private validatedConfig;
private sessionManager;
private apiHandler;
constructor(config: PureOpenAIConfig, providerId: string);
/**
* 发送非流式请求 - 使用统一API处理器
*/
sendRequest(request: BaseRequest): Promise<BaseResponse>;
/**
* 发送流式请求 - 基于非流式API的流式模拟
*/
sendStreamRequest(request: BaseRequest): AsyncIterable<any>;
/**
* 健康检查
*/
isHealthy(): Promise<boolean>;
/**
* 从 BaseRequest 提取 OpenAI 格式(备用方法)
* 预期外部 Transformer 已完成转换,这里只是简单提取
*/
private extractOpenAIFormat;
/**
* 包装原始 OpenAI 响应为 BaseResponse 格式
* 最小包装,详细转换由外部 Transformer 处理
*/
private wrapResponse;
}
/**
* 创建Pure OpenAI客户端 - 重构后的简化版本
*/
export declare function createPureOpenAIClient(config: PureOpenAIConfig, providerId: string): PureOpenAIClient;
//# sourceMappingURL=pure-client.d.ts.map