2022-01-20 17:18:25 +00:00
|
|
|
pragma solidity ^0.7.0;
|
|
|
|
|
2022-01-20 17:40:44 +00:00
|
|
|
import { TokenInterface } from "../../common/interfaces.sol";
|
2022-01-20 17:18:25 +00:00
|
|
|
|
|
|
|
interface OneInchInterace {
|
|
|
|
function swap(
|
|
|
|
TokenInterface fromToken,
|
|
|
|
TokenInterface toToken,
|
|
|
|
uint256 fromTokenAmount,
|
|
|
|
uint256 minReturnAmount,
|
|
|
|
uint256 guaranteedAmount,
|
|
|
|
address payable referrer,
|
|
|
|
address[] calldata callAddresses,
|
|
|
|
bytes calldata callDataConcat,
|
|
|
|
uint256[] calldata starts,
|
|
|
|
uint256[] calldata gasLimitsAndValues
|
|
|
|
)
|
|
|
|
external
|
|
|
|
payable
|
|
|
|
returns (uint256 returnAmount);
|
|
|
|
}
|
|
|
|
|
|
|
|
struct OneInchData {
|
|
|
|
TokenInterface sellToken;
|
|
|
|
TokenInterface buyToken;
|
|
|
|
uint _sellAmt;
|
|
|
|
uint _buyAmt;
|
|
|
|
uint unitAmt;
|
|
|
|
bytes callData;
|
|
|
|
}
|