UNPKG

dt-common-device

Version:

A secure and robust device management library for IoT applications

32 lines (31 loc) 1.11 kB
import { Job } from "bullmq"; export declare class QueueManager { /** * Get or create a BullMQ queue */ static getOrCreateQueue(queueKey: string, queues: Map<string, any>): Promise<any>; /** * Get or create a BullMQ worker */ static getOrCreateWorker(queueKey: string, workers: Map<string, any>, queues: Map<string, any>, processor: (job: Job) => Promise<any>): Promise<any>; /** * Check if queue is empty and cleanup worker if no jobs are pending */ static checkAndCleanupWorker(queueKey: string, workers: Map<string, any>, queues: Map<string, any>): Promise<void>; /** * Close all workers and queues */ static closeAllWorkersAndQueues(workers: Map<string, any>, queues: Map<string, any>): Promise<void>; /** * Generate queue name for a property */ static generateQueueName(propertyId: string): string; /** * Extract property ID from job ID */ static extractPropertyIdFromJobId(jobId: string): string; /** * Generate unique job ID */ static generateJobId(propertyId: string): string; }