@penkov/tasks_queue
Version:
A lightweight PostgreSQL-backed task queue system with scheduling, retries, backoff strategies, and priority handling. Designed for efficiency and observability in modern Node.js applications.
33 lines (32 loc) • 1.34 kB
TypeScript
import { DynamicModule, OnApplicationBootstrap, OnApplicationShutdown } from "@nestjs/common";
import { TasksQueueAsyncOptions } from "./tasks-queue-async-options.js";
import { ModuleRef } from "@nestjs/core";
export declare class TasksQueueModule implements OnApplicationBootstrap, OnApplicationShutdown {
private readonly moduleRef;
constructor(moduleRef: ModuleRef);
/**
* Create a dynamically configured queue module.
*
* The resulting module exports {@link TasksPoolsService} for scheduling and
* worker registration, and {@link ManageTasksQueueService} for operational
* management queries and mutations.
*
* @param options async configuration strategy
* @returns configured NestJS dynamic module
*/
static forRootAsync(options: TasksQueueAsyncOptions): DynamicModule;
private static createAsyncProviders;
private static createAsyncOptionsProvider;
/**
* Start queue processing after NestJS application bootstrap.
*
* @returns nothing; workers and optional auxiliary processing start in the background
*/
onApplicationBootstrap(): void;
/**
* Stop queue processing during NestJS application shutdown.
*
* @returns resolved promise once queue services stop gracefully
*/
onApplicationShutdown(): Promise<void>;
}