use reqwest::Method;
use crate::client::Client;
use crate::error::VynFiError;
use crate::types::*;
pub struct Usage<'a> {
client: &'a Client,
}
impl<'a> Usage<'a> {
pub(crate) fn new(client: &'a Client) -> Self {
Self { client }
}
pub async fn summary(&self, days: Option<i32>) -> Result<UsageSummary, VynFiError> {
match days {
Some(d) => {
let params = [("days", d.to_string())];
self.client
.request_with_params(Method::GET, "/v1/usage/summary", ¶ms)
.await
}
None => self.client.request(Method::GET, "/v1/usage/summary").await,
}
}
pub async fn daily(&self, days: Option<i32>) -> Result<DailyUsageResponse, VynFiError> {
match days {
Some(d) => {
let params = [("days", d.to_string())];
self.client
.request_with_params(Method::GET, "/v1/usage/daily", ¶ms)
.await
}
None => self.client.request(Method::GET, "/v1/usage/daily").await,
}
}
}