/** * How what passes between members reads, in one place. * * Three events carry a board: a member posted, a member was handed what it had * not seen, a member asked for something and was granted it or refused. Two * displays draw them - the console, and a herdr pane - and a run is compared * against another run by reading them, so the two have to say the same thing in * the same words. Written twice they drift, and the drift is only ever noticed * by whoever is trying to compare. * * The **quiet one is why this exists at all**: a member handed nothing is what * tells three members racing apart from three models thinking alike. */ import type { SubagentEvent } from "../events.ts"; /** Whose pane this is, when the line is drawn somewhere that already knows. */ export type TrafficOptions = { /** * The member this line is being shown to. * * Its own name is dropped when it matches: a pane headed `member#2` saying * `member#2` on every line spends width on what the header already said. The * board's own pane passes nothing, because there the author is the point. */ self?: string; }; /** * One line for a board event, or `undefined` for everything else. * * `undefined` rather than an empty string: a caller writes a line or does not, * and an empty one is a blank row in a pane nobody asked for. */ export declare function trafficLine(event: SubagentEvent, options?: TrafficOptions): string | undefined; //# sourceMappingURL=traffic.d.ts.map