export declare const _migrationIo: { execSync: (...args: any[]) => any; execFileSync: (...args: any[]) => any; repoDir: () => string | null; loadConfig: () => Promise; loadNetworkConfig: () => Promise; swapSlot: (slot: "a" | "b") => Promise; }; /** * One-time migration from old single-directory layout to blue-green slots. * Called before `dkg start` if `~/.dkg/releases/current` doesn't exist. */ export declare function migrateToBlueGreen(log?: (msg: string) => void, opts?: { allowRemoteBootstrap?: boolean; repairLiveNodeUi?: boolean; }): Promise; /** * Edge first-start migration (OT-RFC-41 §4.1, Bundle B1a). * * Under rc.12+, Edge nodes do not use blue-green slots — they run the * daemon directly from the npm-global install. Pre-rc.12 Edge users * who got slots from `install.sh` or an earlier `dkg update` will * still have `~/.dkg/releases/{a,b,current}` on disk; this helper: * * - Detects the legacy layout (`releases/current` resolves to a slot * that contains an `@origintrail-official/dkg` package.json). * - Reads the active slot's package.json version and writes it to * `~/.dkg/previous-version` so a follow-up `dkg rollback` (Edge * branch, Bundle B1b) has a target to reinstall. * - Surfaces an operator advisory pointing at `dkg doctor` and the * RFC's safe-cleanup steps. * * Deliberately **does not** delete `~/.dkg/releases/`. Per the RFC's * "no auto-delete" invariant, the operator owns slot cleanup — the * doctor's `install-layout` check (Bundle A2) flags the directory as * cleanable legacy state, and `MIGRATE_TO_NPM.md` documents the * `rm -rf ~/.dkg/releases/` step. * * Idempotent: re-invocations with `~/.dkg/previous-version` already * present do nothing (preserving whatever the most recent successful * `dkg update` recorded). */ export declare function noteEdgeLegacyReleases(log?: (msg: string) => void): Promise; //# sourceMappingURL=migration.d.ts.map