import { ICallback } from 'redis-smq-common';
import { IQueueParams, IQueueRateLimit, QueueManager } from '../queue-manager/index.js';
export declare class QueueRateLimit {
    protected logger: import("redis-smq-common").ILogger;
    protected queue: QueueManager;
    constructor();
    clear(queue: string | IQueueParams): Promise<void>;
    clear(queue: string | IQueueParams, cb: ICallback<void>): void;
    set(queue: string | IQueueParams, rateLimit: IQueueRateLimit): Promise<void>;
    set(queue: string | IQueueParams, rateLimit: IQueueRateLimit, cb: ICallback<void>): void;
    hasExceeded(queue: string | IQueueParams, rateLimit: IQueueRateLimit): Promise<boolean>;
    hasExceeded(queue: string | IQueueParams, rateLimit: IQueueRateLimit, cb: ICallback<boolean>): void;
    get(queue: string | IQueueParams): Promise<IQueueRateLimit | null>;
    get(queue: string | IQueueParams, cb: ICallback<IQueueRateLimit | null>): void;
}
//# sourceMappingURL=queue-rate-limit.d.ts.map