core_crypto_ffi/
lib.rs

1#[cfg(doc)]
2pub mod bindings;
3
4#[cfg(not(target_family = "wasm"))]
5uniffi::setup_scaffolding!("core_crypto_ffi");
6
7mod bundles;
8mod ciphersuite;
9mod client_id;
10mod configuration;
11mod core_crypto;
12mod core_crypto_context;
13mod credential_type;
14mod crl;
15mod database_key;
16mod decrypted_message;
17mod e2ei;
18mod ephemeral;
19mod error;
20mod identity;
21mod metadata;
22mod proteus;
23
24pub use bundles::{
25    commit::CommitBundle, group_info::GroupInfoBundle, proposal::ProposalBundle,
26    proteus_auto_prekey::ProteusAutoPrekeyBundle, welcome::WelcomeBundle,
27};
28pub use ciphersuite::{Ciphersuite, Ciphersuites};
29pub use client_id::{ClientId, FfiClientId};
30pub use configuration::{ConversationConfiguration, CustomConfiguration, WirePolicy};
31pub use core_crypto::{
32    CoreCrypto,
33    command::CoreCryptoCommand,
34    e2ei::E2eiDumpedPkiEnv,
35    epoch_observer::EpochObserver,
36    logger::{CoreCryptoLogLevel, CoreCryptoLogger},
37    mls_transport::{MlsTransport, MlsTransportResponse},
38};
39#[cfg(not(target_family = "wasm"))]
40pub use core_crypto::{
41    command::transaction_helper::TransactionHelper,
42    core_crypto_deferred_init, core_crypto_new,
43    logger::{set_logger, set_logger_only, set_max_log_level},
44};
45pub(crate) use core_crypto::{conversation::ConversationId, e2ei::identities::UserIdentities};
46pub use core_crypto_context::CoreCryptoContext;
47pub use credential_type::CredentialType;
48pub use crl::{CrlRegistration, NewCrlDistributionPoints};
49pub use database_key::{DatabaseKey, migrate_db_key_type_to_bytes};
50pub use decrypted_message::{BufferedDecryptedMessage, DecryptedMessage};
51pub use e2ei::{
52    E2eiConversationState, acme_challenge::AcmeChallenge, acme_directory::AcmeDirectory, enrollment::E2eiEnrollment,
53    new_acme_authz::NewAcmeAuthz, new_acme_order::NewAcmeOrder,
54};
55pub use ephemeral::HistorySecret;
56#[cfg(not(target_family = "wasm"))]
57pub use ephemeral::core_crypto_history_client;
58#[cfg(feature = "proteus")]
59pub use error::proteus::ProteusError;
60pub use error::{CoreCryptoError, CoreCryptoResult, mls::MlsError};
61pub use identity::{
62    wire::{DeviceStatus, WireIdentity},
63    x509::X509Identity,
64};
65pub use metadata::{BuildMetadata, build_metadata, version};