#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct CreateServerResponseServer {
#[serde(rename = "_id")]
pub _id: String,
#[serde(rename = "owner")]
pub owner: String,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "channels")]
pub channels: Vec<String>,
#[serde(rename = "categories", skip_serializing_if = "Option::is_none")]
pub categories: Option<Vec<crate::models::Category>>,
#[serde(rename = "system_messages", skip_serializing_if = "Option::is_none")]
pub system_messages: Option<Box<crate::models::ServerSystemMessages>>,
#[serde(rename = "roles", skip_serializing_if = "Option::is_none")]
pub roles: Option<::std::collections::HashMap<String, crate::models::Role>>,
#[serde(rename = "default_permissions")]
pub default_permissions: i64,
#[serde(rename = "icon", skip_serializing_if = "Option::is_none")]
pub icon: Option<Box<crate::models::ServerIcon>>,
#[serde(rename = "banner", skip_serializing_if = "Option::is_none")]
pub banner: Option<Box<crate::models::ServerBanner>>,
#[serde(rename = "flags", skip_serializing_if = "Option::is_none")]
pub flags: Option<i32>,
#[serde(rename = "nsfw", skip_serializing_if = "Option::is_none")]
pub nsfw: Option<bool>,
#[serde(rename = "analytics", skip_serializing_if = "Option::is_none")]
pub analytics: Option<bool>,
#[serde(rename = "discoverable", skip_serializing_if = "Option::is_none")]
pub discoverable: Option<bool>,
}
impl CreateServerResponseServer {
pub fn new(_id: String, owner: String, name: String, channels: Vec<String>, default_permissions: i64) -> CreateServerResponseServer {
CreateServerResponseServer {
_id,
owner,
name,
description: None,
channels,
categories: None,
system_messages: None,
roles: None,
default_permissions,
icon: None,
banner: None,
flags: None,
nsfw: None,
analytics: None,
discoverable: None,
}
}
}