interface RateLimiterOptions { getLimit?: number; writeLimit?: number; windowMs?: number; } type BucketType = "GET" | "WRITE"; export declare class RateLimiter { private readonly limits; private readonly windowMs; private readonly timestamps; constructor(options?: RateLimiterOptions); acquire(type: BucketType): Promise; reset(): void; /** Get remaining requests and next reset time for a bucket. */ getStatus(type: BucketType): { remaining: number; limit: number; resetInMs: number; }; /** Get status for all buckets. */ getAllStatus(): Record; private pruneExpired; } export {};