use rust_decimal::Decimal;
use serde::{Deserialize, Serialize};
use crate::QuoteWarning;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct QuoteTransaction {
from: String,
to: String,
value: String,
data: String,
gas: String,
#[serde(rename = "gasPrice", serialize_with = "rust_decimal::serde::str::serialize", deserialize_with = "rust_decimal::serde::float::deserialize")]
gas_price: Decimal,
}
impl QuoteTransaction {
#[must_use]
pub const fn get_from(&self) -> &String {
&self.from
}
#[must_use]
pub const fn get_to(&self) -> &String {
&self.to
}
#[must_use]
pub const fn get_value(&self) -> &String {
&self.value
}
#[must_use]
pub const fn get_data(&self) -> &String {
&self.data
}
#[must_use]
pub const fn get_gas(&self) -> &String {
&self.gas
}
#[must_use]
pub const fn get_gas_price(&self) -> Decimal {
self.gas_price
}
}
#[allow(clippy::module_name_repetitions)]
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum QuoteTransactionEnum {
QuoteTransaction(QuoteTransaction),
QuoteWarning(Vec<QuoteWarning>),
}