use crate::models;
use serde::{Deserialize, Serialize};
#[serde_with::serde_as]
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct MutualFriend {
#[serde(rename = "bannerColor", skip_serializing_if = "Option::is_none")]
pub banner_color: Option<String>,
#[serde(rename = "bannerType", skip_serializing_if = "Option::is_none")]
pub banner_type: Option<models::BannerType>,
#[serde(rename = "bannerUrl", skip_serializing_if = "Option::is_none")]
pub banner_url: Option<String>,
#[serde(rename = "displayName")]
pub display_name: String,
#[serde(rename = "iconFrame", skip_serializing_if = "Option::is_none")]
pub icon_frame: Option<String>,
#[serde(rename = "iconUrl", skip_serializing_if = "Option::is_none")]
pub icon_url: Option<String>,
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "nameplateEffect", skip_serializing_if = "Option::is_none")]
pub nameplate_effect: Option<String>,
#[serde(rename = "profileEffect", skip_serializing_if = "Option::is_none")]
pub profile_effect: Option<String>,
#[serde(rename = "status")]
pub status: models::UserStatus,
#[serde(rename = "statusDescription")]
pub status_description: String,
}
impl MutualFriend {
pub fn new(
display_name: String,
id: String,
status: models::UserStatus,
status_description: String,
) -> MutualFriend {
MutualFriend {
banner_color: None,
banner_type: None,
banner_url: None,
display_name,
icon_frame: None,
icon_url: None,
id,
nameplate_effect: None,
profile_effect: None,
status,
status_description,
}
}
}