import type { Client } from "@libsql/client"; import { type GhExecutor } from "../../util/gh-discover.js"; export type VaultCloneFn = (args: { handle: string; repo: string; targetPath: string; }) => Promise; export interface RecoverPodArgs { handle: string; registryDb: Client; podDir?: string | undefined; cloneFn?: VaultCloneFn | undefined; ghExecutor?: GhExecutor | undefined; } export type RecoverDropClassification = "owner-misresolved" | "repo-moved-or-deleted"; export interface RecoverDrop { vaultName: string; repo: string; owner: string; classification: RecoverDropClassification; reason: string; } export interface RecoverPodResult { meshesRecovered: number; vaultsRecovered: { vaultName: string; repo: string; path: string; }[]; skipped: { vaultName: string; reason: string; }[]; warnings: string[]; drops: RecoverDrop[]; refused?: boolean; refusedKind?: "syntax-validation" | "semantic-validation" | "ownership-authentication"; refusedReason?: string; } export declare function reconstructionExitCode(result: { drops: readonly RecoverDrop[]; refused?: boolean; }): number; export declare function recoverVaultsFromPodManifest(args: RecoverPodArgs): Promise; //# sourceMappingURL=recover-pod.d.ts.map