use serde_derive::{Deserialize, Serialize};
use crate::resources::{Discount, TaxRate};
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct QuotesResourceTotalDetails {
pub amount_discount: i64,
#[serde(skip_serializing_if = "Option::is_none")]
pub amount_shipping: Option<Box<i64>>,
pub amount_tax: i64,
#[serde(skip_serializing_if = "Option::is_none")]
pub breakdown: Option<Box<QuotesResourceTotalDetailsResourceBreakdown>>,
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct QuotesResourceTotalDetailsResourceBreakdown {
pub discounts: Vec<LineItemsDiscountAmount>,
pub taxes: Vec<LineItemsTaxAmount>,
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct LineItemsDiscountAmount {
pub amount: i64,
pub discount: Discount,
}
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct LineItemsTaxAmount {
pub amount: i64,
pub rate: TaxRate,
}