IDragonswapV2Staker
Allows staking nonfungible liquidity tokens in exchange for reward tokens
Functionsโ
factoryโ
The DragonswapV2 Factory
nonfungiblePositionManagerโ
The nonfungible position manager with which this staking contract is compatible
maxIncentiveDurationโ
The max duration of an incentive in seconds
maxIncentiveStartLeadTimeโ
The max amount of seconds into the future the incentive startTime can be set
incentivesโ
Represents a staking incentive
Parameters:โ
incentiveId
bytes32
The ID of the incentive computed from its parameters
Return Values:โ
totalRewardUnclaimed
uint256
The amount of reward token not yet claimed by users
totalSecondsClaimedX128
uint160
Total liquidity-seconds claimed, represented as a UQ32.128
numberOfStakes
uint96
The count of deposits that are currently staked for the incentive
depositsโ
Returns information about a deposited NFT
Return Values:โ
owner
address
The owner of the deposited NFT
numberOfStakes
uint48
Counter of how many incentives for which the liquidity is staked
tickLower
int24
The lower tick of the range
tickUpper
int24
The upper tick of the range
stakesโ
Returns information about a staked liquidity NFT
Parameters:โ
tokenId
uint256
The ID of the staked token
incentiveId
bytes32
The ID of the incentive for which the token is staked
Return Values:โ
secondsPerLiquidityInsideInitialX128
uint160
secondsPerLiquidity represented as a UQ32.128
liquidity
uint128
The amount of liquidity in the NFT as of the last time the rewards were computed
rewardsโ
Returns amounts of reward tokens owed to a given address according to the last time all stakes were updated
Parameters:โ
rewardToken
contract IERC20Minimal
The token for which to check rewards
owner
address
The owner for which the rewards owed are checked
Return Values:โ
rewardsOwed
uint256
The amount of the reward token claimable by the owner
createIncentiveโ
Creates a new liquidity mining incentive program
Parameters:โ
key
struct IDragonswapV2Staker.IncentiveKey
Details of the incentive to create
reward
uint256
The amount of reward tokens to be distributed
endIncentiveโ
Ends an incentive after the incentive end time has passed and all stakes have been withdrawn
Parameters:โ
key
struct IDragonswapV2Staker.IncentiveKey
Details of the incentive to end
Return Values:โ
refund
uint256
The remaining reward tokens when the incentive is ended
transferDepositโ
Transfers ownership of a deposit from the sender to the given recipient
Parameters:โ
tokenId
uint256
The ID of the token (and the deposit) to transfer
to
address
The new owner of the deposit
withdrawTokenโ
Withdraws a DragonswapV2 LP token tokenId
from this contract to the recipient to
Parameters:โ
tokenId
uint256
The unique identifier of an DragonswapV2 LP token
to
address
The address where the LP token will be sent
data
bytes
An optional data array that will be passed along to the to
address via the NFT safeTransferFrom
stakeTokenโ
Stakes a DragonswapV2 LP token
Parameters:โ
key
struct IDragonswapV2Staker.IncentiveKey
The key of the incentive for which to stake the NFT
tokenId
uint256
The ID of the token to stake
unstakeTokenโ
Unstakes a DragonswapV2 LP token
Parameters:โ
key
struct IDragonswapV2Staker.IncentiveKey
The key of the incentive for which to unstake the NFT
tokenId
uint256
The ID of the token to unstake
claimRewardโ
Transfers amountRequested
of accrued rewardToken
rewards from the contract to the recipient to
Parameters:โ
rewardToken
contract IERC20Minimal
The token being distributed as a reward
to
address
The address where claimed rewards will be sent to
amountRequested
uint256
The amount of reward tokens to claim. Claims entire reward amount if set to 0.
Return Values:โ
reward
uint256
The amount of reward tokens claimed
getRewardInfoโ
Calculates the reward amount that will be received for the given stake
Parameters:โ
key
struct IDragonswapV2Staker.IncentiveKey
The key of the incentive
tokenId
uint256
The ID of the token
Return Values:โ
reward
uint256
The reward accrued to the NFT for the given incentive thus far
secondsInsideX128
uint160
The seconds inside the tick range
Eventsโ
IncentiveCreatedโ
Event emitted when a liquidity mining incentive has been created
Parameters:โ
rewardToken
contract IERC20Minimal
The token being distributed as a reward
pool
contract IDragonswapV2Pool
The DragonswapV2 pool
startTime
uint256
The time when the incentive program begins
endTime
uint256
The time when rewards stop accruing
refundee
address
The address which receives any remaining reward tokens after the end time
reward
uint256
The amount of reward tokens to be distributed
IncentiveEndedโ
Event that can be emitted when a liquidity mining incentive has ended
Parameters:โ
incentiveId
bytes32
The incentive which is ending
refund
uint256
The amount of reward tokens refunded
DepositTransferredโ
Emitted when ownership of a deposit changes
Parameters:โ
tokenId
uint256
The ID of the deposit (and token) that is being transferred
oldOwner
address
The owner before the deposit was transferred
newOwner
address
The owner after the deposit was transferred
TokenStakedโ
Event emitted when a DragonswapV2 LP token has been staked
Parameters:โ
tokenId
uint256
The unique identifier of an DragonswapV2 LP token
liquidity
bytes32
The amount of liquidity staked
incentiveId
uint128
The incentive in which the token is staking
TokenUnstakedโ
Event emitted when a DragonswapV2 LP token has been unstaked
Parameters:โ
tokenId
uint256
The unique identifier of an DragonswapV2 LP token
incentiveId
bytes32
The incentive in which the token is staking
RewardClaimedโ
Event emitted when a reward token has been claimed
Parameters:โ
to
address
The address where claimed rewards were sent to
reward
uint256
The amount of reward tokens claimed
Last updated