toad-scheduler
Version:
In-memory Node.js and browser job scheduler
27 lines (26 loc) • 1 kB
TypeScript
import { SimpleIntervalJob } from './engines/simple-interval/SimpleIntervalJob';
import { Job, JobStatus } from './common/Job';
import { LongIntervalJob } from './engines/simple-interval/LongIntervalJob';
import { CronJob } from './engines/cron/CronJob';
export type ToadSchedulerOptions = {
unref?: boolean;
};
export declare class ToadScheduler {
private readonly engines;
private readonly jobRegistry;
private readonly options;
constructor(options?: ToadSchedulerOptions);
addIntervalJob(job: SimpleIntervalJob | LongIntervalJob): void;
addLongIntervalJob(job: LongIntervalJob): void;
addSimpleIntervalJob(job: SimpleIntervalJob): void;
private registerJob;
addCronJob(job: CronJob): void;
stop(): void;
getById(id: string): Job;
existsById(id: string): boolean;
removeById(id: string): Job | undefined;
stopById(id: string): void;
startById(id: string): void;
getAllJobs(): Job[];
getAllJobsByStatus(status: JobStatus): Job[];
}