1pub type MlsError = super::wrapper::WrappedContextualError<MlsErrorKind>;
19
20#[derive(Debug, thiserror::Error, strum::IntoStaticStr)]
22pub enum MlsErrorKind {
23 #[error(transparent)]
25 MlsWelcomeError(#[from] openmls::prelude::WelcomeError<core_crypto_keystore::CryptoKeystoreError>),
26 #[error(transparent)]
28 MlsLibraryError(#[from] openmls::error::LibraryError),
29 #[error(transparent)]
31 MlsInvalidMessageError(#[from] openmls::prelude::CreateMessageError),
32 #[error(transparent)]
34 MlsEmptyInputError(#[from] openmls::prelude::EmptyInputError),
35 #[error(transparent)]
37 MlsCredentialError(#[from] openmls::prelude::CredentialError),
38 #[error(transparent)]
40 MlsNewGroupError(#[from] openmls::prelude::NewGroupError<core_crypto_keystore::CryptoKeystoreError>),
41 #[error(transparent)]
43 MlsAddMembersError(#[from] openmls::prelude::AddMembersError<core_crypto_keystore::CryptoKeystoreError>),
44 #[error(transparent)]
46 MlsRemoveMembersError(#[from] openmls::prelude::RemoveMembersError<core_crypto_keystore::CryptoKeystoreError>),
47 #[error(transparent)]
49 MlsMessageError(#[from] openmls::prelude::ProcessMessageError),
50 #[error(transparent)]
52 MlsKeyPackageBundleNewError(
53 #[from] openmls::prelude::KeyPackageNewError<core_crypto_keystore::CryptoKeystoreError>,
54 ),
55 #[error(transparent)]
57 MlsSelfUpdateError(#[from] openmls::prelude::SelfUpdateError<core_crypto_keystore::CryptoKeystoreError>),
58 #[error(transparent)]
60 MlsMlsGroupStateError(#[from] openmls::prelude::MlsGroupStateError),
61 #[error(transparent)]
63 ProposeAddMemberError(#[from] openmls::prelude::ProposeAddMemberError),
64 #[error(transparent)]
66 ProposeSelfUpdateError(#[from] openmls::prelude::ProposeSelfUpdateError<core_crypto_keystore::CryptoKeystoreError>),
67 #[error(transparent)]
69 ProposeRemoveMemberError(#[from] openmls::prelude::ProposeRemoveMemberError),
70 #[error(transparent)]
72 MlsCommitToPendingProposalsError(
73 #[from] openmls::prelude::CommitToPendingProposalsError<core_crypto_keystore::CryptoKeystoreError>,
74 ),
75 #[error(transparent)]
77 MlsExportGroupInfoError(#[from] openmls::prelude::ExportGroupInfoError),
78 #[error(transparent)]
80 MlsTlsCodecError(#[from] tls_codec::Error),
81 #[error(transparent)]
84 MlsKeystoreSerializationError(#[from] serde_json::Error),
85 #[error(transparent)]
88 MlsErrorString(#[from] openmls::error::ErrorString),
89 #[error(transparent)]
91 MlsExternalCommitError(#[from] openmls::prelude::ExternalCommitError),
92 #[error(transparent)]
94 MlsCryptoError(#[from] openmls::prelude::CryptoError),
95 #[error(transparent)]
97 MlsExportSecretError(#[from] openmls::prelude::ExportSecretError),
98 #[error(transparent)]
100 MlsMergeCommitError(#[from] openmls::prelude::MergeCommitError<core_crypto_keystore::CryptoKeystoreError>),
101 #[error(transparent)]
103 MlsKeyPackageValidationError(#[from] openmls::prelude::KeyPackageVerifyError),
104 #[error(transparent)]
106 MlsMergePendingCommitError(
107 #[from] openmls::prelude::MergePendingCommitError<core_crypto_keystore::CryptoKeystoreError>,
108 ),
109 #[error(transparent)]
111 MlsEncryptMessageError(#[from] openmls::framing::errors::MlsMessageError),
112 #[error(transparent)]
114 MlsDeleteKeyPackageError(
115 #[from] openmls::key_packages::errors::KeyPackageDeleteError<core_crypto_keystore::CryptoKeystoreError>,
116 ),
117 #[error(transparent)]
119 MlsUpdateExtensionsError(
120 #[from] openmls::prelude::UpdateExtensionsError<core_crypto_keystore::CryptoKeystoreError>,
121 ),
122 #[error(transparent)]
124 MlsLeafNodeValidationError(#[from] openmls::prelude::LeafNodeValidationError),
125 #[error(transparent)]
127 RatchetTreeError(#[from] openmls::treesync::RatchetTreeError),
128 #[error(transparent)]
130 GroupInfoError(#[from] openmls::messages::group_info::GroupInfoError),
131 #[error(transparent)]
133 ProviderError(#[from] mls_crypto_provider::MlsProviderError),
134}