import * as Layer from "effect/Layer"; import { type InspectedInstallation, type SelectedRelease } from "@agentxm/cli-maintenance/self-update/application"; import * as Effect from "effect/Effect"; import { Screen } from "../screen/index.js"; import { Verbosity } from "../cli-flags/index.js"; /** CLI labels, progress timing, and command identities live for one composed invocation. */ export declare const makeCliUpgradeExecutionObserver: () => Effect.Effect<{ during: (stage: import("@agentxm/cli-maintenance/self-update/application").UpgradeExecutionStage, execution: Effect.Effect) => Effect.Effect; installation: (inspection: Effect.Effect) => Effect.Effect; release: (version: string | undefined, selection: Effect.Effect) => Effect.Effect; command: (command: Pick<{ readonly purpose: "verification" | "detection" | "preparation" | "delegation" | "rollback"; readonly executable: string; readonly args: readonly string[]; readonly executionState: "not-started" | "exited" | "timed-out"; readonly exitCode: number | null; readonly stdout: string; readonly stderr: string; readonly outputTruncated: boolean; }, "purpose" | "args" | "executable">, execution: Effect.Effect<{ readonly purpose: "verification" | "detection" | "preparation" | "delegation" | "rollback"; readonly executable: string; readonly args: readonly string[]; readonly executionState: "not-started" | "exited" | "timed-out"; readonly exitCode: number | null; readonly stdout: string; readonly stderr: string; readonly outputTruncated: boolean; }, E, R>) => Effect.Effect<{ readonly purpose: "verification" | "detection" | "preparation" | "delegation" | "rollback"; readonly executable: string; readonly args: readonly string[]; readonly executionState: "not-started" | "exited" | "timed-out"; readonly exitCode: number | null; readonly stdout: string; readonly stderr: string; readonly outputTruncated: boolean; }, E, R>; download: (binaryName: string, read: (report: (received: number, total: number | undefined) => Effect.Effect) => Effect.Effect) => Effect.Effect; }, never, Verbosity | Screen>; /** The CLI selects and owns the observer for one composed invocation. */ export declare const CliUpgradeObservationLive: Layer.Layer; //# sourceMappingURL=upgrade-observation.d.ts.map