export interface ResourceConfig { /** 资源获取函数 */ resourceFn: (...args: T) => Promise; /** 失败后禁用时间(毫秒),默认 30 秒 */ disableTime?: number; /** 最大重试次数,默认 3 次 */ maxRetries?: number; /** 主动测试间隔(毫秒),默认 60 秒 */ healthCheckInterval?: number; /** 最大健康检查失败次数,超过后永久禁用,默认 5 次 */ maxHealthCheckFailures?: number; /** 健康检查函数,如果提供则优先使用此函数进行健康检查 */ healthCheckFn?: (...args: T) => Promise; /** 测试参数(用于健康检查) */ testArgs?: T; } export declare class ResourceManager { private resourceTypes; private destroyed; /** * 调用资源(自动注册或复用已有配置) */ callResource(type: string, config: ResourceConfig, ...args: T): Promise; /** * 检查资源类型是否可用 */ isResourceAvailable(type: string): boolean; /** * 获取资源类型统计信息 */ getResourceStats(type: string): { successCount: number; failureCount: number; isEnabled: boolean; isPermanentlyDisabled: boolean; } | null; /** * 获取所有资源类型统计 */ getAllResourceStats(): Map; /** * 注销资源类型 */ unregister(type: string): boolean; /** * 销毁管理器 */ destroy(): void; /** * 检查并执行健康检查(如果需要) */ private checkAndPerformHealthCheck; private performHealthCheck; private onResourceSuccess; private onResourceFailure; } export declare const resourceManager: ResourceManager; export declare function registerResource(type: string, config: ResourceConfig, ...args: T): Promise;