import type { LLMProviderDefinition, LLMProviderId, FailoverEvent, FailoverReason, ProviderRecommendation, QualityTier } from '../../types/index.js';
/**
 * Walk the failover chain and return the first healthy provider that
 * has a model matching the requested quality tier.
 *
 * Returns a recommendation or null if no provider is available after
 * MAX_FAILOVER_ATTEMPTS attempts.
 */
export declare function resolveFailover(chain: LLMProviderId[], definitions: LLMProviderDefinition[], tier: QualityTier, reason: FailoverReason): ProviderRecommendation | null;
/**
 * Get all failover events logged in the current session.
 */
export declare function getFailoverLog(): FailoverEvent[];
/**
 * Clear failover log (for testing).
 */
export declare function clearFailoverLog(): void;
/**
 * Build the default failover chain from provider definitions.
 * Orders by: number of models (descending), then alphabetically.
 */
export declare function buildDefaultChain(definitions: LLMProviderDefinition[]): LLMProviderId[];
//# sourceMappingURL=failover-chain.d.ts.map