bitwarden_api_identity/models/
assertion_options.rs1use serde::{Deserialize, Serialize};
12use serde_with::serde_as;
13
14use crate::models;
15
16#[serde_as]
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
18pub struct AssertionOptions {
19 #[serde(
20 rename = "status",
21 alias = "Status",
22 skip_serializing_if = "Option::is_none"
23 )]
24 pub status: Option<String>,
25 #[serde(
26 rename = "errorMessage",
27 alias = "ErrorMessage",
28 skip_serializing_if = "Option::is_none"
29 )]
30 pub error_message: Option<String>,
31 #[serde_as(
32 as = "Option<serde_with::base64::Base64<serde_with::base64::UrlSafe, serde_with::formats::Unpadded>>"
33 )]
34 #[serde(
35 rename = "challenge",
36 alias = "Challenge",
37 skip_serializing_if = "Option::is_none"
38 )]
39 pub challenge: Option<Vec<u8>>,
40 #[serde(
41 rename = "timeout",
42 alias = "Timeout",
43 skip_serializing_if = "Option::is_none"
44 )]
45 pub timeout: Option<i32>,
46 #[serde(
47 rename = "rpId",
48 alias = "RpId",
49 skip_serializing_if = "Option::is_none"
50 )]
51 pub rp_id: Option<String>,
52 #[serde(
53 rename = "allowCredentials",
54 alias = "AllowCredentials",
55 skip_serializing_if = "Option::is_none"
56 )]
57 pub allow_credentials: Option<Vec<models::PublicKeyCredentialDescriptor>>,
58 #[serde(
59 rename = "userVerification",
60 alias = "UserVerification",
61 skip_serializing_if = "Option::is_none"
62 )]
63 pub user_verification: Option<models::UserVerificationRequirement>,
64 #[serde(
65 rename = "extensions",
66 alias = "Extensions",
67 skip_serializing_if = "Option::is_none"
68 )]
69 pub extensions: Option<Box<models::AuthenticationExtensionsClientInputs>>,
70}
71
72impl AssertionOptions {
73 pub fn new() -> AssertionOptions {
74 AssertionOptions {
75 status: None,
76 error_message: None,
77 challenge: None,
78 timeout: None,
79 rp_id: None,
80 allow_credentials: None,
81 user_verification: None,
82 extensions: None,
83 }
84 }
85}