interface CommitmentBackend {
readonly name: string;
init(): Promise<void>;
logCommitment(commitment: AuditCommitment): Promise<string | null>;
verifyCommitment(commitmentHash: string): Promise<boolean>;
isConnected(): boolean;
}
interface ArchiveBackend {
readonly name: string;
init(): Promise<void>;
archive(message: SecureMessage, commitment: AuditCommitment): Promise<string | null>;
retrieve(archiveId: string): Promise<ArchivePayload | SecureMessage | null>;
isConnected(): boolean;
}