import type { CliContext } from '../context.js'; /** * A one-line summary of which account you are on, for Claude's own status line. * * This is the only place ccx can tell you something during a session without * getting in the way: Claude owns the screen while it runs, so anything ccx * prints is either overwritten or steps on the interface. The status line is * Claude's own space and it redraws it for us. * * Deliberately cheap: it reads the account pointer and the cached usage figures * and never touches the network, because Claude re-runs this frequently. */ export interface StatuslineOptions { /** Print the settings snippet that wires this into Claude instead of a line. */ install?: boolean; /** * Run an existing status line command and append ccx's part to it, so adding * ccx does not cost you the status line you already had. */ wrap?: string; /** Leave out the account name (useful when your line already shows it). */ compact?: boolean; } /** * The ccx part of the status line, e.g. `Fable 87% left`. * * Written to answer one question at a glance: how much working room is left * before something stops me. So it reports what REMAINS rather than what has * been spent (a bare "13%" reads as reassuring when it means nearly empty), on * the window that will run out first, and it only mentions the reset time once * that is the thing you would act on. */ export declare function statuslineSegment(context: CliContext, options?: StatuslineOptions): string; /** Print the status line (or the snippet that installs it). */ export declare function statuslineCommand(context: CliContext, options?: StatuslineOptions): Promise;