wclETH

wclETH (ERC20 Token) Smart Contract is deployed on L2 network. The LST is given to the user on the L2 chain (eg. Arbitrum). The user should explicitly opt to get wclETH on Arbitrum.

Similar to clETH, wclETH has the following functionalities:

Mint

function mint(address to, uint256 amount) external onlyOwner whenNotPaused {
       require(amount > 0, "WCLETH: mint amount must be greater than zero");
       require(to != address(0), "Zero address");
       _mint(to, amount);
}
  1. Only the Admin can mint the wclETH token.

  2. This mint function mints wclETH to the user wallet on the chosen L2.

Burn

function unstake(
       uint256 amount,
       bytes calldata pubkeys
   ) public whenNotPaused ZeroAmount(amount) {
       . . .
       _burn(msg.sender, amount);

}
  1. The burn function is wrapped in unstake function.

  2. Removes wclETH from a particular address.

Pause and unpause

function pause() public onlyOwner {
   _pause();
}
function unpause() public onlyOwner {
   _unpause();
}
  1. The Admin can pause and unpause the minting of wclETH.

Last updated