Skip to main content

dent8_core/
lib.rs

1//! Core domain model for dent8.
2//!
3//! The public model intentionally starts with fact events rather than memory
4//! items. Materialized memory is a replayed projection of the event log.
5
6pub mod anchor;
7pub mod hash;
8pub mod ids;
9pub mod model;
10pub mod policy;
11pub mod state;
12
13pub use anchor::{ChainAnchor, anchor_head, verify_anchor};
14#[cfg(feature = "signed-anchor")]
15pub use anchor::{SignedTreeHead, sign_head, verify_signed_head};
16pub use hash::{CanonError, attestation_message, canonical_bytes, event_hash, hash_chain};
17pub use ids::{ActorId, EvidenceId, FactEventId, FactId, IdError, SourceId, TimestampMillis};
18pub use model::{
19    AttestationAlgorithm, Authority, AuthorityLevel, CanonicalJson, ChallengeKind,
20    ChallengeRejection, Confidence, ContradictionBasis, Evidence, EvidenceKind, ExpirationReason,
21    FactEvent, FactEventKind, FactValue, Predicate, Provenance, RetractionReason, Subject,
22    SupersessionReason, Ttl, ValidationError, WriteAttestation,
23};
24pub use policy::EpistemicPolicy;
25pub use state::{FactLifecycle, FactState, TransitionError, apply_event};