import { ErrorCategory } from "./error-category.type.mjs"; import { AIErrorOptions } from "./ai-error.mjs"; import { ProviderError } from "./provider-error.mjs"; //#region ../ai/src/errors/provider-rate-limit-error.d.ts /** * Payload for `ProviderRateLimitError`. `retryAfter` is the server's * hint (typically parsed from the `Retry-After` header) in milliseconds. */ type ProviderRateLimitErrorOptions = AIErrorOptions & { retryAfter?: number; }; /** * Provider refused the call because the account (or key, or window) * is over its rate-limit or quota. Retryable after `retryAfter` * milliseconds — consumers are expected to back off before retrying. * * Covers both transient `429 Too Many Requests` and the billing-level * `insufficient_quota` case; the adapter decides which provider * signals map here. * * @example * if (result.error instanceof ProviderRateLimitError) { * await sleep(result.error.retryAfter ?? 1000); * } */ declare class ProviderRateLimitError extends ProviderError { static readonly defaultCategory: ErrorCategory; readonly retryAfter?: number; constructor(message: string, options?: ProviderRateLimitErrorOptions); } //#endregion export { ProviderRateLimitError, ProviderRateLimitErrorOptions }; //# sourceMappingURL=provider-rate-limit-error.d.mts.map