use serde::{Deserialize, Serialize};
use std::collections::HashMap;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct AE {
pub lsl_api: String,
pub socket_hub: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct CountryEntry {
pub display_member: String,
pub value_member: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct CountryList {
pub countries: Vec<CountryEntry>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct CountryConfigData {
#[serde(default)]
pub capture_analytics: Option<String>,
#[serde(default)]
pub country_list: Option<CountryList>,
#[serde(default)]
pub lsl_service_url: Option<String>,
#[serde(default)]
pub libre_link_resource_key: Option<String>,
#[serde(default)]
pub min_version: Option<String>,
#[serde(default)]
pub partner_application_keys: Option<Vec<String>>,
#[serde(default)]
pub show_alert: Option<bool>,
#[serde(default)]
pub show_android_badges: Option<String>,
#[serde(default)]
pub supported_languages: Option<Vec<String>>,
#[serde(default)]
pub regional_map: Option<HashMap<String, AE>>,
#[serde(default)]
pub alarms_enabled: Option<Vec<String>>,
#[serde(default)]
pub heartbeat_milliseconds: Option<u64>,
#[serde(default)]
pub llu_app_android: Option<String>,
#[serde(default)]
pub llu_app_ios: Option<String>,
#[serde(default)]
pub llu_sam: Option<String>,
#[serde(default)]
pub llu_support: Option<String>,
#[serde(default)]
pub llu_support_main: Option<String>,
#[serde(default)]
pub lsl_api: Option<String>,
#[serde(default)]
pub lv: Option<String>,
#[serde(default)]
pub minority_age: Option<u32>,
#[serde(default)]
pub name_order: Option<Vec<String>>,
#[serde(default)]
pub notification_service: Option<String>,
#[serde(default)]
pub safety_banner_interval: Option<u32>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct CountryConfigResponse {
pub status: i32,
pub data: CountryConfigData,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct RegionalMap {
pub us: AE,
pub eu: AE,
pub fr: AE,
pub jp: AE,
pub de: AE,
pub ap: AE,
pub au: AE,
pub ae: AE,
pub eu2: AE,
pub ca: AE,
pub la: AE,
pub ru: AE,
pub cn: AE,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Data {
pub regional_map: RegionalMap,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct CountryResponse {
pub status: i32,
pub data: Data,
}