/**
 * Rate limiting utilities for Wayback Machine API
 */
interface RateLimitOptions {
    maxRequests: number;
    windowMs: number;
}
export declare class RateLimiter {
    private requests;
    private readonly maxRequests;
    private readonly windowMs;
    constructor(options: RateLimitOptions);
    /**
     * Check if a request can be made without violating rate limits
     */
    canMakeRequest(): boolean;
    /**
     * Wait until a request can be made
     */
    waitForSlot(): Promise<void>;
    /**
     * Record a request
     */
    recordRequest(): void;
    /**
     * Remove expired requests from the tracking array
     */
    private cleanup;
}
export declare const waybackRateLimiter: RateLimiter;
export {};
//# sourceMappingURL=rate-limit.d.ts.map