/** * `clustly status` / `clustly test` — command glue (GUIDELINES §2): strict args → the * hosting/lifecycle domain. Both are non-prompting reads/actions, so there is no readline; * signed-out fails fast with the login pointer (no browser hop for a status check). */ import { type ReleaseFinding } from "../hosting/lifecycle"; import { emitJson } from "./failure"; export { emitJson }; export declare function statusCommand(usage: string): Promise; /** Findings grouped by rule, worst-severity first — 58 findings of 4 kinds should read as 4 * lines with counts, not a wall (design 2026-08-24 §5b). Pure + exported for the unit proof. */ export declare function groupFindings(findings: ReleaseFinding[]): Array<{ ruleId: string; severity: string; count: number; findings: ReleaseFinding[]; }>; /** `clustly logs [path] [--findings] [--json]` — the last release's builder-safe pipeline * story; `--findings` swaps the display-capped timeline for the COMPLETE grouped list. */ export declare function logsCommand(usage: string): Promise; export declare function testCommand(usage: string): Promise;