Skip to main content

bitwarden_api_api/models/
unlock_data_request_model.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct UnlockDataRequestModel {
17    #[serde(
18        rename = "masterPasswordUnlockData",
19        alias = "MasterPasswordUnlockData"
20    )]
21    pub master_password_unlock_data: Box<models::MasterPasswordUnlockAndAuthenticationDataModel>,
22    #[serde(
23        rename = "emergencyAccessUnlockData",
24        alias = "EmergencyAccessUnlockData"
25    )]
26    pub emergency_access_unlock_data: Option<Vec<models::EmergencyAccessWithIdRequestModel>>,
27    #[serde(
28        rename = "organizationAccountRecoveryUnlockData",
29        alias = "OrganizationAccountRecoveryUnlockData"
30    )]
31    pub organization_account_recovery_unlock_data:
32        Option<Vec<models::ResetPasswordWithOrgIdRequestModel>>,
33    #[serde(rename = "passkeyUnlockData", alias = "PasskeyUnlockData")]
34    pub passkey_unlock_data: Option<Vec<models::WebAuthnLoginRotateKeyRequestModel>>,
35    #[serde(rename = "deviceKeyUnlockData", alias = "DeviceKeyUnlockData")]
36    pub device_key_unlock_data: Option<Vec<models::OtherDeviceKeysUpdateRequestModel>>,
37    #[serde(
38        rename = "v2UpgradeToken",
39        alias = "V2UpgradeToken",
40        skip_serializing_if = "Option::is_none"
41    )]
42    pub v2_upgrade_token: Option<Box<models::V2UpgradeTokenRequestModel>>,
43}
44
45impl UnlockDataRequestModel {
46    pub fn new(
47        master_password_unlock_data: models::MasterPasswordUnlockAndAuthenticationDataModel,
48        emergency_access_unlock_data: Option<Vec<models::EmergencyAccessWithIdRequestModel>>,
49        organization_account_recovery_unlock_data: Option<
50            Vec<models::ResetPasswordWithOrgIdRequestModel>,
51        >,
52        passkey_unlock_data: Option<Vec<models::WebAuthnLoginRotateKeyRequestModel>>,
53        device_key_unlock_data: Option<Vec<models::OtherDeviceKeysUpdateRequestModel>>,
54    ) -> UnlockDataRequestModel {
55        UnlockDataRequestModel {
56            master_password_unlock_data: Box::new(master_password_unlock_data),
57            emergency_access_unlock_data,
58            organization_account_recovery_unlock_data,
59            passkey_unlock_data,
60            device_key_unlock_data,
61            v2_upgrade_token: None,
62        }
63    }
64}