/**
 * Move `source` onto `dest` across possibly-different volumes. `renameSync` is
 * atomic but throws EXDEV when `~/.agents` lives on a different filesystem than
 * `$HOME`; fall back to copy-then-remove so the restore still completes. The
 * source is removed only after the copy succeeds, so a mid-copy failure never
 * destroys the sole surviving copy.
 */
export declare function moveDirCrossDevice(source: string, dest: string): void;
/**
 * Copy `source` to `dest`, dropping any symlink whose target resolves back into
 * `~/.agents`. Managed resources (skills/commands) are synced into a version home
 * as symlinks into `~/.agents`; copying them verbatim would leave the result full
 * of links that dangle the moment `~/.agents` is disposed. Stripping them yields a
 * clean, self-contained copy — which is the entire point of an export.
 */
export declare function copyDirStrippingAgentsSymlinks(source: string, dest: string, agentsDir: string): void;
