/** * FanOutProgress forwards each progress event to several sinks (stdout, * progress.md, Telegram). Progress is BEST-EFFORT visibility, never the work * itself: a failing sink (e.g. Telegram down) must not crash the pipeline, so * each sink's error is swallowed and the rest still receive the event. */ import type { ProgressEvent, ProgressPort } from "../ports/progress.ts"; export declare class FanOutProgress implements ProgressPort { private readonly sinks; constructor(sinks: ProgressPort[]); emit(event: ProgressEvent): Promise; }