export interface ProviderRequestBudget { readonly maxRequests: number; readonly intervalMs: number; } export interface ProviderRateLimitSnapshot { readonly provider: string; readonly rateLimitCount: number; readonly cooldownUntil: number; } export declare function configureProviderRequestBudget(provider: string, budget: ProviderRequestBudget | undefined): void; export declare function providerRateLimitSnapshot(provider: string): ProviderRateLimitSnapshot | undefined; export declare function providerIdForModel(model: string | object | undefined): string | undefined; export declare function providerCooldownMs(provider: string | undefined): number; export declare function providerAdmissionDelayMs(provider: string): number; export declare function tryAdmitProviderRequest(provider: string): number; export declare function isProviderRateLimit(error: unknown): boolean; export declare function markProviderRateLimitObserved(error: object): void; export declare function recordProviderRateLimit(provider: string | undefined, error: unknown): number | undefined; export declare function recordProviderSuccess(provider: string): void; export declare function providerRetryHint(error: unknown): { retryAfterMs?: number; }; //# sourceMappingURL=provider-rate-limits.d.ts.map