actionhero
Version:
The reusable, scalable, and quick node.js API server for stateless and stateful applications
37 lines (36 loc) • 1.14 kB
TypeScript
import { Plugin } from "node-resque";
import * as TaskModule from "./../modules/task";
import { Initializer } from "../index";
import { Task } from "../classes/task";
export interface TaskApi {
tasks: {
[key: string]: Task;
};
jobs: {
[key: string]: any;
};
middleware: {
[key: string]: TaskModule.task.TaskMiddleware;
};
globalMiddleware: Array<string>;
loadFile: TasksInitializer["loadFile"];
jobWrapper: TasksInitializer["jobWrapper"];
loadTasks: TasksInitializer["loadTasks"];
}
/**
* Tools for enqueuing and inspecting the task system (delayed jobs).
*/
export declare class TasksInitializer extends Initializer {
constructor();
loadFile: (fullFilePath: string, reload?: boolean) => Promise<void>;
jobWrapper: (taskName: string) => {
plugins: (string | (new (args: ConstructorParameters<typeof Plugin>) => Plugin))[];
pluginOptions: {
[key: string]: any;
};
perform: () => Promise<any>;
};
loadTasks: (reload: boolean) => Promise<void>;
initialize(): Promise<void>;
start(): Promise<void>;
}