diff --git a/bindings/matrix-sdk-ffi/src/element.rs b/bindings/matrix-sdk-ffi/src/element.rs new file mode 100644 index 00000000000..b5a52546181 --- /dev/null +++ b/bindings/matrix-sdk-ffi/src/element.rs @@ -0,0 +1,20 @@ +use crate::ClientError; +use serde::Deserialize; + +/// Well-known settings specific to ElementCall +#[derive(Deserialize, uniffi::Record)] +pub struct ElementCallWellKnown { + widget_url: String, +} + +/// Element specific well-known settings +#[derive(Deserialize, uniffi::Record)] +pub struct ElementWellKnown { + call: ElementCallWellKnown, +} + +/// Helper function to parse a string into a ElementWellKnown struct +#[uniffi::export] +pub fn make_element_well_known(string: String) -> Result { + serde_json::from_str(&string).map_err(ClientError::new) +} diff --git a/bindings/matrix-sdk-ffi/src/lib.rs b/bindings/matrix-sdk-ffi/src/lib.rs index aba6e22596e..f475f7e862d 100644 --- a/bindings/matrix-sdk-ffi/src/lib.rs +++ b/bindings/matrix-sdk-ffi/src/lib.rs @@ -24,6 +24,7 @@ mod authentication; mod chunk_iterator; mod client; mod client_builder; +mod element; mod encryption; mod error; mod event;