UNPKG

autoagent-cli

Version:

Run autonomous AI agents using Claude or Gemini for task execution

38 lines (37 loc) 1.24 kB
import { ProviderName } from '../types'; export interface ProviderRateLimitData { provider: ProviderName; limitedAt: number; attempts: number; lastError?: string; } export interface RateLimitCache { [provider: string]: ProviderRateLimitData; } export declare class ProviderRateLimiter { private static readonly CACHE_FILE; private static readonly CONFIG_DIR; private cache; private cachePath; private cacheLoaded; constructor(); loadCache(): Promise<void>; saveCache(): Promise<void>; isProviderRateLimited(provider: ProviderName): Promise<boolean>; markProviderRateLimited(provider: ProviderName, error?: string): Promise<void>; clearProviderRateLimit(provider: ProviderName): Promise<void>; isRateLimitError(provider: ProviderName, text: string): boolean; getBestGeminiModel(): Promise<string>; getRateLimitStatus(provider: ProviderName): Promise<{ isLimited: boolean; timeRemaining?: number; attempts?: number; lastError?: string; }>; getRateLimitSummary(): Promise<Record<ProviderName, { isLimited: boolean; timeRemaining?: number; attempts?: number; }>>; private ensureDirectoryExists; }