import { parseRemoteRegistry, type RemoteRegistrySnapshot } from "../remotes.js"; export type RemoteEnrollmentJournal = { version: 1; kind: "enrollment"; phase: "prepared" | "credential-written" | "registry-committed"; transactionId: string; recordedAt: string; name: string; issuedTokenId: string; issuedToken: string; previousRegistry: RemoteRegistrySnapshot; previousToken?: string; nextRegistry: ReturnType; }; export type RemoteRemovalJournal = { version: 1; kind: "removal"; phase: "prepared" | "registry-removed" | "credential-deleted"; transactionId: string; recordedAt: string; name: string; tokenId: string; previousRegistry: RemoteRegistrySnapshot; previousToken?: string; nextRegistry: ReturnType; }; export type RemoteTransactionJournal = RemoteEnrollmentJournal | RemoteRemovalJournal; export declare class RemoteTransactionJournalRepository { path(): string; write(journal: RemoteTransactionJournal): void; read(): RemoteTransactionJournal | undefined; clear(): void; }