use serde::{Deserialize, Serialize};
use crate::models;
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct RegisterFinishRequestModel {
#[serde(rename = "email", alias = "Email")]
pub email: Option<String>,
#[serde(
rename = "emailVerificationToken",
alias = "EmailVerificationToken",
skip_serializing_if = "Option::is_none"
)]
pub email_verification_token: Option<String>,
#[serde(
rename = "masterPasswordAuthentication",
alias = "MasterPasswordAuthentication",
skip_serializing_if = "Option::is_none"
)]
pub master_password_authentication:
Option<Box<models::MasterPasswordAuthenticationDataRequestModel>>,
#[serde(
rename = "masterPasswordUnlock",
alias = "MasterPasswordUnlock",
skip_serializing_if = "Option::is_none"
)]
pub master_password_unlock: Option<Box<models::MasterPasswordUnlockDataRequestModel>>,
#[serde(
rename = "masterPasswordHash",
alias = "MasterPasswordHash",
skip_serializing_if = "Option::is_none"
)]
pub master_password_hash: Option<String>,
#[serde(
rename = "masterPasswordHint",
alias = "MasterPasswordHint",
skip_serializing_if = "Option::is_none"
)]
pub master_password_hint: Option<String>,
#[serde(
rename = "userSymmetricKey",
alias = "UserSymmetricKey",
skip_serializing_if = "Option::is_none"
)]
pub user_symmetric_key: Option<String>,
#[serde(
rename = "userAsymmetricKeys",
alias = "UserAsymmetricKeys",
skip_serializing_if = "Option::is_none"
)]
pub user_asymmetric_keys: Option<Box<models::KeysRequestModel>>,
#[serde(
rename = "accountKeys",
alias = "AccountKeys",
skip_serializing_if = "Option::is_none"
)]
pub account_keys: Option<Box<models::AccountKeysRequestModel>>,
#[serde(rename = "kdf", alias = "Kdf", skip_serializing_if = "Option::is_none")]
pub kdf: Option<models::KdfType>,
#[serde(
rename = "kdfIterations",
alias = "KdfIterations",
skip_serializing_if = "Option::is_none"
)]
pub kdf_iterations: Option<i32>,
#[serde(
rename = "kdfMemory",
alias = "KdfMemory",
skip_serializing_if = "Option::is_none"
)]
pub kdf_memory: Option<i32>,
#[serde(
rename = "kdfParallelism",
alias = "KdfParallelism",
skip_serializing_if = "Option::is_none"
)]
pub kdf_parallelism: Option<i32>,
#[serde(
rename = "organizationUserId",
alias = "OrganizationUserId",
skip_serializing_if = "Option::is_none"
)]
pub organization_user_id: Option<uuid::Uuid>,
#[serde(
rename = "orgInviteToken",
alias = "OrgInviteToken",
skip_serializing_if = "Option::is_none"
)]
pub org_invite_token: Option<String>,
#[serde(
rename = "orgSponsoredFreeFamilyPlanToken",
alias = "OrgSponsoredFreeFamilyPlanToken",
skip_serializing_if = "Option::is_none"
)]
pub org_sponsored_free_family_plan_token: Option<String>,
#[serde(
rename = "acceptEmergencyAccessInviteToken",
alias = "AcceptEmergencyAccessInviteToken",
skip_serializing_if = "Option::is_none"
)]
pub accept_emergency_access_invite_token: Option<String>,
#[serde(
rename = "acceptEmergencyAccessId",
alias = "AcceptEmergencyAccessId",
skip_serializing_if = "Option::is_none"
)]
pub accept_emergency_access_id: Option<uuid::Uuid>,
#[serde(
rename = "providerInviteToken",
alias = "ProviderInviteToken",
skip_serializing_if = "Option::is_none"
)]
pub provider_invite_token: Option<String>,
#[serde(
rename = "providerUserId",
alias = "ProviderUserId",
skip_serializing_if = "Option::is_none"
)]
pub provider_user_id: Option<uuid::Uuid>,
}
impl RegisterFinishRequestModel {
pub fn new(email: Option<String>) -> RegisterFinishRequestModel {
RegisterFinishRequestModel {
email,
email_verification_token: None,
master_password_authentication: None,
master_password_unlock: None,
master_password_hash: None,
master_password_hint: None,
user_symmetric_key: None,
user_asymmetric_keys: None,
account_keys: None,
kdf: None,
kdf_iterations: None,
kdf_memory: None,
kdf_parallelism: None,
organization_user_id: None,
org_invite_token: None,
org_sponsored_free_family_plan_token: None,
accept_emergency_access_invite_token: None,
accept_emergency_access_id: None,
provider_invite_token: None,
provider_user_id: None,
}
}
}