import type { DeepReadonly } from "../package-graph/build.js"; import { type CapabilityPackageLifecycleResult } from "./lifecycle.js"; export type CapabilityPackageOwnedFileExpectation = Readonly<{ absent: true; }> | Readonly<{ sha256: string; mode?: number; }>; export interface CapabilityPackageOwnedFileStep { readonly action: "assert" | "write" | "remove"; readonly path: string; readonly mode: number; readonly expect: CapabilityPackageOwnedFileExpectation; readonly contents?: Buffer; readonly prior?: Buffer; readonly priorMode?: number; } export interface CapabilityPackageOwnedFilesPlan { readonly lifecycle: DeepReadonly; readonly steps: readonly Readonly[]; } /** * Plan exact package-manager metadata state only. This does not commit state and makes no claim * that package members are installed, configured, adopted, or owned. */ export declare function planCapabilityPackageOwnedFiles(input: unknown): DeepReadonly;