/**
* timer with progress report and finish-time estimation
* */
///
export type StartTimerOptions = string | {
name: string;
writeStream?: NodeJS.WriteStream;
sampleOver?: number;
estimateTime?: boolean;
};
export type SetProgressOptions = {
totalTick: number;
initialTick?: number;
sampleOver?: number;
estimateTime?: boolean;
};
export type SetProgress = ((totalTick: number, initialTick?: number, sampleOver?: number) => void) & ((options: SetProgressOptions) => void);
export type Timer = ReturnType;
export declare function startTimer(options: StartTimerOptions): {
end: () => void;
next(newName: string): void;
progress: (msg: string) => void;
setProgress: SetProgress;
setEstimateProgress: (totalTick: number, sampleRate?: number) => void;
tick: (step?: number) => void;
};
export declare function defaultTimerWriteStream(): NodeJS.WriteStream;