/** * Visual / palette / SGR rendering block extracted from * renderer stays under the 800-line cap. Behaviour-preserving verbatim move; * `export` keywords were added to the symbols the renderer still imports. */ export type StatusLineCapability = 'ansi-unicode' | 'unicode' | 'ascii'; export declare function isAttentionGate(gate: string | undefined): string | null; /** * Glyph palette per capability. Status glyphs (active / idle / warning), * separators (· / › / ▸ / ASCII variants), and the diagnostic marker * (`presence unreadable`). Unicode glyphs use widely-supported characters; * ASCII keeps byte-identical shape across encodings. * * Compact glyphs are the unicode quadrant marks ◐◑◒◓, the check ✓, and the * ballot ✕. ASCII uses bracket/plus/star/x. Bar characters are █/░ in * unicode and #/- in ASCII. Ratios are joined with `·` (` . ` for ASCII) * and the before→after arrow is `→` (-> for ASCII). */ export interface StatusPalette { readonly active: string; readonly idleStale: string; readonly idle: string; readonly warning: string; readonly inlineSeparator: string; readonly trailSeparator: string; readonly idleLabel: string; readonly invalidMessage: string; readonly compact: CompactPalette; readonly barFilled: string; readonly barEmpty: string; readonly ratioArrow: string; } interface CompactPalette { readonly queued: string; readonly preparing: string; readonly compacting: string; /** * compaction is running. Rendered WITHOUT a bar — see * `renderCompact` in skill-statusline-renderer.ts. */ readonly armed: string; readonly verifying: string; readonly completed: string; readonly failed: string; } export declare const HIGHLIGHT_SGR_OPEN = "\u001B[1;38;2;224;224;224m"; /** * Render the supplied text in the brand purple, honouring the * `noColor` flag. Returns plain text when NO_COLOR is set or the * tier is ASCII. Used by the active / stale / compact renders for * tokens that the {@link buildPalette} cannot pre-stamp (skill * name, mode, age, attention labels). */ export declare function brandRun(text: string, noColor: boolean, capability: StatusLineCapability): string; export declare function renderActiveDot(capability: StatusLineCapability, nowMs: number, noColor: boolean): string; export declare function brandText(capability: StatusLineCapability, noColor: boolean): string; /** * Default capability when none is supplied. Per the brief: "if backward * compatibility requires a renderer default, use unicode, never * unconditional ANSI." The CLI's `peaks statusline` invocation currently * passes no options; preserving the legacy no-ANSI behaviour means the * default is the unicode palette (no escape codes). */ export declare const DEFAULT_CAPABILITY: StatusLineCapability; export declare function paletteFor(capability: StatusLineCapability | undefined, noColor: boolean): StatusPalette; export {};