export declare class RateLimiter { private static _instance; private static _lock; private requestQueue; private isProcessing; private lastRequestTime; private minInterval; private maxQueueSize; private constructor(); static getInstance(): RateLimiter; execute(fn: () => Promise, priority?: boolean): Promise; private processQueue; setMinInterval(interval: number): void; getQueueLength(): number; clearQueue(): void; } export declare function withRateLimit(fn: () => Promise): Promise;