#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Profile {
pub object: String,
pub id: String,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub organization_id: Option<String>,
pub connection_id: String,
pub connection_type: ProfileConnectionType,
pub idp_id: String,
pub email: String,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub first_name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub last_name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub role: Option<SlimRole>,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub roles: Option<Vec<SlimRole>>,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub groups: Option<Vec<String>>,
#[serde(skip_serializing_if = "Option::is_none", default)]
pub custom_attributes: Option<std::collections::HashMap<String, serde_json::Value>>,
pub raw_attributes: std::collections::HashMap<String, serde_json::Value>,
}