mod batch;
mod codec;
mod pending;
mod presence;
mod storage;
pub use pending::{AppendResolution, UnresolvedAppend};
pub use presence::KeyLookup;
pub use storage::{DurableChannel, EphemeralChannel, PartitionKey};
#[derive(Clone, Debug, PartialEq, Eq)]
pub struct CausalContext {
pub parent_id: Option<String>,
pub vector_clock_entry: Option<u64>,
}
#[derive(Clone, Debug, PartialEq, Eq)]
pub struct MessageEnvelope {
pub payload: Vec<u8>,
pub causal_context: Option<CausalContext>,
pub timestamp: u64,
pub publisher_id: String,
pub idempotency_key: Option<String>,
}