pub mod erc20;
pub mod multicall;
use df_hyperliquid_core::client::evm::BadAmount;
use crate::U256;
use crate::client::Call;
use crate::utils::{Address, Dec, wei};
pub const PERMIT2: Address = match Address::parse_const("0x000000000022D473030F116dDEE9F6B43aC78BA3") {
Some(address) => address,
None => Address::ZERO,
};
pub fn hype(to: Address, amount: Dec) -> Result<Call, BadAmount> {
if !amount.is_positive() {
return Err(BadAmount::NotPositive(amount));
}
Ok(hype_wei(to, wei(amount)?))
}
#[must_use]
pub fn hype_wei(to: Address, value: U256) -> Call {
Call { to: Some(to), value, data: Vec::new() }
}
#[cfg(test)]
#[path = "tests/transfer.rs"]
mod tests;