conxius_enclave_sdk/
lib.rs1pub mod config;
2pub mod enclave;
3pub mod protocol;
4pub mod state;
5pub mod telemetry;
6
7#[cfg(target_arch = "wasm32")]
8pub mod wasm_bindings;
9
10pub type ConclaveResult<T> = Result<T, ConclaveError>;
11
12#[derive(Debug, serde::Serialize, serde::Deserialize, thiserror::Error)]
13pub enum ConclaveError {
14 #[error("Hardware Enclave Error: {0}")]
15 EnclaveFailure(String),
16 #[error("Cryptographic operation failed: {0}")]
17 CryptoError(String),
18 #[error("Invalid Payload provided")]
19 InvalidPayload,
20 #[error("ISO 20022 Error: {0}")]
21 IsoError(String),
22 #[error("Network error: {0}")]
23 NetworkError(String),
24 #[error("Rail Error: {0}")]
25 RailError(String),
26 #[error("Unsupported Chain or Feature: {0}")]
27 Unsupported(String),
28}
29
30#[cfg(target_arch = "wasm32")]
31impl From<ConclaveError> for wasm_bindgen::JsValue {
32 fn from(err: ConclaveError) -> Self {
33 wasm_bindgen::JsValue::from_str(&err.to_string())
34 }
35}