-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #31 from tetu-io/dev
tUSDC_snapshot fix gamma calc
- Loading branch information
Showing
4 changed files
with
1,087 additions
and
77 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,209 @@ | ||
// SPDX-License-Identifier: UNLICENSED | ||
|
||
pragma solidity >=0.7.0 <0.9.0; | ||
|
||
interface IHypervisor { | ||
event Approval( | ||
address indexed _owner, | ||
address indexed spender, | ||
uint256 value | ||
); | ||
event Deposit( | ||
address indexed sender, | ||
address indexed to, | ||
uint256 shares, | ||
uint256 amount0, | ||
uint256 amount1 | ||
); | ||
event Rebalance( | ||
int24 tick, | ||
uint256 totalAmount0, | ||
uint256 totalAmount1, | ||
uint256 feeAmount0, | ||
uint256 feeAmount1, | ||
uint256 totalSupply | ||
); | ||
event SetFee(uint8 newFee); | ||
event Transfer(address indexed from, address indexed to, uint256 value); | ||
event Withdraw( | ||
address indexed sender, | ||
address indexed to, | ||
uint256 shares, | ||
uint256 amount0, | ||
uint256 amount1 | ||
); | ||
event ZeroBurn(uint8 fee, uint256 fees0, uint256 fees1); | ||
|
||
function DOMAIN_SEPARATOR() external view returns (bytes32); | ||
|
||
function PRECISION() external view returns (uint256); | ||
|
||
function addLiquidity( | ||
int24 tickLower, | ||
int24 tickUpper, | ||
uint256 amount0, | ||
uint256 amount1, | ||
uint256[2] memory inMin | ||
) external; | ||
|
||
function allowance(address _owner, address spender) | ||
external | ||
view | ||
returns (uint256); | ||
|
||
function approve(address spender, uint256 amount) external returns (bool); | ||
|
||
function balanceOf(address account) external view returns (uint256); | ||
|
||
function baseLower() external view returns (int24); | ||
|
||
function baseUpper() external view returns (int24); | ||
|
||
function compound(uint256[4] memory inMin) | ||
external | ||
returns ( | ||
uint128 baseToken0Owed, | ||
uint128 baseToken1Owed, | ||
uint128 limitToken0Owed, | ||
uint128 limitToken1Owed | ||
); | ||
|
||
function currentTick() external view returns (int24 tick); | ||
|
||
function decimals() external view returns (uint8); | ||
|
||
function decreaseAllowance(address spender, uint256 subtractedValue) | ||
external | ||
returns (bool); | ||
|
||
function deposit( | ||
uint256 deposit0, | ||
uint256 deposit1, | ||
address to, | ||
address from, | ||
uint256[4] memory inMin | ||
) external returns (uint256 shares); | ||
|
||
function deposit0Max() external view returns (uint256); | ||
|
||
function deposit1Max() external view returns (uint256); | ||
|
||
function directDeposit() external view returns (bool); | ||
|
||
function fee() external view returns (uint8); | ||
|
||
function feeRecipient() external view returns (address); | ||
|
||
function getBasePosition() | ||
external | ||
view | ||
returns ( | ||
uint128 liquidity, | ||
uint256 amount0, | ||
uint256 amount1 | ||
); | ||
|
||
function getLimitPosition() | ||
external | ||
view | ||
returns ( | ||
uint128 liquidity, | ||
uint256 amount0, | ||
uint256 amount1 | ||
); | ||
|
||
function getTotalAmounts() | ||
external | ||
view | ||
returns (uint256 total0, uint256 total1); | ||
|
||
function increaseAllowance(address spender, uint256 addedValue) | ||
external | ||
returns (bool); | ||
|
||
function limitLower() external view returns (int24); | ||
|
||
function limitUpper() external view returns (int24); | ||
|
||
function maxTotalSupply() external view returns (uint256); | ||
|
||
function name() external view returns (string memory); | ||
|
||
function nonces(address _owner) external view returns (uint256); | ||
|
||
function owner() external view returns (address); | ||
|
||
function permit( | ||
address _owner, | ||
address spender, | ||
uint256 value, | ||
uint256 deadline, | ||
uint8 v, | ||
bytes32 r, | ||
bytes32 s | ||
) external; | ||
|
||
function pool() external view returns (address); | ||
|
||
function pullLiquidity( | ||
int24 tickLower, | ||
int24 tickUpper, | ||
uint128 shares, | ||
uint256[2] memory amountMin | ||
) external returns (uint256 amount0, uint256 amount1); | ||
|
||
function rebalance( | ||
int24 _baseLower, | ||
int24 _baseUpper, | ||
int24 _limitLower, | ||
int24 _limitUpper, | ||
address _feeRecipient, | ||
uint256[4] memory inMin, | ||
uint256[4] memory outMin | ||
) external; | ||
|
||
function removeWhitelisted() external; | ||
|
||
function setFee(uint8 newFee) external; | ||
|
||
function setWhitelist(address _address) external; | ||
|
||
function symbol() external view returns (string memory); | ||
|
||
function tickSpacing() external view returns (int24); | ||
|
||
function toggleDirectDeposit() external; | ||
|
||
function token0() external view returns (address); | ||
|
||
function token1() external view returns (address); | ||
|
||
function totalSupply() external view returns (uint256); | ||
|
||
function transfer(address recipient, uint256 amount) | ||
external | ||
returns (bool); | ||
|
||
function transferFrom( | ||
address sender, | ||
address recipient, | ||
uint256 amount | ||
) external returns (bool); | ||
|
||
function transferOwnership(address newOwner) external; | ||
|
||
function uniswapV3MintCallback( | ||
uint256 amount0, | ||
uint256 amount1, | ||
bytes memory data | ||
) external; | ||
|
||
function whitelistedAddress() external view returns (address); | ||
|
||
function withdraw( | ||
uint256 shares, | ||
address to, | ||
address from, | ||
uint256[4] memory minAmounts | ||
) external returns (uint256 amount0, uint256 amount1); | ||
} |
Oops, something went wrong.