import type { PlanningChange } from './preparePlanningChanges';
/**
 * Validates the entire batch before writing, stages outside the queue, then atomically replaces each file.
 * The synchronous commit region cannot be interrupted by a SIGINT callback halfway through a save.
 * @private internal execution boundary of `coder plan`
 */
export declare function savePlanningChanges(projectPath: string, workspacePath: string, changes: ReadonlyArray<PlanningChange>, isDraft: boolean): string[];
