/** * Queue control operations */ import type { IFlashQClient, QueueInfo } from '../types'; /** * Pause a queue. Workers will stop pulling jobs. * * @param client - FlashQ client instance * @param queue - Queue name * * @example * ```typescript * await client.pause('emails'); * ``` */ export declare function pause(client: IFlashQClient, queue: string): Promise; /** * Resume a paused queue. * * @param client - FlashQ client instance * @param queue - Queue name * * @example * ```typescript * await client.resume('emails'); * ``` */ export declare function resume(client: IFlashQClient, queue: string): Promise; /** * Check if a queue is paused. * * @param client - FlashQ client instance * @param queue - Queue name * @returns true if paused * * @example * ```typescript * if (await client.isPaused('emails')) { * console.log('Queue is paused'); * } * ``` */ export declare function isPaused(client: IFlashQClient, queue: string): Promise; /** * Set rate limit for a queue (jobs per second). * * @param client - FlashQ client instance * @param queue - Queue name * @param limit - Jobs per second * * @example * ```typescript * // Allow 10 jobs per second * await client.setRateLimit('api-calls', 10); * ``` */ export declare function setRateLimit(client: IFlashQClient, queue: string, limit: number): Promise; /** * Clear rate limit for a queue. * * @param client - FlashQ client instance * @param queue - Queue name * * @example * ```typescript * await client.clearRateLimit('api-calls'); * ``` */ export declare function clearRateLimit(client: IFlashQClient, queue: string): Promise; /** * Set concurrency limit for a queue. * * @param client - FlashQ client instance * @param queue - Queue name * @param limit - Max concurrent jobs * * @example * ```typescript * // Allow max 5 concurrent jobs * await client.setConcurrency('heavy-tasks', 5); * ``` */ export declare function setConcurrency(client: IFlashQClient, queue: string, limit: number): Promise; /** * Clear concurrency limit for a queue. * * @param client - FlashQ client instance * @param queue - Queue name * * @example * ```typescript * await client.clearConcurrency('heavy-tasks'); * ``` */ export declare function clearConcurrency(client: IFlashQClient, queue: string): Promise; /** * List all queues. * * @param client - FlashQ client instance * @returns Array of queue info * * @example * ```typescript * const queues = await client.listQueues(); * for (const q of queues) { * console.log(`${q.name}: ${q.size} jobs`); * } * ``` */ export declare function listQueues(client: IFlashQClient): Promise; //# sourceMappingURL=queue.d.ts.map