UNPKG

@feng-j/console-progress

Version:
63 lines (62 loc) 1.65 kB
import { BaseLine, PayloadType, ProgressOption } from './baseLine'; export interface MultiLineOption extends ProgressOption { log?: boolean; hideCursor?: boolean; } interface MultiLineItem extends BaseLine { originUpdate(finishedTask: number, data?: PayloadType): void; originIncrement(step: number, data?: PayloadType): void; } export declare class MultiLine { private readonly lineOption; private lines; private cursor; constructor(option?: MultiLineOption); private write; /** * 检查索引是否越界 * @param index * @private */ private checkIndex; /** * 更新进度条 * @param index 索引 * @param finishedTask 已完成任务数量 * @param data 自定义渲染数据 */ update(index: number, finishedTask: number, data?: PayloadType): void; /** * 增加进度条 * @param index 索引 * @param step 步进数量 * @param data 自定义渲染数据 */ increment(index: number, step?: number, data?: PayloadType): void; /** * 创建进度条 * @param allTaskCount 全部任务数量 * @param current 已完成任务数量 * @param option 进度条配置 * @param data 自定义渲染数据 */ create(allTaskCount: number, current?: number, option?: ProgressOption, data?: PayloadType): BaseLine; /** * 输出进度条 * @private */ private log; /** * 渲染进度条 */ render(): string; /** * 获取进度条list */ getLines(): MultiLineItem[]; /** * 停止进度条 */ stop(): void; } export {};