2020-11-23 22:33:23 +08:00
|
|
|
/*
|
|
|
|
|
|
|
|
|
|
Copyright 2020 DODO ZOO.
|
|
|
|
|
SPDX-License-Identifier: Apache-2.0
|
|
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
pragma solidity 0.6.9;
|
|
|
|
|
pragma experimental ABIEncoderV2;
|
|
|
|
|
|
2020-11-30 12:36:59 +08:00
|
|
|
|
2021-01-10 15:48:54 +08:00
|
|
|
interface IDODOV2Proxy01 {
|
2020-12-01 01:47:22 +08:00
|
|
|
function dodoSwapV2ETHToToken(
|
2020-11-23 22:33:23 +08:00
|
|
|
address toToken,
|
|
|
|
|
uint256 minReturnAmount,
|
|
|
|
|
address[] memory dodoPairs,
|
2020-12-30 12:23:52 +08:00
|
|
|
uint256 directions,
|
2021-01-08 17:19:23 +08:00
|
|
|
bool isIncentive,
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
2020-11-23 22:33:23 +08:00
|
|
|
) external payable returns (uint256 returnAmount);
|
|
|
|
|
|
2020-12-01 01:47:22 +08:00
|
|
|
function dodoSwapV2TokenToETH(
|
2020-11-26 21:03:36 +08:00
|
|
|
address fromToken,
|
|
|
|
|
uint256 fromTokenAmount,
|
|
|
|
|
uint256 minReturnAmount,
|
|
|
|
|
address[] memory dodoPairs,
|
2020-12-30 12:23:52 +08:00
|
|
|
uint256 directions,
|
2021-01-08 17:19:23 +08:00
|
|
|
bool isIncentive,
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
2020-11-26 21:03:36 +08:00
|
|
|
) external returns (uint256 returnAmount);
|
|
|
|
|
|
2020-12-01 01:47:22 +08:00
|
|
|
function dodoSwapV2TokenToToken(
|
2020-11-26 21:03:36 +08:00
|
|
|
address fromToken,
|
|
|
|
|
address toToken,
|
|
|
|
|
uint256 fromTokenAmount,
|
|
|
|
|
uint256 minReturnAmount,
|
|
|
|
|
address[] memory dodoPairs,
|
2020-12-30 12:23:52 +08:00
|
|
|
uint256 directions,
|
2021-01-08 17:19:23 +08:00
|
|
|
bool isIncentive,
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
2020-11-26 21:03:36 +08:00
|
|
|
) external returns (uint256 returnAmount);
|
|
|
|
|
|
2020-11-23 22:33:23 +08:00
|
|
|
function createDODOVendingMachine(
|
|
|
|
|
address baseToken,
|
|
|
|
|
address quoteToken,
|
|
|
|
|
uint256 baseInAmount,
|
|
|
|
|
uint256 quoteInAmount,
|
|
|
|
|
uint256 lpFeeRate,
|
|
|
|
|
uint256 i,
|
|
|
|
|
uint256 k,
|
2021-01-19 17:10:46 +08:00
|
|
|
bool isOpenTWAP,
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
2020-11-28 17:44:39 +08:00
|
|
|
) external payable returns (address newVendingMachine, uint256 shares);
|
2020-11-23 22:33:23 +08:00
|
|
|
|
|
|
|
|
function addDVMLiquidity(
|
2020-12-01 01:47:22 +08:00
|
|
|
address dvmAddress,
|
2020-11-26 21:03:36 +08:00
|
|
|
uint256 baseInAmount,
|
|
|
|
|
uint256 quoteInAmount,
|
|
|
|
|
uint256 baseMinAmount,
|
|
|
|
|
uint256 quoteMinAmount,
|
2020-11-28 17:44:39 +08:00
|
|
|
uint8 flag, // 0 - ERC20, 1 - baseInETH, 2 - quoteInETH
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
2020-11-28 17:44:39 +08:00
|
|
|
)
|
|
|
|
|
external
|
|
|
|
|
payable
|
|
|
|
|
returns (
|
|
|
|
|
uint256 shares,
|
|
|
|
|
uint256 baseAdjustedInAmount,
|
|
|
|
|
uint256 quoteAdjustedInAmount
|
|
|
|
|
);
|
2020-11-23 22:33:23 +08:00
|
|
|
|
|
|
|
|
function createDODOPrivatePool(
|
|
|
|
|
address baseToken,
|
|
|
|
|
address quoteToken,
|
|
|
|
|
uint256 baseInAmount,
|
|
|
|
|
uint256 quoteInAmount,
|
2020-11-24 17:25:10 +08:00
|
|
|
uint256 lpFeeRate,
|
|
|
|
|
uint256 i,
|
|
|
|
|
uint256 k,
|
2021-01-19 17:10:46 +08:00
|
|
|
bool isOpenTwap,
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
2020-11-23 22:33:23 +08:00
|
|
|
) external payable returns (address newPrivatePool);
|
|
|
|
|
|
|
|
|
|
function resetDODOPrivatePool(
|
2020-12-01 01:47:22 +08:00
|
|
|
address dppAddress,
|
2020-12-30 18:41:13 +08:00
|
|
|
uint256[] memory paramList, //0 - newLpFeeRate, 1 - newI, 2 - newK
|
2020-12-18 11:27:45 +08:00
|
|
|
uint256[] memory amountList, //0 - baseInAmount, 1 - quoteInAmount, 2 - baseOutAmount, 3 - quoteOutAmount
|
2020-11-28 17:44:39 +08:00
|
|
|
uint8 flag, // 0 - ERC20, 1 - baseInETH, 2 - quoteInETH, 3 - baseOutETH, 4 - quoteOutETH
|
2020-12-18 11:27:45 +08:00
|
|
|
uint256 minBaseReserve,
|
|
|
|
|
uint256 minQuoteReserve,
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
2020-11-23 22:33:23 +08:00
|
|
|
) external payable;
|
|
|
|
|
|
2020-12-14 01:22:30 +08:00
|
|
|
|
|
|
|
|
function bid(
|
|
|
|
|
address cpAddress,
|
|
|
|
|
uint256 quoteAmount,
|
|
|
|
|
uint8 flag, // 0 - ERC20, 1 - quoteInETH
|
|
|
|
|
uint256 deadLine
|
|
|
|
|
) external payable;
|
|
|
|
|
|
2020-12-01 01:47:22 +08:00
|
|
|
function addLiquidityToV1(
|
|
|
|
|
address pair,
|
|
|
|
|
uint256 baseAmount,
|
|
|
|
|
uint256 quoteAmount,
|
|
|
|
|
uint256 baseMinShares,
|
|
|
|
|
uint256 quoteMinShares,
|
2021-01-19 17:10:46 +08:00
|
|
|
uint8 flag, // 0 erc20 Out 1 baseInETH 2 quoteInETH
|
2020-12-01 01:47:22 +08:00
|
|
|
uint256 deadLine
|
|
|
|
|
) external payable returns(uint256, uint256);
|
2020-11-28 21:57:09 +08:00
|
|
|
|
2021-01-10 15:48:54 +08:00
|
|
|
function dodoSwapV1(
|
|
|
|
|
address fromToken,
|
|
|
|
|
address toToken,
|
|
|
|
|
uint256 fromTokenAmount,
|
|
|
|
|
uint256 minReturnAmount,
|
|
|
|
|
address[] memory dodoPairs,
|
|
|
|
|
uint256 directions,
|
|
|
|
|
bool isIncentive,
|
|
|
|
|
uint256 deadLine
|
|
|
|
|
) external payable returns (uint256 returnAmount);
|
|
|
|
|
|
|
|
|
|
function externalSwap(
|
|
|
|
|
address fromToken,
|
|
|
|
|
address toToken,
|
|
|
|
|
address approveTarget,
|
|
|
|
|
address to,
|
|
|
|
|
uint256 fromTokenAmount,
|
|
|
|
|
uint256 minReturnAmount,
|
|
|
|
|
bytes memory callDataConcat,
|
|
|
|
|
bool isIncentive,
|
|
|
|
|
uint256 deadLine
|
|
|
|
|
) external payable returns (uint256 returnAmount);
|
|
|
|
|
|
2021-09-06 19:15:17 +08:00
|
|
|
// function mixSwap(
|
|
|
|
|
// address fromToken,
|
|
|
|
|
// address toToken,
|
|
|
|
|
// uint256 fromTokenAmount,
|
|
|
|
|
// uint256 minReturnAmount,
|
|
|
|
|
// address[] memory mixAdapters,
|
|
|
|
|
// address[] memory mixPairs,
|
|
|
|
|
// address[] memory assetTo,
|
|
|
|
|
// uint256 directions,
|
|
|
|
|
// bool isIncentive,
|
|
|
|
|
// uint256 deadLine
|
|
|
|
|
// ) external payable returns (uint256 returnAmount);
|
2020-11-23 22:33:23 +08:00
|
|
|
}
|