import type { BullMQPayload, QueueMessage } from '../../../src/index.js';
export type QueueRpcAction = 'enqueue' | 'dequeue' | 'ack' | 'length' | 'drain';
export interface IQueueDriver {
    enqueue(queue: string, payload: BullMQPayload): Promise<string>;
    dequeue<T = unknown>(queue: string): Promise<QueueMessage<T> | undefined>;
    ack(queue: string, id: string): Promise<void>;
    length(queue: string): Promise<number>;
    drain(queue: string): Promise<void>;
}
export declare const HttpQueueDriver: Readonly<{
    enqueue(queue: string, payload: BullMQPayload): Promise<string>;
    dequeue<T = unknown>(queue: string): Promise<QueueMessage<T> | undefined>;
    ack(queue: string, id: string): Promise<void>;
    length(queue: string): Promise<number>;
    drain(queue: string): Promise<void>;
}>;
export default HttpQueueDriver;
//# sourceMappingURL=HttpQueueDriver.d.ts.map