import type { Client } from "@libsql/client"; import type { DestinationKind, DestinationTargetKind, VaultDestinationSource } from "./destination-policy.js"; export type VaultStatus = "active" | "disconnected" | "missing" | "tombstoned" | "access_lost"; export type VaultSource = "own" | "shared" | "subscribed"; export type ForeignVaultSource = "shared" | "subscribed"; export declare function normalizeVaultSource(raw: unknown): VaultSource; export interface VaultRow { rid: Uint8Array; ridHex: string; name: string; path: string; memscopeRid: Uint8Array | null; memscopeRidHex: string | null; parentVault: Uint8Array | null; parentVaultHex: string | null; homeMeshRid: Uint8Array | null; homeMeshRidHex: string | null; tierHint: string | null; status: VaultStatus; source: VaultSource; destinationKind: DestinationKind | null; destinationSource: VaultDestinationSource | null; destinationTarget: string | null; destinationTargetKind: DestinationTargetKind | null; destinationRepositoryName: string | null; gitUrl: string | null; createdAt: string | null; registeredAt: string; lastVerifiedAt: string | null; verifyFailCount: number; } export interface MeshEdgeRow { refMeshRid: Uint8Array; refMeshRidHex: string; refVaultRid: Uint8Array; refVaultRidHex: string; homeMeshRid: Uint8Array; homeMeshRidHex: string; homeVaultRid: Uint8Array; homeVaultRidHex: string; kind: "parent"; } export interface InsertVaultArgs { rid: Uint8Array; name: string; path: string; memscopeRid?: Uint8Array | null; parentVault?: Uint8Array | null; homeMeshRid?: Uint8Array | null; tierHint?: string | null; status?: VaultStatus; source?: VaultSource; gitUrl?: string | null; createdAt?: string | null; } export declare class VaultRidImpersonationError extends Error { readonly errorCode = "vault-rid-impersonation"; readonly ridHex: string; readonly existingName: string; readonly incomingName: string; constructor(ridHex: string, existingName: string, incomingName: string); } export declare class VaultRelocationNotAuthorizedError extends Error { readonly errorCode = "vault-relocation-not-authorized"; readonly ridHex: string; readonly vaultName: string; readonly registeredPath: string; readonly incomingPath: string; constructor(ridHex: string, vaultName: string, registeredPath: string, incomingPath: string); } export interface UpsertVaultOptions { trustedReconstruction?: boolean | undefined; } export interface InsertMeshEdgeArgs { refMeshRid: Uint8Array; refVaultRid: Uint8Array; homeMeshRid: Uint8Array; homeVaultRid: Uint8Array; kind?: "parent"; } export declare function insertVault(db: Client, args: InsertVaultArgs): Promise; export declare function upsertVault(db: Client, args: InsertVaultArgs, opts?: UpsertVaultOptions): Promise; export declare function setVaultSource(db: Client, rid: Uint8Array, source: VaultSource): Promise; export declare function markVaultSourcePreserving(db: Client, rid: Uint8Array, incoming: ForeignVaultSource): Promise; export declare function getVaultByName(db: Client, name: string): Promise; export declare function getVaultByExactName(db: Client, name: string): Promise; export declare function getVaultByRid(db: Client, rid: Uint8Array): Promise; export declare function getVaultByPath(db: Client, path: string): Promise; export declare function listVaults(db: Client): Promise; export declare function updateVaultStatus(db: Client, rid: Uint8Array, status: VaultStatus): Promise; export declare function updateVaultPath(db: Client, rid: Uint8Array, path: string): Promise; export declare function setVaultGitUrl(db: Client, rid: Uint8Array, gitUrl: string): Promise; export declare function markVaultMissing(db: Client, rid: Uint8Array): Promise; export declare function markVaultActive(db: Client, rid: Uint8Array): Promise; export declare function tombstoneVault(db: Client, rid: Uint8Array): Promise; export declare function setVaultHomeMesh(db: Client, vaultRid: Uint8Array, meshRid: Uint8Array | null): Promise; export declare function listActiveVaultsByHomeMesh(db: Client, meshRid: Uint8Array): Promise; export declare function updateLastVerified(db: Client, rid: Uint8Array): Promise; export declare function bumpVerifyFailCount(db: Client, rid: Uint8Array): Promise; export declare function deleteVault(db: Client, rid: Uint8Array): Promise; export declare function deleteAllVaults(db: Client): Promise; export declare function deleteAllMeshEdges(db: Client): Promise; export declare function insertMeshEdge(db: Client, edge: InsertMeshEdgeArgs): Promise; export declare function listMeshEdgesByRefVault(db: Client, refVaultRid: Uint8Array): Promise; export declare function listMeshEdgesByHomeVault(db: Client, homeVaultRid: Uint8Array): Promise; //# sourceMappingURL=repo.d.ts.map