midgard_rs/types/
member_pool.rs1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3use serde_aux::prelude::*;
4use serde_with::formats::Flexible;
5use serde_with::TimestampSeconds;
6
7#[serde_with::serde_as]
31#[derive(Debug, Serialize, Deserialize, Clone)]
32pub struct MemberPool {
33 #[serde(rename = "assetAdded", deserialize_with = "deserialize_number_from_string")]
34 asset_added: u64,
35
36 #[serde(rename = "assetAddress")]
37 asset_address: String,
38
39 #[serde(rename = "assetDeposit", deserialize_with = "deserialize_number_from_string")]
40 asset_deposit: u64,
41
42 #[serde(rename = "assetPending", deserialize_with = "deserialize_number_from_string")]
43 asset_pending: u64,
44
45 #[serde(rename = "assetWithdrawn", deserialize_with = "deserialize_number_from_string")]
46 asset_withdrawn: u64,
47
48 #[serde_as(as = "TimestampSeconds<String, Flexible>")]
49 #[serde(rename = "dateFirstAdded")]
50 date_first_added: DateTime<Utc>,
51
52 #[serde_as(as = "TimestampSeconds<String, Flexible>")]
53 #[serde(rename = "dateLastAdded")]
54 date_last_added: DateTime<Utc>,
55
56 #[serde(rename = "liquidityUnits", deserialize_with = "deserialize_number_from_string")]
57 liquidity_units: u64,
58
59 pool: String,
60
61 #[serde(rename = "runeAdded", deserialize_with = "deserialize_number_from_string")]
62 rune_added: u64,
63
64 #[serde(rename = "runeAddress")]
65 rune_address: String,
66
67 #[serde(rename = "runeDeposit", deserialize_with = "deserialize_number_from_string")]
68 rune_deposit: u64,
69
70 #[serde(rename = "runePending", deserialize_with = "deserialize_number_from_string")]
71 rune_pending: u64,
72
73 #[serde(rename = "runeWithdrawn", deserialize_with = "deserialize_number_from_string")]
74 rune_withdrawn: u64,
75}
76
77impl MemberPool {
78 #[must_use]
79 pub const fn get_asset_added(&self) -> &u64 {
80 &self.asset_added
81 }
82
83 #[must_use]
84 pub const fn get_asset_address(&self) -> &String {
85 &self.asset_address
86 }
87
88 #[must_use]
89 pub const fn get_asset_deposit(&self) -> &u64 {
90 &self.asset_deposit
91 }
92
93 #[must_use]
94 pub const fn get_asset_pending(&self) -> &u64 {
95 &self.asset_pending
96 }
97
98 #[must_use]
99 pub const fn get_asset_withdrawn(&self) -> &u64 {
100 &self.asset_withdrawn
101 }
102
103 #[must_use]
104 pub const fn get_date_first_added(&self) -> &DateTime<Utc> {
105 &self.date_first_added
106 }
107
108 #[must_use]
109 pub const fn get_date_last_added(&self) -> &DateTime<Utc> {
110 &self.date_last_added
111 }
112
113 #[must_use]
114 pub const fn get_liquidity_units(&self) -> &u64 {
115 &self.liquidity_units
116 }
117
118 #[must_use]
119 pub const fn get_pool(&self) -> &String {
120 &self.pool
121 }
122
123 #[must_use]
124 pub const fn get_rune_added(&self) -> &u64 {
125 &self.rune_added
126 }
127
128 #[must_use]
129 pub const fn get_rune_address(&self) -> &String {
130 &self.rune_address
131 }
132
133 #[must_use]
134 pub const fn get_rune_deposit(&self) -> &u64 {
135 &self.rune_deposit
136 }
137
138 #[must_use]
139 pub const fn get_rune_pending(&self) -> &u64 {
140 &self.rune_pending
141 }
142
143 #[must_use]
144 pub const fn get_rune_withdrawn(&self) -> &u64 {
145 &self.rune_withdrawn
146 }
147}