bitwarden-api-api 3.0.0

Api bindings for the Bitwarden API.
Documentation
/*
 * Bitwarden Internal API
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: latest
 *
 * Generated by: https://openapi-generator.tech
 */

use serde::{Deserialize, Serialize};
use serde_with::serde_as;

use crate::models;

#[serde_as]
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AssertionOptions {
    #[serde(
        rename = "status",
        alias = "Status",
        skip_serializing_if = "Option::is_none"
    )]
    pub status: Option<String>,
    #[serde(
        rename = "errorMessage",
        alias = "ErrorMessage",
        skip_serializing_if = "Option::is_none"
    )]
    pub error_message: Option<String>,
    #[serde_as(
        as = "Option<serde_with::base64::Base64<serde_with::base64::UrlSafe, serde_with::formats::Unpadded>>"
    )]
    #[serde(
        rename = "challenge",
        alias = "Challenge",
        skip_serializing_if = "Option::is_none"
    )]
    pub challenge: Option<Vec<u8>>,
    #[serde(
        rename = "timeout",
        alias = "Timeout",
        skip_serializing_if = "Option::is_none"
    )]
    pub timeout: Option<i32>,
    #[serde(
        rename = "rpId",
        alias = "RpId",
        skip_serializing_if = "Option::is_none"
    )]
    pub rp_id: Option<String>,
    #[serde(
        rename = "allowCredentials",
        alias = "AllowCredentials",
        skip_serializing_if = "Option::is_none"
    )]
    pub allow_credentials: Option<Vec<models::PublicKeyCredentialDescriptor>>,
    #[serde(
        rename = "userVerification",
        alias = "UserVerification",
        skip_serializing_if = "Option::is_none"
    )]
    pub user_verification: Option<models::UserVerificationRequirement>,
    #[serde(
        rename = "extensions",
        alias = "Extensions",
        skip_serializing_if = "Option::is_none"
    )]
    pub extensions: Option<Box<models::AuthenticationExtensionsClientInputs>>,
}

impl AssertionOptions {
    pub fn new() -> AssertionOptions {
        AssertionOptions {
            status: None,
            error_message: None,
            challenge: None,
            timeout: None,
            rp_id: None,
            allow_credentials: None,
            user_verification: None,
            extensions: None,
        }
    }
}