#![warn(missing_docs)]
#[cfg(feature = "rkyv")]
mod archived;
#[cfg(feature = "tokio")]
mod async_queue;
mod codec;
mod error;
mod queue;
mod store;
mod sync;
mod typed;
pub use codec::{Codec, CodecError};
pub use error::{OpenError, PushError, TryPushError};
pub use queue::{Builder, Consumer, Durability, Ends, Producer, Reserved};
pub use store::{KeyValue, MemStore, Op, Store};
pub use typed::{
ReserveError, TypedConsumer, TypedEnds, TypedProducer, TypedPushError, TypedReserved,
};
#[cfg(feature = "rkyv")]
pub use archived::{
Archivable, ArchivedConsumer, ArchivedEnds, ArchivedProducer, ArchivedReserved,
};
#[cfg(feature = "tokio")]
pub use async_queue::{AsyncConsumer, AsyncEnds, AsyncProducer, AsyncReserved};
#[cfg(feature = "serde")]
pub use codec::Bincode;
#[cfg(feature = "rkyv")]
pub use codec::Rkyv;
#[cfg(feature = "redb")]
pub use store::RedbStore;
#[cfg(feature = "rocksdb")]
pub use store::RocksStore;
#[cfg(feature = "sled")]
pub use store::SledStore;