import * as Effect from "effect/Effect"; import type { SuggestedAction } from "@agentxm/registry-protocol/unstable/suggested-action"; import { type OperationResolution, type Plan } from "@agentxm/workspace/transitions/planning"; import { Verbosity, type VerbosityLevel } from "./cli-flags/index.js"; import { Screen, type Doc, type LivePlan, type Tone } from "./screen/index.js"; export interface AgentCoverageSummary { readonly agents: ReadonlyArray; readonly scope: "project" | "user"; } export declare const resolutionAgentCoverage: (resolution: OperationResolution) => AgentCoverageSummary | undefined; export interface OperationDocOptions { readonly verbosity: VerbosityLevel; readonly message?: string; readonly suggestions?: ReadonlyArray; } export declare const operationDoc: (resolution: OperationResolution, options: OperationDocOptions) => Doc; /** * The verdict and, when the outcome has one, its reason. A verdict after a * ledger is a bold toned line whose rows already carry their marks. A blocked * operation is waiting on a person, so its verdict is a callout that keeps its * attention mark and carries the reason beneath it, and the recoveries that * follow answer it; a problem with no ledger above it takes the same shape. */ export declare const verdictDoc: (verdict: { readonly ledger: boolean; readonly tone: Tone; readonly verdict: string; readonly aside: ReadonlyArray; readonly reason?: string; readonly blocked?: true; }) => Doc; export declare const planDoc: (plan: Plan, options: { readonly mode: "preview" | "apply"; readonly verbosity: VerbosityLevel; }) => Doc; /** * The plan as the live ledger will carry it: the same title and the same rows * the plan showed, identified by the unit ids lifecycle events use, so the * region streams the rows it previewed instead of an unrelated tree. The * ledger's own two columns — what a unit is doing and how far it has come — * are added by the live ledger, which is the only thing that changes while an * operation runs. */ export declare const livePlan: (plan: Plan, options: { readonly verbosity: VerbosityLevel; }) => LivePlan | undefined; /** Paint the planning-time orientation through the application-owned screen. */ export declare const presentPlan: (plan: Plan, options?: { readonly mode?: "preview" | "apply"; }) => Effect.Effect; //# sourceMappingURL=operation-view.d.ts.map