use one_inch::swap::approve::*;
use one_inch::client::{self, SupportedNetworks};
#[tokio::main]
async fn main() {
let network_id = SupportedNetworks::BSC;
let token = env!("ONE_INCH_API_TOKEN");
let client = client::new_with_default_http(token.into(), network_id);
let allowance_details = AllowanceDetailsBuilder::new()
.wallet_address("0x30A557351eab496FD69F537BE1F8c744A18F94Fd".into())
.token_address("0x55d398326f99059ff775485246999027b3197955".into())
.build()
.unwrap();
let allowance = client
.get_allowance(allowance_details.clone())
.await
.map_err(|e| {
eprintln!("Error while getting allowance : {}", e)
})
.unwrap();
println!(
"Allowance of token {} on account {} in network {:?} is : {} ",
allowance_details.token_address,
allowance_details.wallet_address,
network_id,
allowance.allowance
)
}