mempool_api/
models.rs

1use serde::{Serialize, Deserialize};
2
3#[derive(Deserialize, Debug)]
4pub struct Response {
5    pub coins: Vec<Coin>,
6}
7
8/*
9 * The #[serde(rename = "name")] attribute is used to rename the field name
10 * to match the JSON field name.
11 */
12#[derive(Deserialize, Serialize, Debug)]
13#[serde(rename_all = "camelCase")]
14pub struct Coin {
15    pub id: String,
16    pub name: String,
17    pub icon: String,
18    pub symbol: String,
19    pub price: f32,
20    pub price_btc: f64,
21}
22#[derive(Deserialize, Serialize, Debug)]
23pub struct Mempool {
24    pub count: u32,
25    pub vsize: u32,
26    pub total_fee: u32,
27    pub fee_histogram: Vec<FeeHistogram>,
28}
29
30#[derive(Deserialize, Serialize, Debug)]
31pub struct FeeHistogram {
32    pub a: f32,
33    pub b: u32,
34}
35
36#[derive(Deserialize, Serialize, Debug)]
37#[serde(rename_all = "camelCase")]
38pub struct RecommendedFees {
39    pub fastest_fee: u32,
40    pub half_hour_fee: u32,
41    pub hour_fee: u32,
42    pub economy_fee: u32,
43    pub minimum_fee: u32,
44}