import { type Action, type PlanContext } from "../internals/plan.js"; import type { EccHookControlsSelection } from "./ecc-hook-controls.js"; import { type EccHookControlsReceipt } from "./ecc-hook-controls-receipt.js"; import { type GuardedRead } from "./hook-registrar-read.js"; export type EccHookEnvKey = "ECC_HOOK_PROFILE" | "ECC_DISABLED_HOOKS"; export interface EccHookEnvPatch { set: Readonly>>; remove: readonly EccHookEnvKey[]; } export interface EccHookControlsProjectionPlan { /** The one guarded settings snapshot validated by this lifecycle. */ destinationRead?: GuardedRead; envPatch?: EccHookEnvPatch; standaloneSettingsAction?: Action; receiptActions: Action[]; } export declare function desiredEccHookEnvironment(receipt: EccHookControlsReceipt): Readonly>>; export declare function eccHookSettingsAction(raw: string | undefined, patch: EccHookEnvPatch): Action; export declare function planEccHookControlsProjection(ctx: PlanContext, selection: EccHookControlsSelection | undefined): EccHookControlsProjectionPlan;