// This file was autogenerated by some hot garbage in the `uniffi` crate.
// Trust me, you don't want to mess with it!
::uniffi::setup_scaffolding!("db_crypto");
// Export info about this UDL file
// See `uniffi_bindgen::macro_metadata` for how this is used.
const UNIFFI_META_CONST_UDL_DB_CRYPTO: ::uniffi::MetadataBuffer = ::uniffi::MetadataBuffer::from_code(::uniffi::metadata::codes::UDL_FILE)
.concat_str("db_crypto")
.concat_str("db_crypto")
.concat_str("db-crypto");
#[doc(hidden)]
#[unsafe(no_mangle)]
pub static UNIFFI_META_UDL_DB_CRYPTO: [u8; UNIFFI_META_CONST_UDL_DB_CRYPTO.size] = UNIFFI_META_CONST_UDL_DB_CRYPTO.into_array();
// Error definitions, corresponding to `error` in the UDL.
#[::uniffi::udl_derive(Error)]
enum r#DbCryptoApiError {
r#NSSUninitialized {
},
r#NSSAuthenticationError {
r#reason: ::std::string::String,
},
r#AuthenticationError {
r#reason: ::std::string::String,
},
r#AuthenticationCanceled {
},
r#MissingKey {
},
r#InvalidKey {
},
r#EncryptionFailed {
r#reason: ::std::string::String,
},
r#DecryptionFailed {
r#reason: ::std::string::String,
},
r#Interrupted {
r#reason: ::std::string::String,
},
r#UnexpectedDbCryptoApiError {
r#reason: ::std::string::String,
},
}
// Record definitions, implemented as method-less structs, corresponding to `dictionary` objects.
// Top level functions, corresponding to UDL `namespace` functions.
#[::uniffi::export_for_udl]
pub fn r#check_canary(
r#canary: &::std::string::String,
r#text: &::std::string::String,
r#encryption_key: &::std::string::String,
) -> ::std::result::Result::<bool, r#DbCryptoApiError>
{
unreachable!()
}
#[::uniffi::export_for_udl]
pub fn r#create_canary(
r#text: &::std::string::String,
r#encryption_key: &::std::string::String,
) -> ::std::result::Result::<::std::string::String, r#DbCryptoApiError>
{
unreachable!()
}
#[::uniffi::export_for_udl]
pub fn r#create_key(
) -> ::std::result::Result::<::std::string::String, r#DbCryptoApiError>
{
unreachable!()
}
// Object definitions, corresponding to UDL `interface` definitions.
#[::uniffi::export_for_udl(with_foreign)]
pub trait r#EncryptorDecryptor {
fn r#decrypt(
&self,
r#ciphertext: ::std::vec::Vec<u8>,
) -> ::std::result::Result::<::std::vec::Vec<u8>, r#DbCryptoApiError>;
fn r#encrypt(
&self,
r#cleartext: ::std::vec::Vec<u8>,
) -> ::std::result::Result::<::std::vec::Vec<u8>, r#DbCryptoApiError>;
}
#[::uniffi::export_for_udl(with_foreign)]
pub trait r#KeyManager {
fn r#get_key(
&self,
) -> ::std::result::Result::<::std::vec::Vec<u8>, r#DbCryptoApiError>;
}
#[::uniffi::udl_derive(Object)]
struct r#ManagedEncryptorDecryptor { }
#[::uniffi::export_for_udl]
impl r#ManagedEncryptorDecryptor {
#[uniffi::constructor]
pub fn r#new(
r#key_manager: ::std::sync::Arc<dyn r#KeyManager>,
) -> ::std::sync::Arc<r#ManagedEncryptorDecryptor>
{
unreachable!()
}
}
#[::uniffi::udl_derive(Object)]
struct r#StaticKeyManager { }
#[::uniffi::export_for_udl]
impl r#StaticKeyManager {
#[uniffi::constructor]
pub fn r#new(
r#key: ::std::string::String,
) -> ::std::sync::Arc<r#StaticKeyManager>
{
unreachable!()
}
}
// Callback Interface definitions, corresponding to UDL `callback interface` definitions.
// Export scaffolding checksums for UDL items
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_func_check_canary() -> u16 {
48391
}
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_func_create_canary() -> u16 {
45950
}
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_func_create_key() -> u16 {
1702
}
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_method_encryptordecryptor_decrypt() -> u16 {
43414
}
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_method_encryptordecryptor_encrypt() -> u16 {
63026
}
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_method_keymanager_get_key() -> u16 {
26324
}
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_constructor_managedencryptordecryptor_new() -> u16 {
37759
}
#[unsafe(no_mangle)]
#[doc(hidden)]
pub extern "C" fn r#uniffi_db_crypto_checksum_constructor_statickeymanager_new() -> u16 {
56344
}