adonis5-queue
Version:
Adonis JS 5 queue package based backed by Kue and Kue-scheduler
43 lines (42 loc) • 1.17 kB
TypeScript
/// <reference path="../../typings/QueueConfig.d.ts" />
import { Job } from 'kue-unique';
import JobMaker from './JobMaker';
import { QueueConfig, JobMakerInterface } from '@ioc:Adonis5/Queue';
/**
* Main queue driver
*
* @version 2.0.0
* @adonis-version 4.0+
*/
export default class Queue implements Queue {
private queue;
private config;
private appRootPath;
/**
* Construct the queue
* @param {Adonis/App} app Adonis app/Ioc instance
*/
constructor(config: QueueConfig, appRootPath: string);
/**
* Register job event handlers
* @return {Promise}
*/
processing(): Promise<import("@ioc:Adonis5/Queue").ProcessingResultInteface>;
/**
* Dispatch a new job
* @param {App/Jobs} job Job instances
* @return {Void}
*/
dispatch(job: Job, when?: string): JobMaker;
/**
* Remove a job from queue
* @param {App/Job} job Job producer
* @return {Promise<Response>}
*/
remove(job: JobMakerInterface): Promise<unknown>;
/**
* Clear all jobs within a queue for a clean start
* @return {Promise<Response>}
*/
clear(): Promise<unknown>;
}