import type { Client } from "@libsql/client"; import { type CommitVerdict } from "../registry/assert-committed.js"; export type MoveVaultMode = "branch" | "solo" | "prompt"; export declare class BranchVsSoloPromptRequiredError extends Error { readonly errorCode = "branch-vs-solo-prompt-required"; readonly childEdgeCount: number; constructor(childEdgeCount: number); } export declare class MoveVaultNotFoundError extends Error { readonly errorCode = "move-vault-not-found"; readonly vaultName: string; constructor(vaultName: string); } export declare class MoveTargetMeshNotFoundError extends Error { readonly errorCode = "move-target-mesh-not-found"; readonly meshName: string; constructor(meshName: string); } export declare class MoveSameMeshError extends Error { readonly errorCode = "move-same-mesh"; constructor(meshName: string); } export declare class MoveMainVaultForbiddenError extends Error { readonly errorCode = "move-main-vault-forbidden"; constructor(vaultName: string); } export interface MoveVaultArgs { vaultName: string; toMeshName: string; mode?: MoveVaultMode | undefined; registryDb?: Client | undefined; nowIso?: string | undefined; } export interface DroppedEdgeSummary { homeMeshRidHex: string; refMeshRidHex: string; refVaultRidHex: string; } export interface ReRootedEdgeSummary { homeMeshRidHexBefore: string; homeMeshRidHexAfter: string; refMeshRidHex: string; refVaultRidHex: string; } export interface MoveVaultResult { vaultRidHex: string; vaultName: string; fromMeshName: string; fromMeshRidHex: string; toMeshName: string; toMeshRidHex: string; mode: "branch" | "solo"; childEdgesReRooted: ReRootedEdgeSummary[]; childEdgesDropped: DroppedEdgeSummary[]; sourceMeshYonPath: string; targetMeshYonPath: string; vaultYonPath: string; durationMs: number; fedVaultAuthored: boolean; committed: CommitVerdict; unverifiedNote: string | null; } export declare function moveVaultFlow(args: MoveVaultArgs): Promise; //# sourceMappingURL=move.d.ts.map