import type { EventEmitter } from 'eventemitter3'; import type { AirtopClient } from '../../wrapper/AirtopClient'; import type { BatchOperationError, BatchOperationInput, BatchOperationResponse, BatchOperationUrl } from './types'; export declare class WindowQueue { private activePromises; private urlQueue; private activePromisesMutex; private urlQueueMutex; private maxWindowsPerSession; private runEmitter; private sessionId; private client; private operation; private onError?; private isHalted; constructor(maxWindowsPerSession: number, runEmitter: EventEmitter, sessionId: string, client: AirtopClient, operation: (input: BatchOperationInput) => Promise>, onError?: (error: BatchOperationError) => Promise, isHalted?: boolean); addUrlToQueue(url: BatchOperationUrl): Promise; private handleHaltEvent; processInBatches(urls: BatchOperationUrl[]): Promise; private handleErrorWithCallback; private safelyTerminateWindow; private formatError; private handleErrorAndWarningResponses; }