-
Notifications
You must be signed in to change notification settings - Fork 1
/
IEmptyStrategy.sol
40 lines (25 loc) · 1.04 KB
/
IEmptyStrategy.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// SPDX-License-Identifier: MIT
pragma solidity >= 0.5.0 <= 0.9.0;
interface IEmptyStrategy {
// Return value for harvest, tend and balanceOfRewards
struct TokenAmount {
address token;
uint256 amount;
}
function initialize(address vault, address want) external;
function getName() external view returns (string memory);
function balanceOf() external view returns (uint256 balance);
function balanceOfPool() external view returns (uint256 balance);
function balanceOfWant() external view returns (uint256 balance);
function earn() external;
function withdraw(uint256 amount) external;
function withdrawToVault() external;
function withdrawOther(address _asset) external;
function harvest() external returns (TokenAmount[] memory harvested);
function tend() external returns (TokenAmount[] memory tended);
function balanceOfRewards()
external
view
returns (TokenAmount[] memory rewards);
function emitNonProtectedToken(address _token) external;
}