fusionauth_rust_client/models/
public_key_credential_creation_options.rs

1/*
2 * FusionAuth API
3 *
4 * This is a FusionAuth server. Find out more at [https://fusionauth.io](https://fusionauth.io). You need to [set up an API key](https://fusionauth.io/docs/v1/tech/apis/authentication#managing-api-keys) in the FusionAuth instance you are using to test out the API calls.
5 *
6 * The version of the OpenAPI document: 1.60.1
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// PublicKeyCredentialCreationOptions : Allows the Relying Party to specify desired attributes of a new credential.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PublicKeyCredentialCreationOptions {
17    #[serde(rename = "attestation", skip_serializing_if = "Option::is_none")]
18    pub attestation: Option<models::AttestationConveyancePreference>,
19    #[serde(rename = "authenticatorSelection", skip_serializing_if = "Option::is_none")]
20    pub authenticator_selection: Option<Box<models::AuthenticatorSelectionCriteria>>,
21    #[serde(rename = "challenge", skip_serializing_if = "Option::is_none")]
22    pub challenge: Option<String>,
23    #[serde(rename = "excludeCredentials", skip_serializing_if = "Option::is_none")]
24    pub exclude_credentials: Option<Vec<models::PublicKeyCredentialDescriptor>>,
25    #[serde(rename = "extensions", skip_serializing_if = "Option::is_none")]
26    pub extensions: Option<Box<models::WebAuthnRegistrationExtensionOptions>>,
27    #[serde(rename = "pubKeyCredParams", skip_serializing_if = "Option::is_none")]
28    pub pub_key_cred_params: Option<Vec<models::PublicKeyCredentialParameters>>,
29    #[serde(rename = "rp", skip_serializing_if = "Option::is_none")]
30    pub rp: Option<Box<models::PublicKeyCredentialRelyingPartyEntity>>,
31    #[serde(rename = "timeout", skip_serializing_if = "Option::is_none")]
32    pub timeout: Option<i64>,
33    #[serde(rename = "user", skip_serializing_if = "Option::is_none")]
34    pub user: Option<Box<models::PublicKeyCredentialUserEntity>>,
35}
36
37impl PublicKeyCredentialCreationOptions {
38    /// Allows the Relying Party to specify desired attributes of a new credential.
39    pub fn new() -> PublicKeyCredentialCreationOptions {
40        PublicKeyCredentialCreationOptions {
41            attestation: None,
42            authenticator_selection: None,
43            challenge: None,
44            exclude_credentials: None,
45            extensions: None,
46            pub_key_cred_params: None,
47            rp: None,
48            timeout: None,
49            user: None,
50        }
51    }
52}
53