bw-web-api-rs 0.2.8

A Rust client for the StarCraft: Remastered API
Documentation
use super::common::{Avatar, ReplayAttributes, WinStats};
use serde::{Deserialize, Serialize};
use std::collections::HashMap;

#[derive(Debug, Serialize, Deserialize)]
pub struct MatchmakerPlayerStats {
    pub game_mode_id: u32,
    pub losses: u32,
    pub min_games: u32,
    pub season_id: u32,
    pub total_games: u32,
    pub wins: u32,
}

#[derive(Debug, Serialize, Deserialize)]
pub struct MatchmakerPlayerScore {
    pub base: i32,
    pub bucket_new: i32,
    pub bucket_old: i32,
    pub current_stat_bucket: i32,
    pub current_stat_losses: i32,
    pub current_stat_wins: i32,
    pub delta: i32,
    pub season_id: i32,
    pub win_streak: i32,
}

#[derive(Debug, Serialize, Deserialize)]
pub struct MatchmakerReplay {
    pub attributes: ReplayAttributes,
    pub create_time: u64,
    pub link: String,
    pub md5: String,
    pub url: String,
}

#[derive(Debug, Serialize, Deserialize)]
pub struct MatchmakerPlayerInfoPlayer {
    pub aurora_id: u64,
    pub benefactor_id: String,
    pub game_info: super::matchmaker_game_info::GameInfo,
    pub game_result: super::matchmaker_game_info::MatchmakerGameResult,
    pub gateway_id: crate::types::Gateway,
    pub info_attributes: super::matchmaker_game_info::PlayerInfoAttributes,
    pub matching_attributes: HashMap<String, String>,
    pub name: String,
    pub score: MatchmakerPlayerScore,
}

#[derive(Debug, Serialize, Deserialize)]
pub struct MatchmakerPlayerInfo {
    pub avatars: HashMap<String, String>,
    pub avatars_awards: HashMap<String, f64>,
    pub avatars_locked: HashMap<String, Avatar>,
    pub avatars_stats: HashMap<String, WinStats>,
    pub maps: Vec<String>,
    pub matchmaked_season_buckets: HashMap<String, Vec<i32>>,
    pub player_stats: Vec<MatchmakerPlayerStats>,
    pub players: HashMap<String, MatchmakerPlayerInfoPlayer>,
    pub replays: Vec<MatchmakerReplay>,
}