import { GitvaultKeystore } from "./gitvault-keystore.js"; import type { GitvaultMirrorCredential, GitvaultMirrorDestination } from "./gitvault-mirror-config.js"; /** `byo/.json` — where THIS machine writes a BYO vault's payload objects, and which credential NAME resolves it at use time. */ export interface GitvaultByoConfig { version: 1; repo_id: string; destination: GitvaultMirrorDestination; /** Present only for an `s3` destination — a directory destination needs no credential. */ credential?: GitvaultMirrorCredential; created_at: string; updated_at: string; } export declare function byoConfigDir(keystore: GitvaultKeystore): string; export declare function byoConfigPath(keystore: GitvaultKeystore, repoId: string): string; /** Read the local BYO write-credential config for one vault, or `null` when none is configured on this machine. */ export declare function readByoConfig(keystore: GitvaultKeystore, repoId: string): GitvaultByoConfig | null; /** Every repo id with a local BYO write config on this machine. */ export declare function listByoConfiguredRepoIds(keystore: GitvaultKeystore): string[]; /** Set (create or replace) the local BYO write-credential config for one vault. */ export declare function saveByoConfig(keystore: GitvaultKeystore, input: { repo_id: string; destination: GitvaultMirrorDestination; credential?: GitvaultMirrorCredential; }, now?: () => Date): GitvaultByoConfig; /** Remove the local BYO write-credential config for one vault. Never touches the customer bucket's own bytes — this only stops THIS machine from writing/reading it as the vault's primary destination. */ export declare function removeByoConfig(keystore: GitvaultKeystore, repoId: string): { removed: boolean; }; //# sourceMappingURL=gitvault-byo-config.d.ts.map