pub mod carrier;
pub mod ids;
#[cfg(not(all(target_arch = "wasm32", target_os = "unknown")))]
pub(crate) mod reachability;
pub mod store;
pub mod sync_codec;
pub mod tree;
pub mod wal;
pub use ids::{KvKey, KvValue, ShardId};
#[cfg(not(feature = "wasm"))]
pub mod api;
pub mod branch;
#[cfg(all(feature = "wasm", target_arch = "wasm32", target_os = "unknown"))]
pub mod browser_local;
#[cfg(not(feature = "wasm"))]
pub mod db;
#[cfg(not(feature = "wasm"))]
pub(crate) mod fence;
#[cfg(not(feature = "wasm"))]
pub(crate) mod shard;
#[cfg(not(feature = "wasm"))]
pub mod sync;
#[cfg(not(feature = "wasm"))]
pub mod ttl;
pub mod wasm;
mod error;
#[cfg(all(test, not(feature = "wasm")))]
#[path = "chunking_dispatch_pins_tests.rs"]
mod chunking_dispatch_pins_tests;
pub use error::Error;
pub use store::{CacheError, DeleteNode, LruCache, MemoryStore, NodeStore};
#[cfg(not(feature = "wasm"))]
pub use store::{DiskStore, StoreError};
#[cfg(feature = "wasm")]
pub use store::{IndexedDbStore, IndexedDbStoreError};
pub use tree::{
BoundaryDetector, Cursor, Hash, InternalNode, LeafNode, Node, NodeError, RangeIter, TreeError,
TreePolicy, batch_mutate, delete, insert,
};
pub use tree::{DiffEntry, DiffError, diff};
pub use wal::{LookupResult, Mutation, OperationType, WalBuffer, WalEntry, WalError};
#[cfg(not(feature = "wasm"))]
pub use wal::{DurableWal, FsyncPolicy, RecoveredWal, WalFileContents, WalRecovery};
#[cfg(not(feature = "wasm"))]
pub use branch::{
BranchCommitError, BranchError, BranchHandle, BranchKind, BranchPolicyError, BranchRefError,
BranchRefRecord, BranchRefStore, BranchRegistry, BranchShardRef, CheckoutError,
CommitDurability, CommitLog, CommitLogEntry, CommitOutcome, CommitRequest, ConflictError,
ConflictInput, ConflictPolicy, CustomMergeFn, MergeConflict, MergeError, MergeReport,
PruneError, PruneReport, ReadOnlyView, SnapshotEntry, SnapshotError, SnapshotRegistry,
Timestamp, checkout, commit_branch, create_branch, create_branch_with_kind, current_timestamp,
fork, fork_at, fork_from, fork_from_with_kind, fork_registered, fork_shards,
fork_shards_registered, merge, open_branch, prune, remove_branch,
};
#[cfg(not(feature = "wasm"))]
pub use api::{
ApiError, CasMismatch, Event, EventStore, KvEntry, KvRange, ScanResult, SequenceConflict,
ShardRoots, StreamMeta, decode_stream_key, encode_stream_key,
};
#[cfg(not(feature = "wasm"))]
pub use db::{
Database, DatabaseConfig, DatabaseError, DistributedDatabaseConfig, ON_DISK_FORMAT_VERSION,
ObservedEntry, ObserverError, ReadOnlyDatabase, respond_to_inbound_writes,
};
#[cfg(not(feature = "wasm"))]
pub use sync::{
Ack, ConsistencyError, ConsistencyMode, ConvergenceProperties, DistributionEndpoint,
EventualConsistency, InboundSync, NoopSyncPullTrigger, QuorumOutcome, StrongConsistency,
SyncMergeError, SyncMergeResult, SyncMergeRoots, SyncNodeId, SyncPair, SyncPullTrigger,
SyncSchedulerConfig, SyncSchedulerError, SyncSchedulerHandle, SyncSchedulerStats, SyncTopology,
TopologyError, WriteMembership, execute_with_consistency, quorum_size, wait_for_quorum,
wait_for_quorum_from_receiver,
};
#[cfg(feature = "wasm-runtime")]
pub use wasm::{WasmRuntime, WasmRuntimeError, WasmShardHandle, WasmShardRuntime};