Skip to main content

IDeveloperPool

IDeveloperPool

Interface for the DeveloperPool contract, which handles token custody, distribution, and era-based logic for developers.

canWithdraw

function canWithdraw(uint256 era) external view returns (bool)

Checks if a developer is eligible to withdraw rewards for a given era.

Parameters

NameTypeDescription
erauint256The era number to check eligibility for.

Return Values

NameTypeDescription
[0]booltrue if the developer can withdraw, false otherwise.

withdraw

function withdraw(address user, uint256 era) external

Allows a user to withdraw their tokens for a specific era.

Parameters

NameTypeDescription
useraddressThe address of the developer withdrawing tokens.
erauint256The era for which the withdrawal is being made.

removePoolLevels

function removePoolLevels(address user, bool denied) external

Removes specified levels from a user's pool configuration.

Parameters

NameTypeDescription
useraddressThe address of the developer.
deniedboolRemove level user status. If true, user is being denied.

addLevel

function addLevel(address user, uint256 levels, uint64 eventId) external

Adds a new level to a user's pool configuration.

Parameters

NameTypeDescription
useraddressThe address of the developer.
levelsuint256The levels to be added.
eventIduint64

currentContractEra

function currentContractEra() external view returns (uint256)

Returns the current era of the contract.

Return Values

NameTypeDescription
[0]uint256The current era number.

nextEraIn

function nextEraIn(uint256 currentEra) external view returns (uint256)

Calculates the time or blocks remaining until the next era begins.

Parameters

NameTypeDescription
currentErauint256The current era, passed as a parameter for calculation.

Return Values

NameTypeDescription
[0]uint256The number of seconds or blocks until the next era.