poe_types/
ladder.rs

1use serde::{Deserialize, Serialize};
2
3use super::account::Account;
4
5#[derive(Debug, Default, Clone, Deserialize, Serialize)]
6pub struct LadderEntry {
7    pub rank: usize,
8    pub dead: Option<bool>,
9    pub retired: Option<bool>,
10    pub ineligible: Option<bool>,
11    pub public: Option<bool>,
12    pub character: LadderCharacter,
13    pub account: Option<Account>,
14}
15
16#[derive(Debug, Default, Clone, Deserialize, Serialize)]
17pub struct LadderCharacter {
18    pub id: String,
19    pub name: String,
20    pub level: usize,
21    pub class: String,
22    pub time: Option<usize>,
23    pub score: Option<usize>,
24    pub experience: Option<usize>,
25    pub depth: Option<DelveLadderEntry>,
26    pub account: Option<Account>,
27}
28
29#[derive(Debug, Default, Clone, Deserialize, Serialize)]
30pub struct DelveLadderEntry {
31    pub default: Option<usize>,
32    pub solo: Option<usize>,
33}
34
35#[derive(Debug, Default, Clone, Deserialize, Serialize)]
36pub struct EventLadderEntry {
37    pub rank: usize,
38    pub ineligible: Option<bool>,
39    pub time: Option<usize>,
40    pub private_league: Option<EventPrivateLeague>,
41}
42
43#[derive(Debug, Default, Clone, Deserialize, Serialize)]
44pub struct EventPrivateLeague {
45    pub name: String,
46    pub url: String,
47}