import { PriorityQueue } from "./priority-queue.service.js";
export declare class PQueue {
    queue: PriorityQueue;
    private _carryoverConcurrencyCount;
    private _isIntervalIgnored;
    private _intervalCount;
    private _intervalCap;
    private _interval;
    private _intervalId?;
    private _intervalEnd;
    private _timeoutId;
    private _pendingCount;
    private _concurrency;
    private _isPaused;
    private _resolveEmpty;
    private _resolveIdle;
    constructor(options: any);
    add(fn: any, options?: any): Promise<any>;
    addAll(fns: any, options: any): Promise<any[]>;
    start(): void;
    pause(): void;
    clear(): void;
    onEmpty(): Promise<void>;
    onIdle(): Promise<void>;
    get _doesIntervalAllowAnother(): boolean;
    get _doesConcurrentAllowAnother(): boolean;
    private _next;
    private _resolvePromises;
    private _onResumeInterval;
    private _intervalPaused;
    private _tryToStartAnother;
    private _initializeIntervalIfNeeded;
    private _onInterval;
    get size(): number;
    get pending(): number;
    get isPaused(): boolean;
}
