2022-03-22 15:24:40 +00:00
|
|
|
//SPDX-License-Identifier: MIT
|
2021-06-02 10:19:05 +00:00
|
|
|
pragma solidity ^0.7.6;
|
2021-06-01 14:50:52 +00:00
|
|
|
|
|
|
|
interface BorrowerOperationsLike {
|
|
|
|
function openTrove(
|
|
|
|
uint256 _maxFee,
|
|
|
|
uint256 _LUSDAmount,
|
|
|
|
address _upperHint,
|
|
|
|
address _lowerHint
|
|
|
|
) external payable;
|
|
|
|
|
|
|
|
function addColl(address _upperHint, address _lowerHint) external payable;
|
|
|
|
|
|
|
|
function withdrawColl(
|
|
|
|
uint256 _amount,
|
|
|
|
address _upperHint,
|
|
|
|
address _lowerHint
|
|
|
|
) external;
|
|
|
|
|
|
|
|
function withdrawLUSD(
|
|
|
|
uint256 _maxFee,
|
|
|
|
uint256 _amount,
|
|
|
|
address _upperHint,
|
|
|
|
address _lowerHint
|
|
|
|
) external;
|
|
|
|
|
|
|
|
function repayLUSD(
|
|
|
|
uint256 _amount,
|
|
|
|
address _upperHint,
|
|
|
|
address _lowerHint
|
|
|
|
) external;
|
|
|
|
|
|
|
|
function closeTrove() external;
|
|
|
|
|
|
|
|
function adjustTrove(
|
|
|
|
uint256 _maxFee,
|
|
|
|
uint256 _collWithdrawal,
|
|
|
|
uint256 _debtChange,
|
|
|
|
bool isDebtIncrease,
|
|
|
|
address _upperHint,
|
|
|
|
address _lowerHint
|
|
|
|
) external payable;
|
|
|
|
|
|
|
|
function claimCollateral() external;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface TroveManagerLike {
|
|
|
|
function getTroveColl(address _borrower) external view returns (uint);
|
|
|
|
function getTroveDebt(address _borrower) external view returns (uint);
|
|
|
|
}
|
|
|
|
|
|
|
|
interface StabilityPoolLike {
|
|
|
|
function provideToSP(uint _amount, address _frontEndTag) external;
|
|
|
|
function withdrawFromSP(uint _amount) external;
|
|
|
|
function withdrawETHGainToTrove(address _upperHint, address _lowerHint) external;
|
2021-06-04 11:18:16 +00:00
|
|
|
function getDepositorETHGain(address _depositor) external view returns (uint);
|
2021-06-04 14:55:04 +00:00
|
|
|
function getDepositorLQTYGain(address _depositor) external view returns (uint);
|
2021-06-26 13:00:03 +00:00
|
|
|
function getCompoundedLUSDDeposit(address _depositor) external view returns (uint);
|
2021-06-01 14:50:52 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
interface StakingLike {
|
|
|
|
function stake(uint _LQTYamount) external;
|
|
|
|
function unstake(uint _LQTYamount) external;
|
2021-06-04 11:18:16 +00:00
|
|
|
function getPendingETHGain(address _user) external view returns (uint);
|
|
|
|
function getPendingLUSDGain(address _user) external view returns (uint);
|
2021-06-26 13:00:03 +00:00
|
|
|
function stakes(address owner) external view returns (uint);
|
2021-06-04 11:18:16 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
interface CollateralSurplusLike {
|
|
|
|
function getCollateral(address _account) external view returns (uint);
|
2021-06-01 14:50:52 +00:00
|
|
|
}
|
2021-06-09 20:02:06 +00:00
|
|
|
|
|
|
|
interface LqtyTokenLike {
|
|
|
|
function balanceOf(address account) external view returns (uint256);
|
|
|
|
}
|