2022-06-30 23:43:20 +00:00
|
|
|
//SPDX-License-Identifier: MIT
|
|
|
|
pragma solidity ^0.7.0;
|
2022-07-05 13:03:47 +00:00
|
|
|
pragma experimental ABIEncoderV2;
|
2022-06-30 23:43:20 +00:00
|
|
|
|
|
|
|
interface IEulerMarkets {
|
2022-07-06 13:40:38 +00:00
|
|
|
function enterMarket(uint256 subAccountId, address newMarket) external;
|
|
|
|
|
|
|
|
function getEnteredMarkets(address account)
|
|
|
|
external
|
|
|
|
view
|
|
|
|
returns (address[] memory);
|
|
|
|
|
|
|
|
function exitMarket(uint256 subAccountId, address oldMarket) external;
|
|
|
|
|
|
|
|
function underlyingToEToken(address underlying)
|
|
|
|
external
|
|
|
|
view
|
|
|
|
returns (address);
|
|
|
|
|
|
|
|
function underlyingToDToken(address underlying)
|
|
|
|
external
|
|
|
|
view
|
|
|
|
returns (address);
|
2022-06-30 23:43:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
interface IEulerEToken {
|
2022-07-06 13:40:38 +00:00
|
|
|
function deposit(uint256 subAccountId, uint256 amount) external;
|
|
|
|
|
|
|
|
function withdraw(uint256 subAccountId, uint256 amount) external;
|
|
|
|
|
|
|
|
function decimals() external view returns (uint8);
|
|
|
|
|
|
|
|
function mint(uint256 subAccountId, uint256 amount) external;
|
|
|
|
|
|
|
|
function burn(uint256 subAccountId, uint256 amount) external;
|
|
|
|
|
|
|
|
function balanceOf(address account) external view returns (uint256);
|
|
|
|
|
2022-08-10 20:37:03 +00:00
|
|
|
function balanceOfUnderlying(address account) external view returns (uint);
|
|
|
|
|
2022-08-06 19:40:43 +00:00
|
|
|
function transferFrom(address from, address to, uint amount) external returns (bool);
|
2022-07-06 13:40:38 +00:00
|
|
|
|
|
|
|
function approve(address spender, uint256 amount) external returns (bool);
|
2022-06-30 23:43:20 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
interface IEulerDToken {
|
2022-07-06 13:40:38 +00:00
|
|
|
function underlyingToDToken(address underlying)
|
|
|
|
external
|
|
|
|
view
|
|
|
|
returns (address);
|
|
|
|
|
|
|
|
function decimals() external view returns (uint8);
|
|
|
|
|
|
|
|
function borrow(uint256 subAccountId, uint256 amount) external;
|
|
|
|
|
|
|
|
function repay(uint256 subAccountId, uint256 amount) external;
|
|
|
|
|
|
|
|
function balanceOf(address account) external view returns (uint256);
|
|
|
|
|
2022-08-06 19:40:43 +00:00
|
|
|
function transferFrom(address from, address to, uint amount) external returns (bool);
|
2022-07-06 13:40:38 +00:00
|
|
|
|
|
|
|
function approveDebt(
|
|
|
|
uint256 subAccountId,
|
|
|
|
address spender,
|
|
|
|
uint256 amount
|
|
|
|
) external returns (bool);
|
2022-06-30 23:43:20 +00:00
|
|
|
}
|