UNPKG

adonisjs-jobs

Version:

Job processing for AdonisJS

18 lines (17 loc) 872 B
import { Job as BullmqJob, JobsOptions } from 'bullmq'; import type { ApplicationService, LoggerService } from '@adonisjs/core/types'; type JobHandle<T> = T extends (payload: infer P) => any ? (undefined extends P ? any : P) : any; export declare abstract class Job { job: BullmqJob; logger: LoggerService; payload: JobHandle<this['handle']>; static app: ApplicationService; static dispatch<T extends Job>(this: new (...args: any[]) => T, payload: JobHandle<T['handle']>, options?: JobsOptions & { queueName?: string; }): Promise<void>; static dispatchSync<T extends Job>(this: new (...args: any[]) => T, payload: JobHandle<T['handle']>): Promise<void>; abstract handle(payload: any): Promise<any> | any; failed?(error: Error): Promise<void> | void; completed?(payload: any, result: any): Promise<void> | void; } export {};