pub mod channel;
pub mod config;
pub mod conversation;
pub mod counting;
pub mod cursor;
pub mod dedup;
pub mod ephemeral_root;
pub mod error;
pub mod head_checkpoint;
#[cfg(test)]
mod outcome_unknown_tests;
pub mod receipt;
pub mod recovery;
pub mod replay;
#[cfg(test)]
mod routed_batch_tests;
pub mod settle;
#[cfg(test)]
mod settle_tests;
pub mod store;
#[cfg(test)]
mod store_bound_tests;
#[cfg(test)]
mod tests_ephemeral_root;
#[cfg(test)]
mod tests_fixtures;
#[cfg(test)]
pub(crate) mod tests_memory_store;
pub use channel::{
AppendResolution, CausalContext, DurableChannel, EphemeralChannel, MessageEnvelope,
PartitionKey, UnresolvedAppend,
};
pub use config::{CheckpointPolicy, DurabilityConfig, DurabilityMode};
pub use conversation::{ConversationEvent, DurableConversation, RedeliveryDecision};
pub use counting::StoreCountObserver;
pub use counting::{
CountingStore, StoreCounts, StoreCountsHandle, record_store_opened, stores_opened,
};
pub use cursor::{CheckpointDriver, ConsumerCursor, cursor_key_for};
pub use dedup::{
ClaimEvidence, DedupCache, DedupDecision, DedupEntry, DedupHeadCounts, DedupSweepReport,
DedupSweeper, InFlightClaim, dedup_head_counts,
};
pub use error::DurabilityError;
pub use head_checkpoint::{
HEAD_CHECKPOINT_EVERY, HeadCheckpointRefusal, advance_head, head_checkpoint_key,
recover_partition_head,
};
pub use receipt::ProcessingReceipt;
pub use recovery::{
RecoveredCursor, recover_conversation, recover_cursor, recover_cursor_with_replay,
recover_durable_channel, recover_partition_sequences,
};
pub use replay::{replay_from, replay_range};
pub use store::{
DurableStore, EphemeralHaematiteStore, HaematiteStore, RoutedBatchItem, ScanCursor, ScanPage,
StoredEntry,
};
#[cfg(any(test, feature = "test-support"))]
pub use store::{open_ephemeral, open_ephemeral_rooted};
pub use ephemeral_root::{EphemeralRoot, EphemeralSweepCounts};
pub mod bridge;