/// <reference types="node" />
export default class TaskRunner {
    id: NodeJS.Timeout;
    fn: Function;
    callbacks: (() => any)[];
    isRunning: boolean;
    constructor(fn?: Function);
    delay(delay: number, fn?: Function, callback?: () => any): Promise<unknown>;
    run(interval: number, fn?: Function, callback?: () => any): Promise<unknown>;
    start(once: boolean, interval: number, fn?: Function, callback?: () => any): Promise<unknown>;
    cancel(): this;
}
