export declare class Watch { private m_interval; private m_maxDuration; private m_running_id; private m_timeout_id; private m_run_loop; private m_run_starttime; get interval(): number; set interval(val: number); get maxDuration(): number; set maxDuration(val: number); constructor(interval?: number, maxDuration?: number); start(run: (m: Watch) => Promise | R): Promise; stop(): void; get running(): boolean; } export declare const Monitor: typeof Watch;