/// import { Writable } from 'stream'; import { Configuration } from './Configuration'; import { MessageName } from './MessageName'; import { Report } from './Report'; import { Locator } from './types'; export declare type StreamReportOptions = { configuration: Configuration; forgettableBufferSize?: number; forgettableNames?: Set; includeFooter?: boolean; includeInfos?: boolean; includeLogs?: boolean; includeWarnings?: boolean; json?: boolean; stdout: Writable; }; export declare class StreamReport extends Report { static start(opts: StreamReportOptions, cb: (report: StreamReport) => Promise): Promise; private configuration; private includeFooter; private includeInfos; private includeWarnings; private json; private stdout; private cacheHitCount; private cacheMissCount; private warningCount; private errorCount; private startTime; private indent; private progress; private progressTime; private progressFrame; private progressTimeout; private forgettableBufferSize; private forgettableNames; private forgettableLines; constructor({ configuration, stdout, json, includeFooter, includeLogs, includeInfos, includeWarnings, forgettableBufferSize, forgettableNames, }: StreamReportOptions); hasErrors(): boolean; exitCode(): 1 | 0; reportCacheHit(locator: Locator): void; reportCacheMiss(locator: Locator, message?: string): void; startTimerSync(what: string, cb: () => T): T; startTimerPromise(what: string, cb: () => Promise): Promise; startCacheReport(cb: () => Promise): Promise; reportSeparator(): void; reportInfo(name: MessageName | null, text: string): void; reportWarning(name: MessageName, text: string): void; reportError(name: MessageName, text: string): void; reportProgress(progressIt: AsyncIterable<{ progress: number; title?: string; }>): { stop: () => void; then(onfulfilled?: ((value: void) => TResult1 | PromiseLike) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike) | null | undefined): Promise; catch(onrejected?: ((reason: any) => TResult | PromiseLike) | null | undefined): Promise; [Symbol.toStringTag]: string; finally(onfinally?: (() => void) | null | undefined): Promise; }; reportJson(data: any): void; finalize(): Promise; private writeLine; private writeLineWithForgettableReset; private writeLines; private reportCacheChanges; private clearProgress; private writeProgress; private refreshProgress; private formatTiming; private formatName; private formatNameWithHyperlink; private formatIndent; }