/** * Where things stand, printed when the console opens (aidlc-console/AC-4, * aidlc-console/AC-5, aidlc-console/AC-6, aidlc-console/AC-7). * * Reads only. Every reader here is one an existing command already uses, and each * failure reads as "nothing to say" rather than an error: a status line that throws * would stop the console opening. * * @module */ import { type AutopilotPaths } from '../autopilot/state.js'; import { type WatchReader } from '../autopilot/watch.js'; export interface StandingInput { projectRoot: string; /** Null outside a git repository, where autopilot cannot run. */ autopilot: AutopilotPaths | null; agent: string; now: number; } /** Each part of the summary, read independently so one failure hides only its own line. */ export interface StandingReaders { hasProject(root: string): boolean; run(p: AutopilotPaths): boolean; items(p: AutopilotPaths): string[][]; stalled(root: string): { name: string; phase: string; }[]; inbox(root: string): number; next(root: string): string | null; } export declare function realReaders(reader?: WatchReader, now?: () => number): StandingReaders; /** The opening summary (aidlc-console/AC-4, AC-6). */ export declare function standingLines(input: StandingInput, r: StandingReaders): string[]; /** Numeric compare of dotted versions; prerelease tags are ignored. */ export declare function newer(latest: string, current: string): boolean; /** * The published version, read the way `aidlc update` reads it but without blocking * the prompt (aidlc-console/AC-7). Null on any failure or after 10 s. */ export declare function latestVersion(pkg?: string): Promise; /** The line for a newer version, or null (aidlc-console/AC-7). */ export declare function updateLine(latest: string | null, current: string): string | null; //# sourceMappingURL=standing.d.ts.map