import { type InitManifest } from "./init-manifest.js"; export type InitTarget = { readonly relativePath: string; readonly nextBytes: Buffer; }; export type InitTransactionOptions = { readonly dryRun?: boolean; readonly includeManifest?: boolean; readonly onBeforeCommit?: () => void; readonly onAfterCommitFile?: (relativePath: string) => void; readonly writeBackups?: boolean; }; export type InitTransactionResult = { readonly decision: "apply" | "no-op" | "dry-run"; readonly changed: readonly string[]; readonly backups: readonly string[]; }; export declare function commitInitPlan(projectDir: string, targets: readonly InitTarget[], manifest: InitManifest, sourceManifest: InitManifest | null, options?: InitTransactionOptions): InitTransactionResult;