UNPKG

route-claudecode

Version:

Advanced routing and transformation system for Claude Code outputs to multiple AI providers

98 lines 3.25 kB
/** * Demo3流水线数据匹配器 - 完整流程一致性保证 * 确保从输入到输出的每个环节都与Demo3 AIClient-2-API保持一致 * 项目所有者: Jason Zhang */ import { BaseRequest, BaseResponse } from '@/types'; import { Demo3RequestFormat, Demo3ResponseFormat } from './demo3-data-matcher'; export interface Demo3PipelineConfig { endpoint: string; authHeaderName: 'x-api-key' | 'Authorization'; authHeaderValue: string; enableProfileArn: boolean; profileArnTruncateLength: number; conversationIdPrefix: string; messageIdPrefix: string; } export interface Demo3PipelineContext { requestId: string; sessionId?: string; conversationId?: string; originalRequest: any; demo3Request: Demo3RequestFormat; demo3Response?: Demo3ResponseFormat; transformedResponse?: BaseResponse; metadata: { startTime: number; endTime?: number; duration?: number; stage: string; profileArn?: string; }; } export declare class Demo3PipelineMatcher { private readonly config; constructor(config?: Partial<Demo3PipelineConfig>); /** * 🎯 Step 1: 输入预处理 - 完全匹配Demo3的输入处理逻辑 */ preprocessInput(request: BaseRequest): Demo3PipelineContext; /** * 🎯 Step 2: 请求转换 - 精确转换为Demo3格式 */ transformRequest(context: Demo3PipelineContext): Demo3PipelineContext; /** * 🎯 Step 3: API调用准备 - 生成Demo3兼容的API调用参数 */ prepareApiCall(context: Demo3PipelineContext): { url: string; headers: Record<string, string>; body: Demo3RequestFormat; method: string; }; /** * 🎯 Step 4: 响应处理 - 处理Demo3返回的响应 */ processResponse(context: Demo3PipelineContext, apiResponse: any): Demo3PipelineContext; /** * 🎯 Step 5: 输出转换 - 转换为标准格式但保持Demo3特征 */ transformOutput(context: Demo3PipelineContext): Demo3PipelineContext; /** * 🎯 完整流水线处理 - 一站式Demo3兼容处理 */ processFullPipeline(request: BaseRequest, apiCallFunction: (apiCall: any) => Promise<any>): Promise<BaseResponse>; /** * 🎯 流式处理支持 - Demo3兼容的流式响应处理 */ processStreamPipeline(request: BaseRequest, streamApiCallFunction: (apiCall: any) => AsyncIterable<any>): AsyncIterable<any>; /** * Demo3响应格式验证和标准化 */ private validateAndNormalizeDemo3Response; /** * 流式chunk格式化 */ private formatStreamChunk; /** * 生成Demo3兼容的请求ID */ private generateRequestId; /** * 生成Demo3兼容的对话ID */ private generateConversationId; /** * 生成Demo3兼容的消息ID */ private generateMessageId; /** * 🎯 获取处理统计信息 */ getProcessingStats(context: Demo3PipelineContext): Record<string, any>; } /** * 创建Demo3流水线匹配器实例 */ export declare function createDemo3PipelineMatcher(config?: Partial<Demo3PipelineConfig>): Demo3PipelineMatcher; //# sourceMappingURL=demo3-pipeline-matcher.d.ts.map