UNPKG

route-claudecode

Version:

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

84 lines 2.55 kB
/** * Admin API Handler Module * * 处理管理相关的API请求(stats、provider管理、shutdown等) * 按照细菌式编程原则:小巧、模块化、自包含 */ import { FastifyRequest, FastifyReply } from 'fastify'; import { Provider } from '@/types'; export interface AdminHandlerDependencies { providers: Map<string, Provider>; logger: any; errorTracker?: any; requestTracker?: any; config: { server: { port: number; }; }; } export declare class AdminHandler { private deps; constructor(deps: AdminHandlerDependencies); /** * 处理 /api/stats 请求 */ handleApiStats(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /stats 请求(简化版本) */ handleStats(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /dual-stats 请求 */ handleDualStats(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /api/failures 请求 */ handleFailures(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /api/providers/:providerId/disable 请求 */ handleProviderDisable(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /api/providers/:providerId/enable 请求 */ handleProviderEnable(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /api/providers/temporary-disabled 请求 */ handleTemporaryDisabled(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /shutdown 请求 */ handleShutdown(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /v1/messages/count_tokens 请求 */ handleCountTokens(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 处理 /api/error-diagnostics 请求 */ handleErrorDiagnostics(request: FastifyRequest, reply: FastifyReply): Promise<void>; /** * 收集系统统计信息 */ private collectSystemStats; /** * 收集Provider统计信息 */ private collectProviderStats; /** * 收集Provider诊断信息 */ private collectProviderDiagnostics; /** * 获取Provider类型 */ private getProviderType; } /** * 创建Admin Handler实例的工厂函数 */ export declare function createAdminHandler(deps: AdminHandlerDependencies): AdminHandler; //# sourceMappingURL=admin-handler.d.ts.map