import type { BlockingClass, OperationOutcome, OperationPhase, OperationPresentation, ProgressAttempt, ProgressUnit, SettledOutcome, UnitDisposition, UnitState, UnitStateCounts } from "@agentxm/workspace/transitions/planning"; import type { ArtifactChange, ConfiguredAgentOutcome } from "@agentxm/workspace/desired-state"; import type { Change, Tone } from "./doc.js"; export declare const count: (value: number, singular: string, plural?: string) => string; export declare const bytes: (value: number) => string; export declare const duration: (elapsedMs: number) => string; /** * How long is left before a handoff expires, as an open wait says it. A wait * that has run out says so rather than counting past zero. */ export declare const remainingTime: (remainingMs: number) => string; /** The word one of an open wait's keys carries. */ export declare const waitKeyWord: (action: "open" | "copy" | "stop") => string; export declare const unitState: (state: UnitState) => string; /** The process exit code a problem ends with, as its aside states it. */ export declare const exitPhrase: (code: number) => string; /** * What a result row says about a unit the operation stopped before: it was * never attempted, which is not the same as being blocked by a condition of * its own. */ export declare const NOT_TRIED = "not tried"; /** Why a row rolled back when the unit was still running as the operation stopped. */ export declare const INTERRUPTED_IN_FLIGHT = "interrupted in flight"; export declare const unitStateChange: (state: UnitState) => Change; /** * What a live ledger row says about a unit that has not settled. A running * unit usually names the work in flight instead; this is what a row says when * nothing more specific is known. */ export declare const liveUnitActivity: (value: "waiting" | "running" | "paused") => string; /** How far a running unit has come, in the unit its producer measured. */ export declare const progressMeasure: (measure: { readonly done: number; readonly total?: number; readonly unit: ProgressUnit; }) => string; /** * That a running unit is on a later attempt, and how many its producer may * make. Both numbers count attempts (including the first); a first attempt is * not a retry and says nothing. */ export declare const retryAttempt: (attempt: ProgressAttempt) => string | undefined; export declare const disposition: (value: UnitDisposition) => string; export declare const blockingClass: (value: BlockingClass) => string; /** What the terminal is parked on while it waits on the system rather than a person. */ export declare const systemWaitStatus: (value: BlockingClass) => string; /** * What stopping a system wait costs, where that is known. Contention for the * workspace is decided before anything is written, so leaving it changes * nothing. */ export declare const systemWaitHint: (value: BlockingClass) => string | undefined; export declare const interruptionPhrase: (signal: "SIGINT" | "SIGTERM", disposition: "none" | UnitDisposition) => string; export type PublishParticipation = "publish" | "verified-existing"; /** * What a publish plan ledger says an extension will do: be uploaded, or be * skipped because the registry already holds that exact version. */ export declare const publishParticipation: (value: PublishParticipation) => string; /** Why a publish row skips an extension the registry already holds. */ export declare const ALREADY_PUBLISHED = "already published"; /** What a publish result row says became of an extension. */ export declare const publishOutcome: (value: "published" | "failed" | "unconfirmed" | "blocked" | "skipped") => string; export type PublishPhase = "selection" | "authoritative_preflight" | "authorization" | "dependency_execution" | "upload_execution"; export declare const publishPhase: (value: PublishPhase) => string; export type PublishVisibilitySource = "manifest" | "workspace" | "explicit" | "account" | "platform" | "existing"; /** * Where an extension's visibility came from: set by an input for a new * extension, or kept from the publication the registry already holds. */ export declare const publishVisibilityOrigin: (disposition: "establish" | "preserve", source: PublishVisibilitySource) => string; /** How an extension's source relates to the Git HEAD the archive was compared with. */ export declare const publishSourceState: (status: "matches-head" | "differs-from-head" | "no-head", revision: string | undefined) => string; /** The archive paths that keep a working tree from matching Git HEAD. */ export declare const publishSourceDifferences: (differenceCount: number) => string; export type PublishDisposition = "included" | "excluded" | "unmanaged" | "not-authored" | "not-publishable" | "unmatched"; export declare const publishDisposition: (value: PublishDisposition) => string; export type PublishReason = "selected" | "excluded" | "unmanaged" | "unmatched_selector" | "version_already_published" | "not_authored" | "not_publishable" | "invalid_workspace_source" | "authorization_failed" | "authoritative_preflight_failed" | "dependency_unavailable" | "candidate_invalid" | "stale_material" | "publish_precondition_changed" | "deleting" | "held" | "archived" | "upload_failed" | "integrity_conflict" | "settlement_unresolved" | "authorization_expired" | "blocked_by_dependency" | "interrupted" | "version_exists" | "integrity_drift" | "verify_failed" | "blocked_by_preflight" | "source_state_not_accepted"; export declare const publishReason: (value: PublishReason) => string; /** The mark a ledger row carries for an artifact that changed as planned. */ export declare const artifactChangeMark: (value: ArtifactChange) => Change; /** * What a plan ledger says will happen to one unit. The words are the * workspace's own — an extension is installed, updated, or removed — not the * invoking verb's: the title line already names the command, and one * operation such as `sync` plans all three at once. */ export declare const plannedArtifactChange: (value: ArtifactChange) => string; export declare const artifactChange: (value: ArtifactChange) => string; export declare const agentOutcome: (value: ConfiguredAgentOutcome["outcome"]) => string; /** * The title line every plan-family command opens with: what it is doing, in * the operation's own verb. The ledger beneath it carries the units and the * verdict beneath that states the outcome. */ export declare const operationTitle: (presentation: OperationPresentation, mode: "preview" | "apply") => string; /** The subject noun alone, pluralized for a count that is stated separately. */ export declare const subjectNoun: (presentation: OperationPresentation, value: number) => string; /** The header a ledger's name column carries for an operation's subject. */ export declare const subjectHeader: (presentation: OperationPresentation) => string; /** Where an operation acts, for the aside on its title line. */ export declare const scopePhrase: (scope: "project" | "user") => string; /** * What a plan ledger's verdict states: the change it would make. Units that * are already current are not part of the claim; they are part of its aside. */ export declare const planVerdict: (presentation: OperationPresentation, mode: "preview" | "apply", changing: number) => string; export declare const outcomeHeadline: (presentation: OperationPresentation, outcome: OperationOutcome, counts: UnitStateCounts) => string; export declare const phaseLabel: (phase: OperationPhase) => string; export declare const settledOutcomeTone: (outcome: SettledOutcome) => Tone; //# sourceMappingURL=phrases.d.ts.map