UNPKG

@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.

19 lines (18 loc) 742 B
import { ModuleMetadata, Type } from "@nestjs/common/interfaces"; import pg from "pg"; import { TasksPool } from "./tasks-pool.js"; export interface TasksQueueModuleOptions { db: pg.Pool; pools: TasksPool[]; runAuxiliaryWorker?: boolean; } export declare const TASKS_QUEUE_OPTIONS: unique symbol; export interface TasksQueueOptionsFactory { createTelegrafOptions(): Promise<TasksQueueModuleOptions> | TasksQueueModuleOptions; } export interface TasksQueueAsyncOptions extends Pick<ModuleMetadata, "imports"> { useExisting?: Type<TasksQueueOptionsFactory>; useClass?: Type<TasksQueueOptionsFactory>; useFactory?: (...args: any[]) => Promise<TasksQueueModuleOptions> | TasksQueueModuleOptions; inject?: any[]; }