xmtp_proto/
lib.rs

1#[allow(clippy::all)]
2#[allow(warnings)]
3mod generated {
4    //! Module structure of Protos for XMTP
5    //!
6    //! Edit the 'build.rs' file and uncomment '.include_file' to generate this file
7    //! from the beginning. Generating this file anew will remove all ".serde.rs" includes,
8    //! since pbjson does not integrate with prost/tonic build
9    include!("gen/mod.rs");
10    pub const FILE_DESCRIPTOR_SET: &'static [u8] = include_bytes!("gen/proto_descriptor.bin");
11}
12
13pub mod api_client;
14pub mod codec;
15mod convert;
16mod error;
17mod impls;
18mod proto_cache;
19mod traits;
20pub mod types;
21
22pub use error::*;
23pub use generated::*;
24pub use impls::update_dedupe::GroupUpdateDeduper;
25pub use proto_cache::*;
26
27pub mod api {
28    pub use super::traits::combinators::*;
29    pub use super::traits::stream::*;
30    pub use super::traits::*;
31}
32
33#[cfg(test)]
34pub mod test {
35    #[cfg(target_arch = "wasm32")]
36    wasm_bindgen_test::wasm_bindgen_test_configure!(run_in_browser);
37
38    xmtp_common::if_native! {
39        #[cfg(test)]
40        #[ctor::ctor]
41        fn _setup() {
42            xmtp_common::logger()
43        }
44    }
45}
46
47pub mod prelude {
48    pub use super::FILE_DESCRIPTOR_SET;
49    xmtp_common::if_test! {
50        pub use super::api_client::XmtpTestClient;
51    }
52    pub use super::api_client::{
53        ApiBuilder, ArcedXmtpApi, BoxedXmtpApi, NetConnectConfig, XmtpIdentityClient,
54        XmtpMlsClient, XmtpMlsStreams,
55    };
56    pub use super::traits::{ApiClientError, Client, Endpoint, Query, QueryStream};
57}
58
59pub mod identity_v1 {
60    pub use super::xmtp::identity::api::v1::*;
61}
62
63pub mod mls_v1 {
64    pub use super::xmtp::mls::api::v1::*;
65}