import type { LoadedConfig } from "./config.js";
import type { TaskPacket } from "./planner.js";
import type { TemplateContext } from "./router.js";
import { type WriteResult } from "../utils/fs.js";
export interface WriteExecutionOptions {
    dryRun?: boolean;
    diffSummary?: boolean;
    backup?: boolean;
    backupLabel?: string;
}
export declare function initOrSyncTarget(repoRoot: string, targetRoot: string, config: LoadedConfig, context: TemplateContext, options?: WriteExecutionOptions): Promise<WriteResult[]>;
export declare function writeTaskPackets(targetRoot: string, packets: TaskPacket[]): Promise<WriteResult[]>;
export declare function summarizeWrites(results: WriteResult[], targetRoot: string, options?: Pick<WriteExecutionOptions, "diffSummary" | "dryRun">): string;
//# sourceMappingURL=executor.d.ts.map