import type { ProviderHealthConfig, ProviderHealthState } from './types.js';
interface ProviderInternalState extends ProviderHealthState {
    lastFailureAt?: number;
}
export declare class ProviderHealthManager {
    private readonly states;
    private config;
    configure(config?: ProviderHealthConfig): void;
    registerProviders(providerKeys: string[]): void;
    recordFailure(providerKey: string, reason?: string): ProviderInternalState;
    /**
     * 为可恢复错误（例如 429）提供短暂冷静期：在 cooldownMs 内将 providerKey
     * 视为不可用，但不使用 fatalCooldownMs 的长熔断时间。
     */
    cooldownProvider(providerKey: string, reason?: string, overrideMs?: number): ProviderInternalState;
    recordSuccess(providerKey: string): ProviderInternalState;
    tripProvider(providerKey: string, reason?: string, cooldownOverrideMs?: number): ProviderInternalState;
    isAvailable(providerKey: string): boolean;
    getSnapshot(): ProviderHealthState[];
    getConfig(): Required<ProviderHealthConfig>;
    private getState;
}
export {};
