UNPKG

route-claudecode

Version:

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

135 lines 3.62 kB
/** * CodeWhisperer Transformer - 统一格式转换 * 将CodeWhisperer格式与统一格式之间进行转换 * 项目所有者: Jason Zhang */ import { MessageTransformer, UnifiedRequest, UnifiedResponse } from './types'; import { BaseRequest, BaseResponse } from '@/types'; export interface CodeWhispererRequest { model: string; max_tokens: number; messages: Array<{ role: string; content: any; }>; stream?: boolean; temperature?: number; system?: Array<{ type: string; text: string; }>; tools?: Array<{ name: string; description: string; input_schema: any; }>; } export interface CodeWhispererResponse { id: string; type: string; model: string; role: string; content: Array<{ type: string; text?: string; id?: string; name?: string; input?: any; }>; stop_reason: string; stop_sequence: string | null; usage: { input_tokens: number; output_tokens: number; }; } export declare class CodeWhispererTransformer implements MessageTransformer { readonly name = "codewhisperer"; /** * 🎯 Convert BaseRequest (Anthropic format) to CodeWhisperer format * 这是Provider调用的主要入口点 */ transformBaseToCodeWhisperer(request: BaseRequest): CodeWhispererRequest; /** * 🎯 Convert CodeWhisperer response to BaseResponse (Anthropic format) * 这是Provider调用的主要出口点 */ transformCodeWhispererToBase(response: CodeWhispererResponse, originalRequest: BaseRequest): BaseResponse; /** * 转换请求到统一格式 */ transformRequestToUnified(request: CodeWhispererRequest): UnifiedRequest; /** * 从统一格式转换请求 */ transformRequestFromUnified(unified: UnifiedRequest): CodeWhispererRequest; /** * 转换响应到统一格式 */ transformResponseToUnified(response: CodeWhispererResponse): UnifiedResponse; /** * 从统一格式转换响应 */ transformResponseFromUnified(unified: UnifiedResponse): CodeWhispererResponse; /** * 标准化消息格式 */ private normalizeMessages; /** * 反标准化消息格式 */ private denormalizeMessages; /** * 标准化消息内容 */ private normalizeMessageContent; /** * 反标准化消息内容 */ private denormalizeMessageContent; /** * 标准化内容块 */ private normalizeContent; /** * 反标准化内容块 */ private denormalizeContent; /** * 映射stop reason到统一格式 */ private mapStopReason; /** * 🔧 Convert Anthropic messages to CodeWhisperer format */ private convertAnthropicMessagesToCodeWhisperer; /** * 🔧 Convert Anthropic tools to CodeWhisperer format */ private convertAnthropicToolsToCodeWhisperer; /** * 🎯 Map CodeWhisperer stop_reason to Anthropic stop_reason */ private mapCodeWhispererStopReasonToAnthropic; /** * 🔧 Check if content has tool calls */ private hasToolCallsInContent; /** * 提取文本内容 */ private extractTextContent; /** * 提取工具调用 */ private extractToolCalls; /** * 从统一格式构建内容 */ private buildContentFromUnified; } /** * 创建CodeWhisperer转换器实例 */ export declare function createCodeWhispererTransformer(): CodeWhispererTransformer; //# sourceMappingURL=codewhisperer.d.ts.map