UNPKG

demeine

Version:

DDDD - Distributed Domain Driven Design

16 lines (15 loc) 521 B
/// <reference types="node" /> import EventEmitter from 'events'; import PQueue from 'p-queue'; declare type Task<TaskResultType> = (() => PromiseLike<TaskResultType>) | (() => TaskResultType); export interface QueueOptions { concurrency?: number; } export declare class Queue extends EventEmitter { _queue: PQueue; constructor(options?: QueueOptions); queueCommand<Result = unknown>(fn: Task<Result>): Promise<Result>; isProcessing(): boolean; empty(): Promise<void>; } export {};