sentc-crypto-light 0.14.0

The main implementation of the sentc light sdk.
Documentation
use alloc::string::String;
use alloc::vec::Vec;

use sentc_crypto_common::user::{OtpRecoveryKeysOutput, OtpRegister, UserDeviceList, UserInitServerOutput};

use crate::UserDataExport;

pub struct PrepareLoginOtpOutput
{
	pub master_key: String,
	pub auth_key: String,
}

#[allow(clippy::large_enum_variant)]
pub enum PreLoginOut
{
	Direct(UserDataExport),
	Otp(PrepareLoginOtpOutput),
}

pub type Res = Result<String, String>;
pub type VoidRes = Result<(), String>;
pub type BoolRes = Result<bool, String>;
pub type PreLoginRes = Result<PreLoginOut, String>;
pub type LoginRes = Result<UserDataExport, String>;
pub type InitRes = Result<UserInitServerOutput, String>;
pub type DeviceListRes = Result<Vec<UserDeviceList>, String>;

pub type RegisterRawOtpRes = Result<OtpRegister, String>;
pub type RegisterOtpRes = Result<(String, Vec<String>), String>;
pub type OtpRecoveryKeyRes = Result<OtpRecoveryKeysOutput, String>;