import type { GitRepository, GitRunner } from "./types.js"; /** Moves snapshots that earlier versions kept inside the user's repository * (refs under `refs/omp-undo-redo/`, history files and owner leases under * `/omp-undo-redo/`) into `repository.storeDir`, then deletes the * user-side refs so `push --mirror`, `clone --mirror`, `bundle --all` and * `log --all` stop exposing them. Objects that only those refs reached are * packed into the store first; objects the user's own refs reach stay * borrowed, like every new snapshot's. Nothing leaves the user's repository * before the store holds it, and files move only once no legacy ref is left, * so an interrupted run is finished by the next and a failed one changes * nothing. Re-run on every backend start: an older version still running * against the same repository keeps writing the legacy layout. */ export declare function migrateLegacySnapshots(git: GitRunner, repository: GitRepository): Promise;