use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct OpenIdConnectIdentityProvider {
#[serde(rename = "domains", skip_serializing_if = "Option::is_none")]
pub domains: Option<Vec<serde_json::Value>>,
#[serde(rename = "buttonImageURL", skip_serializing_if = "Option::is_none")]
pub button_image_url: Option<String>,
#[serde(rename = "buttonText", skip_serializing_if = "Option::is_none")]
pub button_text: Option<String>,
#[serde(rename = "oauth2", skip_serializing_if = "Option::is_none")]
pub oauth2: Option<Box<models::IdentityProviderOauth2Configuration>>,
#[serde(rename = "postRequest", skip_serializing_if = "Option::is_none")]
pub post_request: Option<bool>,
#[serde(rename = "data", skip_serializing_if = "Option::is_none")]
pub data: Option<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "applicationConfiguration", skip_serializing_if = "Option::is_none")]
pub application_configuration: Option<std::collections::HashMap<String, models::OpenIdConnectApplicationConfiguration>>,
#[serde(rename = "debug", skip_serializing_if = "Option::is_none")]
pub debug: Option<bool>,
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<uuid::Uuid>,
#[serde(rename = "insertInstant", skip_serializing_if = "Option::is_none")]
pub insert_instant: Option<i64>,
#[serde(rename = "lambdaConfiguration", skip_serializing_if = "Option::is_none")]
pub lambda_configuration: Option<Box<models::ProviderLambdaConfiguration>>,
#[serde(rename = "lastUpdateInstant", skip_serializing_if = "Option::is_none")]
pub last_update_instant: Option<i64>,
#[serde(rename = "linkingStrategy", skip_serializing_if = "Option::is_none")]
pub linking_strategy: Option<models::IdentityProviderLinkingStrategy>,
#[serde(rename = "name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "tenantConfiguration", skip_serializing_if = "Option::is_none")]
pub tenant_configuration: Option<std::collections::HashMap<String, models::IdentityProviderTenantConfiguration>>,
#[serde(rename = "tenantId", skip_serializing_if = "Option::is_none")]
pub tenant_id: Option<uuid::Uuid>,
#[serde(rename = "type", skip_serializing_if = "Option::is_none")]
pub r#type: Option<models::IdentityProviderType>,
}
impl OpenIdConnectIdentityProvider {
pub fn new() -> OpenIdConnectIdentityProvider {
OpenIdConnectIdentityProvider {
domains: None,
button_image_url: None,
button_text: None,
oauth2: None,
post_request: None,
data: None,
application_configuration: None,
debug: None,
id: None,
insert_instant: None,
lambda_configuration: None,
last_update_instant: None,
linking_strategy: None,
name: None,
tenant_configuration: None,
tenant_id: None,
r#type: None,
}
}
}