/** * @deprecated */ export interface RunnerI { status: 'pending' | 'done' | 'reject' | 'init'; run(...args: any[]): Promise; init(): Promise; wait(timeout: number): Promise; /**wait runner to completed with timeout*/ } /** * @deprecated */ export declare class Runner implements RunnerI { runHook: () => Promise; initHook: () => Promise; status: 'pending' | 'done' | 'reject' | 'init'; constructor(runHook: () => Promise, initHook: () => Promise); run(...args: any[]): Promise; init(): Promise; wait(timeout: number): Promise; } /** * async run the runners with batch * @deprecated * @template T * @param {number} batch * @param {RunnerI[]} runners * @return {Promise} */ export declare const runBatch: (batch: number, runners: RunnerI[]) => Promise; /** * get num available runners within timeout ms * @deprecated * @template T * @param {RunnerI[]} runners * @param {number} num * @param {number} timeout */ export declare const getAvailableRunners: (runners: RunnerI[], num: number, timeout: number) => Promise[]>; export declare type RunnerFunc = () => Promise; /** * AsyncRunners for easy use */ export declare class AsyncRunner { batch: number; runners: RunnerFunc[]; private status; private calledReset; result: T[]; constructor(batch: number, runners: RunnerFunc[]); reset(): Promise; add(...runner: RunnerFunc[]): this; stop(): Promise; run(): Promise; }