UNPKG

@vorsteh-queue/core

Version:

Core queue engine for Vorsteh Queue with TypeScript support, job scheduling, and event system

30 lines (29 loc) 1.34 kB
import type { BaseJob, JobStatus, QueueStats } from "../../types"; import { BaseQueueAdapter } from "./base"; /** * In-memory queue adapter for testing and development. * Stores all job data in memory - data is lost when the process exits. * * @example * ```typescript * const adapter = new MemoryQueueAdapter() * const queue = new Queue(adapter, { name: "test-queue" }) * ``` */ export declare class MemoryQueueAdapter extends BaseQueueAdapter { private jobs; private connected; connect(): Promise<void>; disconnect(): Promise<void>; addJob<TJobPayload, TJobResult = unknown>(job: Omit<BaseJob<TJobPayload, TJobResult>, "id" | "createdAt">): Promise<BaseJob<TJobPayload, TJobResult>>; updateJobStatus(id: string, status: JobStatus, error?: unknown, result?: unknown): Promise<void>; incrementJobAttempts(id: string): Promise<void>; updateJobProgress(id: string, progress: number): Promise<void>; getQueueStats(): Promise<QueueStats>; clearJobs(status?: JobStatus): Promise<number>; cleanupJobs(status: JobStatus, keepCount: number): Promise<number>; size(): Promise<number>; transaction<TResult>(fn: () => Promise<TResult>): Promise<TResult>; protected getDelayedJobReady(now: Date): Promise<BaseJob | null>; protected getPendingJobByPriority(): Promise<BaseJob | null>; }