use serde::{Deserialize, Serialize};
use crate::models;
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PasswordRequestModel {
#[serde(
rename = "masterPasswordHash",
alias = "MasterPasswordHash",
skip_serializing_if = "Option::is_none"
)]
pub master_password_hash: Option<String>,
#[serde(rename = "otp", alias = "Otp", skip_serializing_if = "Option::is_none")]
pub otp: Option<String>,
#[serde(
rename = "authRequestAccessCode",
alias = "AuthRequestAccessCode",
skip_serializing_if = "Option::is_none"
)]
pub auth_request_access_code: Option<String>,
#[serde(
rename = "secret",
alias = "Secret",
skip_serializing_if = "Option::is_none"
)]
pub secret: Option<String>,
#[serde(rename = "newMasterPasswordHash", alias = "NewMasterPasswordHash")]
pub new_master_password_hash: String,
#[serde(
rename = "masterPasswordHint",
alias = "MasterPasswordHint",
skip_serializing_if = "Option::is_none"
)]
pub master_password_hint: Option<String>,
#[serde(rename = "key", alias = "Key")]
pub key: String,
#[serde(
rename = "authenticationData",
alias = "AuthenticationData",
skip_serializing_if = "Option::is_none"
)]
pub authentication_data: Option<Box<models::MasterPasswordAuthenticationDataRequestModel>>,
#[serde(
rename = "unlockData",
alias = "UnlockData",
skip_serializing_if = "Option::is_none"
)]
pub unlock_data: Option<Box<models::MasterPasswordUnlockDataRequestModel>>,
}
impl PasswordRequestModel {
pub fn new(new_master_password_hash: String, key: String) -> PasswordRequestModel {
PasswordRequestModel {
master_password_hash: None,
otp: None,
auth_request_access_code: None,
secret: None,
new_master_password_hash,
master_password_hint: None,
key,
authentication_data: None,
unlock_data: None,
}
}
}