import * as FileSystem from "effect/FileSystem"; import * as Path from "effect/Path"; import * as Effect from "effect/Effect"; import { type AppError } from "../app-error/index.js"; import type { Plan } from "./plan.js"; export interface ExecutionCandidate { readonly id: string; readonly plan: Plan; readonly materialPaths: ReadonlyArray; readonly materialFingerprint: string; /** Base the material fingerprint is relative to; freshness recomputes against it. */ readonly baseDir: string; } export declare const makeExecutionCandidate: (plan: Plan, paths: { readonly settingsPath: string; readonly lockPath: string; readonly baseDir: string; }) => Effect.Effect, AppError, FileSystem.FileSystem | Path.Path>; export declare const isExecutionCandidateFresh: (candidate: ExecutionCandidate) => Effect.Effect; //# sourceMappingURL=execution-candidate.d.ts.map