import { BulkJobOptions, ConnectionOptions as RedisConnectionOptions, Job, JobsOptions, Processor, Queue, QueueBaseOptions, QueueOptions, Worker, WorkerOptions } from 'bullmq'; import { IEventJobData, IJobData, JobTopicNameEnum } from '@novu/shared'; import { WorkflowInMemoryProviderService } from '../in-memory-provider'; type BullMqJobData = undefined | IJobData | IEventJobData; export { Job, JobsOptions, Processor, Queue, QueueBaseOptions, QueueOptions, RedisConnectionOptions as BullMqConnectionOptions, Worker, WorkerOptions, BulkJobOptions, }; export declare class BullMqService { private workflowInMemoryProviderService; private _queue; private _worker; static readonly pro: boolean; constructor(workflowInMemoryProviderService: WorkflowInMemoryProviderService); get worker(): Worker; get queue(): Queue; get queuePrefix(): string; get workerPrefix(): string; static haveProInstalled(): boolean; private runningWithProQueue; private generatePrefix; createQueue(topic: JobTopicNameEnum, queueOptions: QueueOptions): Queue; createWorker(topic: JobTopicNameEnum, processor?: string | Processor, workerOptions?: WorkerOptions): Worker; add(name: string, data: BullMqJobData, options?: JobsOptions, groupId?: string): void; addBulk(data: { name: string; data: BullMqJobData; options?: BulkJobOptions; groupId?: string; }[]): Promise; gracefulShutdown(): Promise; getStatus(): Promise<{ queueIsPaused: boolean | undefined; queueName: string | undefined; workerIsPaused: boolean | undefined; workerIsRunning: boolean | undefined; workerName: string | undefined; }>; isClientReady(): boolean; isQueuePaused(): Promise; isWorkerPaused(): Promise; isWorkerRunning(): Promise; pauseWorker(): Promise; resumeWorker(): Promise; } //# sourceMappingURL=bull-mq.service.d.ts.map