route-claudecode
Version:
Advanced routing and transformation system for Claude Code outputs to multiple AI providers
114 lines • 2.93 kB
TypeScript
/**
* 动态模型配置系统集成示例
* 展示如何将模型发现系统集成到路由器和提供商中
*/
import { RouterConfig } from '@/types';
/**
* 集成动态模型配置系统的路由器配置示例
*/
export interface IntegratedRouterConfig extends RouterConfig {
modelDiscovery: {
enabled: boolean;
autoUpdateRouting: boolean;
discoveryInterval: number;
maxModelsPerProvider: number;
modelFallbackEnabled: boolean;
};
}
/**
* 动态模型配置系统集成类
*/
export declare class DynamicModelIntegration {
private config;
private modelManager?;
private isInitialized;
constructor(config: IntegratedRouterConfig);
/**
* 初始化模型管理器
*/
private initializeModelManager;
/**
* 初始化系统集成
*/
initialize(): Promise<void>;
/**
* 注册提供商
*/
private registerProvider;
/**
* 处理模型更新事件
*/
private handleModelUpdate;
/**
* 处理模型添加
*/
private handleModelAdded;
/**
* 处理模型移除
*/
private handleModelRemoved;
/**
* 处理模型变为可用
*/
private handleModelBecameAvailable;
/**
* 处理模型变为不可用
*/
private handleModelBecameUnavailable;
/**
* 获取可用模型列表
*/
getAvailableModels(category?: string): Array<{
providerId: string;
modelId: string;
responseTime: number;
category: string;
priority: number;
}>;
/**
* 获取系统状态
*/
getStatus(): {
isInitialized: boolean;
isAutoDiscoveryRunning: boolean;
registeredProviders: string[];
totalModels: number;
availableModels: number;
lastUpdateTime: number;
};
/**
* 手动触发模型发现
*/
triggerModelDiscovery(providerId?: string): Promise<any>;
/**
* 测试模型可用性
*/
testModelAvailability(providerId: string, modelId: string): Promise<boolean>;
/**
* 停止系统集成
*/
shutdown(): void;
/**
* 更新路由配置的示例方法
*/
private updateRoutingConfig;
}
/**
* 创建集成动态模型配置系统的路由器配置
*/
export declare function createIntegratedRouterConfig(baseConfig: RouterConfig, modelDiscoveryConfig?: {
enabled?: boolean;
autoUpdateRouting?: boolean;
discoveryInterval?: number;
maxModelsPerProvider?: number;
modelFallbackEnabled?: boolean;
}): IntegratedRouterConfig;
/**
* 工厂函数创建动态模型配置系统集成
*/
export declare function createDynamicModelIntegration(config: IntegratedRouterConfig): DynamicModelIntegration;
/**
* 示例使用代码
*/
export declare function exampleUsage(): Promise<void>;
//# sourceMappingURL=dynamic-model-integration-example.d.ts.map