-
Notifications
You must be signed in to change notification settings - Fork 340
/
IKyberNetwork.sol
66 lines (57 loc) · 1.55 KB
/
IKyberNetwork.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
pragma solidity 0.6.6;
import "./IERC20.sol";
interface IKyberNetwork {
event KyberTrade(
IERC20 indexed src,
IERC20 indexed dest,
uint256 ethWeiValue,
uint256 networkFeeWei,
uint256 customPlatformFeeWei,
bytes32[] t2eIds,
bytes32[] e2tIds,
uint256[] t2eSrcAmounts,
uint256[] e2tSrcAmounts,
uint256[] t2eRates,
uint256[] e2tRates
);
function tradeWithHintAndFee(
address payable trader,
IERC20 src,
uint256 srcAmount,
IERC20 dest,
address payable destAddress,
uint256 maxDestAmount,
uint256 minConversionRate,
address payable platformWallet,
uint256 platformFeeBps,
bytes calldata hint
) external payable returns (uint256 destAmount);
function listTokenForReserve(
address reserve,
IERC20 token,
bool add
) external;
function enabled() external view returns (bool);
function getExpectedRateWithHintAndFee(
IERC20 src,
IERC20 dest,
uint256 srcQty,
uint256 platformFeeBps,
bytes calldata hint
)
external
view
returns (
uint256 expectedRateAfterNetworkFee,
uint256 expectedRateAfterAllFees
);
function getNetworkData()
external
view
returns (
uint256 negligibleDiffBps,
uint256 networkFeeBps,
uint256 expiryTimestamp
);
function maxGasPrice() external view returns (uint256);
}