Files
dodo-contractV2/contracts/DODOVendingMachine/intf/IDVM.sol

61 lines
1.6 KiB
Solidity
Raw Normal View History

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 owner,
address maintainer,
2020-11-18 17:51:50 +08:00
address baseTokenAddress,
address quoteTokenAddress,
2020-11-05 00:26:45 +08:00
address lpFeeRateModel,
address mtFeeRateModel,
address tradePermissionManager,
2020-11-11 16:42:00 +08:00
address gasPriceSource,
2020-11-05 00:26:45 +08:00
uint256 i,
uint256 k
) 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 _LP_FEE_RATE_MODEL_() external returns (address);
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);
function buyShares(address to) external returns (uint256);
2020-11-24 17:25:10 +08:00
//=========== admin ==========
function setLpFeeRateModel(address newLpFeeRateModel) external;
2020-12-18 15:42:16 +08:00
function setLpFeeRateValue(uint256 newLpFeeRate) external;
2020-11-24 17:25:10 +08:00
function setMtFeeRateModel(address newMtFeeRateModel) external;
2020-12-18 15:42:16 +08:00
function setMtFeeRateValue(uint256 newMtFeeRate) external;
2020-11-24 17:25:10 +08:00
function setTradePermissionManager(address newTradePermissionManager) external;
function setMaintainer(address newMaintainer) external;
function setGasPriceSource(address newGasPriceLimitSource) external;
function setBuy(bool open) external;
function setSell(bool open) external;
2020-11-28 17:44:39 +08:00
//==============================
2020-11-05 00:26:45 +08:00
}