use crate::models;
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct JsonWebKey {
#[serde(rename = "alg", skip_serializing_if = "Option::is_none")]
pub alg: Option<models::Algorithm>,
#[serde(rename = "crv", skip_serializing_if = "Option::is_none")]
pub crv: Option<String>,
#[serde(rename = "d", skip_serializing_if = "Option::is_none")]
pub d: Option<String>,
#[serde(rename = "dp", skip_serializing_if = "Option::is_none")]
pub dp: Option<String>,
#[serde(rename = "dq", skip_serializing_if = "Option::is_none")]
pub dq: Option<String>,
#[serde(rename = "e", skip_serializing_if = "Option::is_none")]
pub e: Option<String>,
#[serde(rename = "kid", skip_serializing_if = "Option::is_none")]
pub kid: Option<String>,
#[serde(rename = "kty", skip_serializing_if = "Option::is_none")]
pub kty: Option<models::KeyType>,
#[serde(rename = "n", skip_serializing_if = "Option::is_none")]
pub n: Option<String>,
#[serde(rename = "other", skip_serializing_if = "Option::is_none")]
pub other: Option<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "p", skip_serializing_if = "Option::is_none")]
pub p: Option<String>,
#[serde(rename = "q", skip_serializing_if = "Option::is_none")]
pub q: Option<String>,
#[serde(rename = "qi", skip_serializing_if = "Option::is_none")]
pub qi: Option<String>,
#[serde(rename = "use", skip_serializing_if = "Option::is_none")]
pub r#use: Option<String>,
#[serde(rename = "x", skip_serializing_if = "Option::is_none")]
pub x: Option<String>,
#[serde(rename = "x5c", skip_serializing_if = "Option::is_none")]
pub x5c: Option<Vec<String>>,
#[serde(rename = "x5t", skip_serializing_if = "Option::is_none")]
pub x5t: Option<String>,
#[serde(rename = "x5t#S256", skip_serializing_if = "Option::is_none")]
pub x5t_hash_s256: Option<String>,
#[serde(rename = "y", skip_serializing_if = "Option::is_none")]
pub y: Option<String>,
}
impl JsonWebKey {
pub fn new() -> JsonWebKey {
JsonWebKey {
alg: None,
crv: None,
d: None,
dp: None,
dq: None,
e: None,
kid: None,
kty: None,
n: None,
other: None,
p: None,
q: None,
qi: None,
r#use: None,
x: None,
x5c: None,
x5t: None,
x5t_hash_s256: None,
y: None,
}
}
}