2020-11-05 00:26:45 +08:00
|
|
|
/*
|
|
|
|
|
|
|
|
|
|
Copyright 2020 DODO ZOO.
|
|
|
|
|
SPDX-License-Identifier: Apache-2.0
|
|
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
pragma solidity 0.6.9;
|
|
|
|
|
pragma experimental ABIEncoderV2;
|
|
|
|
|
|
|
|
|
|
interface IDVM {
|
|
|
|
|
function init(
|
|
|
|
|
address maintainer,
|
2020-11-18 17:51:50 +08:00
|
|
|
address baseTokenAddress,
|
|
|
|
|
address quoteTokenAddress,
|
2020-12-30 12:23:52 +08:00
|
|
|
uint256 lpFeeRate,
|
2020-11-05 00:26:45 +08:00
|
|
|
address mtFeeRateModel,
|
|
|
|
|
uint256 i,
|
2021-01-19 17:10:46 +08:00
|
|
|
uint256 k,
|
|
|
|
|
bool isOpenTWAP
|
2020-11-05 00:26:45 +08:00
|
|
|
) external;
|
2020-11-20 18:58:35 +08:00
|
|
|
|
|
|
|
|
function _BASE_TOKEN_() external returns (address);
|
|
|
|
|
|
|
|
|
|
function _QUOTE_TOKEN_() external returns (address);
|
|
|
|
|
|
2020-11-28 17:44:39 +08:00
|
|
|
function _MT_FEE_RATE_MODEL_() external returns (address);
|
|
|
|
|
|
2020-11-20 18:58:35 +08:00
|
|
|
function getVaultReserve() external returns (uint256 baseReserve, uint256 quoteReserve);
|
|
|
|
|
|
|
|
|
|
function sellBase(address to) external returns (uint256);
|
|
|
|
|
|
|
|
|
|
function sellQuote(address to) external returns (uint256);
|
|
|
|
|
|
2021-03-14 16:49:33 +08:00
|
|
|
function buyShares(address to) external returns (uint256,uint256,uint256);
|
2020-11-24 17:25:10 +08:00
|
|
|
|
2021-03-30 18:25:39 +08:00
|
|
|
function addressToShortString(address _addr) external pure returns (string memory);
|
|
|
|
|
|
|
|
|
|
function getMidPrice() external view returns (uint256 midPrice);
|
|
|
|
|
|
|
|
|
|
function sellShares(
|
|
|
|
|
uint256 shareAmount,
|
|
|
|
|
address to,
|
|
|
|
|
uint256 baseMinAmount,
|
|
|
|
|
uint256 quoteMinAmount,
|
|
|
|
|
bytes calldata data,
|
|
|
|
|
uint256 deadline
|
|
|
|
|
) external returns (uint256 baseAmount, uint256 quoteAmount);
|
|
|
|
|
|
2020-11-05 00:26:45 +08:00
|
|
|
}
|