import type { Labelers } from "./labeler"; export type Func = () => T; export interface StepConfig { wait: T; ok: T; fail: T; } export type PartialStepConfig = Partial>; export interface ExecStepConfiguration { suppressErrorReporting: boolean; asciiPrefixes: boolean; prefixes: PartialStepConfig; colors: PartialStepConfig; throwErrors: boolean; dumpErrorStacks: boolean; /** * deprecated - rather use the labeller property */ ciMode: boolean; labeler?: Labelers; indent: number; timestamps?: boolean; } export interface IExecStepContext { readonly config: ExecStepConfiguration; readonly lastLineLength: number; iconPadding: number; indent: number; exec(label: string, fn: () => T): T; mute(): void; unmute(): void; suppressErrors(): void; enableErrors(): void; suppressErrorReporting(): void; enableErrorReporting(): void; }