timerjobs
Version:
TimerJobs is a simple way to create recurring tasks that can react to events.
92 lines (91 loc) • 3.15 kB
TypeScript
/// <reference types="node" />
import { ITimerJobs, ITimerJobsOptions, TimerCallback } from './interfaces';
import { EmitLevels } from './emit-level';
import { Options } from './options';
export * from './emit-level';
export * from './interfaces';
declare type TimerPredicate = (timer: TimerJobs, index: number, timers: TimerJobs[]) => boolean;
export declare class TimerJobs implements ITimerJobs {
busy: boolean;
callback: Function;
errors: Error[];
executions: number;
hasStarted: boolean;
timer: NodeJS.Timeout;
options: Options;
private _emitter;
private _countdown;
private startWait;
static timers: TimerJobs[];
constructor(options?: ITimerJobsOptions);
constructor(callback?: TimerCallback, options?: ITimerJobsOptions);
static set emitter(value: any);
static get emitter(): any;
start(): TimerJobs;
private emit;
get isStopped(): boolean;
get isStarted(): boolean;
stop(): TimerJobs;
restart(interval?: number): TimerJobs;
get waitTime(): number;
get countdown(): number;
set countdown(value: number);
set emitLevel(value: EmitLevels);
get emitLevel(): EmitLevels;
set infinite(value: boolean);
get infinite(): boolean;
set interval(value: number);
get interval(): number;
get emitter(): import("eventemitter2").EventEmitter2;
static findTimers(predicate: TimerPredicate): TimerJobs[];
static removeTimers(predicate: TimerPredicate): TimerJobs[];
static removeTimer(timer: TimerJobs): void;
dispose(): void;
private go;
private done;
private _not;
private _event;
private _interval;
after(interval: number, resetInterval?: boolean): TimerJobs;
and(interval: number): TimerJobs;
every(interval: number, resetInterval?: boolean): TimerJobs;
level(level: EmitLevels): TimerJobs;
times(countdown: number): TimerJobs;
namespace(namespace: string): TimerJobs;
namespacing(namespace: string): TimerJobs;
reference(reference: string): TimerJobs;
referencing(reference: string): TimerJobs;
forever(countdown?: number): TimerJobs;
using(emitter: any): TimerJobs;
do(callback: TimerCallback): TimerJobs;
execute(callback: TimerCallback): TimerJobs;
on(event: string, callback?: Function): TimerJobs;
get blocking(): TimerJobs;
get blocks(): TimerJobs;
get immediate(): TimerJobs;
get immediately(): TimerJobs;
get not(): TimerJobs;
get ignore(): TimerJobs;
get ignoring(): TimerJobs;
get automatically(): TimerJobs;
get automatic(): TimerJobs;
get once(): TimerJobs;
get twice(): TimerJobs;
get thrice(): TimerJobs;
get repeat(): TimerJobs;
get repeating(): TimerJobs;
get week(): TimerJobs;
get weeks(): TimerJobs;
get day(): TimerJobs;
get days(): TimerJobs;
get hour(): TimerJobs;
get hours(): TimerJobs;
get minute(): TimerJobs;
get minutes(): TimerJobs;
get second(): TimerJobs;
get seconds(): TimerJobs;
get milliseconds(): TimerJobs;
get starting(): TimerJobs;
get stopping(): TimerJobs;
get restarting(): TimerJobs;
}