#![cfg(feature = "serialize")]
use serde::{Deserialize, Serialize};
#[derive(Debug, Deserialize, Serialize)]
pub struct AccountInfo {
#[serde(rename = "SendPasswordUrl")]
pub send_password_url: String,
#[serde(rename = "SignInUrl")]
pub sign_in_url: String,
#[serde(rename = "SignUpUrl")]
pub sign_up_url: String,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct GameInfo {
#[serde(rename = "AuthenticationUrl")]
pub authentication_url: String,
#[serde(rename = "ClientUrl")]
pub client_url: String,
#[serde(rename = "CrashLogUrl")]
pub crash_log_url: String,
#[serde(rename = "LauncherUrl")]
pub launcher_url: String,
#[serde(rename = "LauncherUrl2")]
pub launcher_url2: String,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct PatcherInfo {
#[serde(rename = "CiderUrl")]
pub cider_url: String,
#[serde(rename = "ConfigUrl")]
pub config_url: String,
#[serde(rename = "InstallUrl")]
pub install_url: String,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct CdnInfo {
#[serde(rename = "CpCode")]
pub cp_code: i32,
#[serde(rename = "PatcherDir")]
pub patcher_dir: String,
#[serde(rename = "PatcherUrl")]
pub patcher_url: String,
#[serde(rename = "Secure")]
pub secure: bool,
#[serde(rename = "UseDlm")]
pub use_dlm: bool,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct Server {
#[serde(rename = "AuthenticationIP")]
pub authentication_ip: String,
#[serde(rename = "CdnInfo")]
pub cdn_info: CdnInfo,
#[serde(rename = "CrispInfo")]
pub crisp_info: String,
#[serde(rename = "DataCenterId")]
pub data_center_id: u32,
#[serde(rename = "GameApiUrl")]
pub game_api_url: String,
#[serde(rename = "GameContentApiUrl")]
pub game_content_api_url: String,
#[serde(rename = "Language")]
pub language: String,
#[serde(rename = "LogLevel")]
pub log_level: i32,
#[serde(rename = "MetricsDataServiceUrl")]
pub metrics_data_service_url: String,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Online")]
pub online: bool,
#[serde(rename = "Suggested")]
pub suggested: bool,
#[serde(rename = "UGCControllerServicesUrl")]
pub ugc_controller_services_url: String,
#[serde(rename = "UgcCdnInfo")]
pub ugc_cdn_info: CdnInfo,
#[serde(rename = "Use3DServices")]
pub use3d_services: bool,
#[serde(rename = "Version")]
pub version: String,
#[serde(rename = "VersionDirType")]
pub version_dir_type: String,
#[serde(rename = "WebApiUrl")]
pub web_api_url: String,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct Servers {
#[serde(rename = "Server")]
pub servers: Vec<Server>,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct Environment {
#[serde(rename = "AccountInfo")]
pub account_info: AccountInfo,
#[serde(rename = "GameInfo")]
pub game_info: GameInfo,
#[serde(rename = "PatcherInfo")]
pub patcher_info: PatcherInfo,
#[serde(rename = "Servers")]
pub servers: Servers,
}