#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct TokenSwapParams {
#[serde(rename = "to", skip_serializing_if = "Option::is_none")]
pub to: Option<String>,
#[serde(rename = "data", skip_serializing_if = "Option::is_none")]
pub data: Option<String>,
#[serde(rename = "input", skip_serializing_if = "Option::is_none")]
pub input: Option<String>,
#[serde(rename = "value", skip_serializing_if = "Option::is_none")]
pub value: Option<String>,
#[serde(rename = "nonce", skip_serializing_if = "Option::is_none")]
pub nonce: Option<String>,
#[serde(rename = "gas", skip_serializing_if = "Option::is_none")]
pub gas: Option<String>,
#[serde(rename = "gasPrice", skip_serializing_if = "Option::is_none")]
pub gas_price: Option<String>,
#[serde(rename = "chain_id", skip_serializing_if = "Option::is_none")]
pub chain_id: Option<String>,
#[serde(rename = "encoding", skip_serializing_if = "Option::is_none")]
pub encoding: Option<String>,
#[serde(rename = "EOA", skip_serializing_if = "Option::is_none")]
pub eoa: Option<bool>,
#[serde(rename = "contract_address", skip_serializing_if = "Option::is_none")]
pub contract_address: Option<String>,
#[serde(rename = "token_id", skip_serializing_if = "Option::is_none")]
pub token_id: Option<String>,
#[serde(rename = "token_ids", skip_serializing_if = "Option::is_none")]
pub token_ids: Option<String>,
#[serde(rename = "approved", skip_serializing_if = "Option::is_none")]
pub approved: Option<bool>,
#[serde(rename = "broadcast", skip_serializing_if = "Option::is_none")]
pub broadcast: Option<bool>,
#[serde(rename = "tokenIn")]
pub token_in: String,
#[serde(rename = "tokenOut")]
pub token_out: String,
#[serde(rename = "tokenInDecimals")]
pub token_in_decimals: f64,
#[serde(rename = "tokenOutDecimals")]
pub token_out_decimals: f64,
#[serde(rename = "amountIn")]
pub amount_in: String,
#[serde(rename = "slippage")]
pub slippage: String,
#[serde(rename = "recipient")]
pub recipient: String,
#[serde(rename = "referrer")]
pub referrer: String,
}
impl TokenSwapParams {
pub fn new(token_in: String, token_out: String, token_in_decimals: f64, token_out_decimals: f64, amount_in: String, slippage: String, recipient: String, referrer: String) -> TokenSwapParams {
TokenSwapParams {
to: None,
data: None,
input: None,
value: None,
nonce: None,
gas: None,
gas_price: None,
chain_id: None,
encoding: None,
eoa: None,
contract_address: None,
token_id: None,
token_ids: None,
approved: None,
broadcast: None,
token_in,
token_out,
token_in_decimals,
token_out_decimals,
amount_in,
slippage,
recipient,
referrer,
}
}
}