import * as dntShim from "../../../../../_dnt.shims.js"; import { type prettyTimeOptions } from "./time.js"; interface constructorOptions { title?: string; width?: number; complete?: string; incomplete?: string; clear?: boolean; interval?: number; display?: string; prettyTime?: boolean; output?: typeof dntShim.Deno.stdout | typeof dntShim.Deno.stderr; } interface renderOptions { completed: number; text?: string; total?: number; complete?: string; incomplete?: string; prettyTimeOptions?: prettyTimeOptions; } /** * MultiProgressBar multiple progress bars. */ export declare class MultiProgressBar { #private; width: number; complete: string; incomplete: string; clear: boolean; interval: number; display: string; prettyTime: boolean; private lastStr; private start; private lastRenderTime; private encoder; private writer; /** * Title, total, complete, incomplete, can also be set or changed in the render method * * - title Progress bar title, default: '' * - width the displayed width of the progress, default: 50 * - complete completion character, default: colors.bgGreen(' '), can use any string * - incomplete incomplete character, default: colors.bgWhite(' '), can use any string * - clear clear the bar on completion, default: false * - interval minimum time between updates in milliseconds, default: 16 * - display What is displayed and display order, default: ':bar :text :percent :time :completed/:total' * - prettyTime Whether to pretty print time and eta * - output Output stream, can be Deno.stdout or Deno.stderr, default is Deno.stdout */ constructor({ title, width, complete, incomplete, clear, interval, display, prettyTime, output, }?: constructorOptions); /** * "render" the progress bar * * - `bars` progress bars * - `completed` completed value * - `total` optional, total number of ticks to complete, default: 100 * - `text` optional, text displayed per ProgressBar, default: '' * - `complete` - optional, completion character * - `incomplete` - optional, incomplete character * - `prettyTimeOptions` - prettyTime options */ render(bars: Array): Promise; /** * end: end a progress bar. * No need to call in most cases, unless you want to end before 100% */ end(): Promise; /** * interrupt the progress bar and write a message above it * * @param message The message to write */ console(message: string | number): Promise; private write; private resetScreen; private get ttyColumns(); private breakLine; private stdoutWrite; private showCursor; } export {}; //# sourceMappingURL=multi.d.ts.map