148 lines
4.2 KiB
Solidity
148 lines
4.2 KiB
Solidity
/*
|
|
|
|
Copyright 2020 DODO ZOO.
|
|
SPDX-License-Identifier: Apache-2.0
|
|
|
|
*/
|
|
|
|
pragma solidity 0.6.9;
|
|
pragma experimental ABIEncoderV2;
|
|
|
|
|
|
interface IDODOV2Proxy01 {
|
|
function dodoSwapV2ETHToToken(
|
|
address toToken,
|
|
uint256 minReturnAmount,
|
|
address[] memory dodoPairs,
|
|
uint256 directions,
|
|
bool isIncentive,
|
|
uint256 deadLine
|
|
) external payable returns (uint256 returnAmount);
|
|
|
|
function dodoSwapV2TokenToETH(
|
|
address fromToken,
|
|
uint256 fromTokenAmount,
|
|
uint256 minReturnAmount,
|
|
address[] memory dodoPairs,
|
|
uint256 directions,
|
|
bool isIncentive,
|
|
uint256 deadLine
|
|
) external returns (uint256 returnAmount);
|
|
|
|
function dodoSwapV2TokenToToken(
|
|
address fromToken,
|
|
address toToken,
|
|
uint256 fromTokenAmount,
|
|
uint256 minReturnAmount,
|
|
address[] memory dodoPairs,
|
|
uint256 directions,
|
|
bool isIncentive,
|
|
uint256 deadLine
|
|
) external returns (uint256 returnAmount);
|
|
|
|
function createDODOVendingMachine(
|
|
address baseToken,
|
|
address quoteToken,
|
|
uint256 baseInAmount,
|
|
uint256 quoteInAmount,
|
|
uint256 lpFeeRate,
|
|
uint256 i,
|
|
uint256 k,
|
|
bool isOpenTWAP,
|
|
uint256 deadLine
|
|
) external payable returns (address newVendingMachine, uint256 shares);
|
|
|
|
function addDVMLiquidity(
|
|
address dvmAddress,
|
|
uint256 baseInAmount,
|
|
uint256 quoteInAmount,
|
|
uint256 baseMinAmount,
|
|
uint256 quoteMinAmount,
|
|
uint8 flag, // 0 - ERC20, 1 - baseInETH, 2 - quoteInETH
|
|
uint256 deadLine
|
|
)
|
|
external
|
|
payable
|
|
returns (
|
|
uint256 shares,
|
|
uint256 baseAdjustedInAmount,
|
|
uint256 quoteAdjustedInAmount
|
|
);
|
|
|
|
// function createDODOPrivatePool(
|
|
// address baseToken,
|
|
// address quoteToken,
|
|
// uint256 baseInAmount,
|
|
// uint256 quoteInAmount,
|
|
// uint256 lpFeeRate,
|
|
// uint256 i,
|
|
// uint256 k,
|
|
// bool isOpenTwap,
|
|
// uint256 deadLine
|
|
// ) external payable returns (address newPrivatePool);
|
|
|
|
// function resetDODOPrivatePool(
|
|
// address dppAddress,
|
|
// uint256[] memory paramList, //0 - newLpFeeRate, 1 - newI, 2 - newK
|
|
// uint256[] memory amountList, //0 - baseInAmount, 1 - quoteInAmount, 2 - baseOutAmount, 3 - quoteOutAmount
|
|
// uint8 flag, // 0 - ERC20, 1 - baseInETH, 2 - quoteInETH, 3 - baseOutETH, 4 - quoteOutETH
|
|
// uint256 minBaseReserve,
|
|
// uint256 minQuoteReserve,
|
|
// uint256 deadLine
|
|
// ) external payable;
|
|
|
|
|
|
// function bid(
|
|
// address cpAddress,
|
|
// uint256 quoteAmount,
|
|
// uint8 flag, // 0 - ERC20, 1 - quoteInETH
|
|
// uint256 deadLine
|
|
// ) external payable;
|
|
|
|
function addLiquidityToV1(
|
|
address pair,
|
|
uint256 baseAmount,
|
|
uint256 quoteAmount,
|
|
uint256 baseMinShares,
|
|
uint256 quoteMinShares,
|
|
uint8 flag, // 0 erc20 Out 1 baseInETH 2 quoteInETH
|
|
uint256 deadLine
|
|
) external payable returns(uint256, uint256);
|
|
|
|
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);
|
|
|
|
// 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);
|
|
}
|