Skip to main content

ERC20s

Directory: src/ERC20

Collection of ERC20 contracts that can be used for different purposes.

ERC20WrapperLocked

A wrapper for locked ERC20 tokens that can be withdrawn as per the lock schedule defined in the inheriting contract, i.e. RewardToken. Regular wrapping, unwrapping are only supported for whitelisted callers with an ADMIN whitelist status. Regular ERC20 transfers are only supported between two whitelisted accounts. Under other circumstances, conditions apply; look at the implementation. If the account balance is non-whitelisted, their tokens can only be withdrawn as per the lock schedule and the remainder of the amount is transferred to the receiver address configured. If the account has a DISTRIBUTOR whitelist status, their tokens cannot be unwrapped by them, but in order to be unwrapped, they can only be transferred to the account that is not whitelisted and become a subject to the locking schedule or transferred to the account with an ADMIN whitelist status. A whitelisted account can always degrade their whitelist status and become a subject to the locking schedule.