cs2_gsi/model/
tournament.rs1use super::helpers::{de_num_or_str, de_opt_num_or_str};
4use serde::{Deserialize, Serialize};
5
6#[derive(Clone, Debug, Default, Deserialize, Serialize, PartialEq)]
8pub struct PhaseCountdowns {
9 #[serde(default, rename = "phase")]
11 pub phase: String,
12 #[serde(default, deserialize_with = "de_num_or_str", rename = "phase_ends_in")]
14 pub phase_ends_in: f32,
15}
16
17#[derive(Clone, Debug, Default, Deserialize, Serialize, PartialEq, Eq)]
19pub struct TournamentDraft {
20 #[serde(default, rename = "state")]
22 pub state: String,
23 #[serde(default, deserialize_with = "de_opt_num_or_str", rename = "event_id")]
25 pub event_id: Option<u64>,
26 #[serde(default, deserialize_with = "de_opt_num_or_str", rename = "stage_id")]
28 pub stage_id: Option<u64>,
29 #[serde(
31 default,
32 deserialize_with = "de_opt_num_or_str",
33 rename = "first_team_id"
34 )]
35 pub first_team_id: Option<u64>,
36 #[serde(
38 default,
39 deserialize_with = "de_opt_num_or_str",
40 rename = "second_team_id"
41 )]
42 pub second_team_id: Option<u64>,
43 #[serde(default, rename = "event")]
45 pub event: String,
46 #[serde(default, rename = "stage")]
48 pub stage: String,
49 #[serde(default, rename = "first_team_name")]
51 pub first_team_name: String,
52 #[serde(default, rename = "second_team_name")]
54 pub second_team_name: String,
55}