import { spawnSync as nodeSpawnSync } from "node:child_process"; import type { ActionFs, PlanFormat, PlanReadiness, SavedForLaterMetadata } from "./types.js"; export declare function setPlanReadiness(absolutePath: string, readiness: PlanReadiness, fs: Pick): Promise; /** * Guessing an editor is how this hangs: `vi` inherits stdio and waits for keystrokes * that never arrive when nobody configured an editor. Demand an explicit one, like * `utils config edit` and `memory edit` already do. */ export declare function resolveEditor(env?: Record): string; export declare function editFile(absolutePath: string, options?: { env?: Record; spawnSync?: typeof nodeSpawnSync; }): void; export declare function editPlan(absolutePath: string, options: { env?: Record; spawnSync?: typeof nodeSpawnSync; fs: Pick; }): Promise<{ changed: boolean; }>; declare function archiveSelectedPlan(entry: Pick<{ absolutePath: string; }, "absolutePath">, fs: ActionFs): Promise; export declare function unarchivePlan(entry: Pick<{ absolutePath: string; }, "absolutePath">, fs: ActionFs): Promise; export declare function savePlanForLater(entry: Pick<{ absolutePath: string; format: PlanFormat; savedForLater?: SavedForLaterMetadata; }, "absolutePath" | "format" | "savedForLater">, fs: ActionFs, options?: { reason?: string; }): Promise; export declare function restorePlanFromLater(entry: Pick<{ absolutePath: string; }, "absolutePath">, fs: ActionFs): Promise; export { archiveSelectedPlan as archivePlan }; export declare function deletePlan(entry: Pick<{ absolutePath: string; }, "absolutePath">, fs: Pick): Promise;