#![doc = include_str!("../README.md")]
#![allow(clippy::explicit_auto_deref)]
#![warn(missing_docs)]
#![warn(rust_2018_idioms)]
#![warn(clippy::correctness)]
#![cfg_attr(not(test), warn(clippy::perf))]
#![cfg_attr(
doc,
warn(
rustdoc::bare_urls,
rustdoc::broken_intra_doc_links,
rustdoc::invalid_codeblock_attributes,
rustdoc::invalid_rust_codeblocks,
)
)]
#[allow(unused_imports)]
#[macro_use]
extern crate ext_trait;
#[allow(unused_extern_crates)]
extern crate ffi_sdk;
#[macro_use]
extern crate macro_rules_attribute;
#[cfg(test)]
extern crate self as dittolive_ditto;
#[macro_use]
#[doc(hidden)]
pub mod utils;
pub mod disk_usage;
#[doc(hidden)]
#[deprecated(note = "See the 'identity' module instead")]
pub use crate::identity::auth;
#[doc(hidden)]
pub mod ditto;
pub use crate::ditto::{builder::DittoBuilder, AppId, Ditto, LogLevel};
pub mod dql;
pub mod error;
#[cfg(feature = "experimental")]
pub mod experimental;
pub mod identity;
pub mod fs;
pub mod logger;
pub mod observer;
pub mod prelude;
pub mod presence;
pub mod small_peer_info;
pub mod store;
#[doc(hidden)]
pub use crate::store::query_builder::subscription;
pub mod sync;
pub mod transport;
#[doc(hidden)]
pub use crate::store::query_builder::types;
#[cfg(test)]
pub(crate) mod test_helpers;