@backgroundjs/core
Version:
An extendible background job queue for js/ts applications
15 lines (13 loc) • 587 B
text/typescript
import { Job, JobStatus } from "../types";
export { InMemoryJobStorage } from "./memory-storage";
export { PostgreSQLJobStorage } from "./postgresql-storage";
export { MongoDBJobStorage } from "./mongodb-storage";
export interface JobStorage {
saveJob(job: Job): Promise<void>;
getJob(id: string): Promise<Job | null>;
getJobsByStatus(status: JobStatus): Promise<Job[]>;
updateJob(job: Job): Promise<void>;
acquireNextJob(): Promise<Job | null>;
completeJob(jobId: string, result: any): Promise<void>;
failJob(jobId: string, error: string): Promise<void>;
}