1use ureq::{Error};
2use crate::client::Client;
3use serde::{Deserialize};
4
5#[derive(Deserialize)]
6pub struct BalanceResponse {
7 amount: f32,
8 currency: String,
9}
10
11pub struct Balance {
12 client: Client
13}
14
15impl Balance {
16 pub fn new(client: Client) -> Self {
17 Balance {
18 client,
19 }
20 }
21
22 pub fn get(&self) -> Result<f64, Error> {
23 let res = self.client.request("GET", "balance")
24 .call()?
25 .into_json::<f64>()?;
26 Ok(res)
27 }
28
29 pub fn json(&self) -> Result<BalanceResponse, Error> {
30 let res = self.client.request("GET", "balance")
31 .set("Accept", "application/json")
32 .call()?
33 .into_json::<BalanceResponse>()?;
34 Ok(res)
35 }
36}