import { IWorkerData } from './IWorkerData'; import { QueueConcurrency } from './QueueConcurrency'; import { AbstractWorkerStore } from './AbstractWorkerStore'; export declare enum STRATEGIES { DIRECT = "direct", QUEUE = "queue", THREAD = "thread" } export declare class Launcher { protected options: { workerProcessorPathFile: string; workerStore?: AbstractWorkerStore; threadStrategy?: string; queueConcurrency?: QueueConcurrency; pollingTimeInMilliSec?: number; disablePolling?: boolean; name?: string; }; private readonly queueLauncher; private readonly directWorker; constructor(options: { workerProcessorPathFile: string; workerStore?: AbstractWorkerStore; threadStrategy?: string; queueConcurrency?: QueueConcurrency; pollingTimeInMilliSec?: number; disablePolling?: boolean; name?: string; }); push(workerData: IWorkerData, options?: { instance?: string; }): Promise; getQueueWaitingSize(): Promise; getQueueRunningSize(): Promise; getQueueSize(): Promise; getStats(): Promise<{ queueName: string; storeWaitingSize: number; storeRunningSize: number; queueRunningSize: number; }[]>; stop(): Promise; resume(): Promise; hasBlockingError(): boolean; isRunning(): Promise; setQueueConcurrency(queueConcurrency: QueueConcurrency): void; setWorkerStore(store: AbstractWorkerStore): void; }