You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 26, 2024. It is now read-only.
@notice Flywheel is a general framework for managing token incentives.
9
+
It takes reward streams to various *strategies* such as staking LP tokens and divides them among *users* of those strategies.
10
+
11
+
The Booster module is an optional module for virtually boosting or otherwise transforming user balances.
12
+
If a booster is not configured, the strategies ERC-20 balanceOf/totalSupply will be used instead.
13
+
14
+
Boosting logic can be associated with referrals, vote-escrow, or other strategies.
15
+
16
+
SECURITY NOTE: similar to how Core needs to be notified any time the strategy user composition changes, the booster would need to be notified of any conditions which change the boosted balances atomically.
17
+
This prevents gaming of the reward calculation function by using manipulated balances when accruing.
18
+
*/
19
+
interfaceIFlywheelBorrowBooster {
20
+
/**
21
+
@notice calculate the boosted supply of a strategy.
22
+
@param strategy the strategy to calculate boosted supply of
23
+
@return the boosted supply
24
+
*/
25
+
function boostedTotalSupply(ICErc20 strategy) externalviewreturns (uint256);
26
+
27
+
/**
28
+
@notice calculate the boosted balance of a user in a given strategy.
29
+
@param strategy the strategy to calculate boosted balance of
30
+
@param user the user to calculate boosted balance of
31
+
@return the boosted balance
32
+
*/
33
+
function boostedBalanceOf(ICErc20 strategy, addressuser) externalviewreturns (uint256);
0 commit comments