use serde::{Deserialize, Serialize};
use rust_decimal::Decimal;
use chrono::{DateTime, Utc};
use super::{PageDetails, ApiErrorDetail};
#[derive(Debug, Deserialize, Serialize)]
pub struct DepositDetails {
#[serde(rename = "deposit_id")]
pub deposit_id: i64, pub address: String, #[serde(rename = "recipient_purpose")]
pub recipient_purpose: Option<String>, #[serde(with = "rust_decimal::serde::str")] pub amount: Decimal, pub state: i32, pub txid: String, pub confirmations: i32, #[serde(rename = "created_at")]
pub created_at: DateTime<Utc>, }
#[derive(Debug, Deserialize, Serialize)]
pub struct ShowDepositResponse {
pub deposit: DepositDetails, pub errors: Vec<ApiErrorDetail>, pub credits: i32,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct ShowDepositsResponse {
pub deposits: Vec<DepositDetails>, pub page: PageDetails, pub errors: Vec<ApiErrorDetail>, pub credits: i32,
}
#[derive(Debug, Deserialize, Serialize)]
pub struct RequestDepositAddressResponse {
pub address: String, #[serde(rename = "recipient_purpose")]
pub recipient_purpose: Option<String>, pub errors: Vec<ApiErrorDetail>, pub credits: i32,
}