use serde::{Deserialize, Serialize};
use super::authentication_source::AuthenticationSource;
#[derive(Clone, Debug, Default, PartialEq, Deserialize, Serialize)]
pub struct WhoamiOut {
#[serde(rename = "appId")]
#[serde(skip_serializing_if = "Option::is_none")]
pub app_id: Option<String>,
#[serde(rename = "envId")]
#[serde(skip_serializing_if = "Option::is_none")]
pub env_id: Option<String>,
#[serde(rename = "permissionSource")]
pub permission_source: AuthenticationSource,
#[serde(rename = "sessionId")]
#[serde(skip_serializing_if = "Option::is_none")]
pub session_id: Option<String>,
#[serde(rename = "streamAppId")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stream_app_id: Option<String>,
}
impl WhoamiOut {
pub fn new(permission_source: AuthenticationSource) -> Self {
Self {
app_id: None,
env_id: None,
permission_source,
session_id: None,
stream_app_id: None,
}
}
}