/**
 * AsyncQueue - Ensures handlers are processed sequentially to prevent race conditions.
 * Each queued task is executed only after the previous one completes.
 */
export declare class AsyncQueue {
    private queue;
    private processing;
    /**
     * Enqueue a task to be executed sequentially.
     * @param task - An async function to be executed
     */
    enqueue(task: () => Promise<void>): void;
    /**
     * Process the queue sequentially.
     */
    private processQueue;
    /**
     * Check if the queue is currently empty and not processing.
     */
    get isIdle(): boolean;
    /**
     * Get the current queue length.
     */
    get length(): number;
}
