WETHGateway

WETHGateway

The WETH Gateway contract is a helper to easily wrap and unwrap ETH (or native currency of chain eg. MATIC, AVAX etc) as necessary when interacting with the protocol.

Write Methods

depositETH

function depositETH(address pool, address onBehalfOf, uint16 referralCode)

Supplies the msg.value amount of ETH (or native chain token) into the Themis pool, minting the same amount of corresponding tWETH and transferring them to the onBehalfOf address.

Ensure that the depositETH() transaction also includes the amount of ETH you are supplying in the msg.value .

Call Params

withdrawETH

function withdrawETH(address pool, uint256 amount, address to)

Withdraws amount of the WETH (or wrapped native chain token), unwraps it and transfers ETH (or native chain token) to the to address.

💡 Ensure you set the relevant aToken allowance, before calling this function, so the WETHGateway contract can transfer the associated aWETH.

Call Params

repayETH

function repayETH(address pool, uint256 amount, uint256 rateMode, address onBehalfOf)

Repays onBehalfOf's debt amount of ETH () which has a rateMode .

Ensure that the repayETH() transaction also includes the amount of ETH you are repaying in the msg.value .

borrowETH

function borrowETH(address pool, uint256 amount, uint256 interestRateMode, uint16 referralCode)

Borrows amount of WETH with interestRateMode , sending the amount of unwrapped WETH to msg.sender .

Call Params

withdrawETHWithPermit

function withdrawETHWithPermit(address pool, uint256 amount, address to, uint256 deadline, uint8 permitV, bytes32 permitR, bytes32 permitS)

Withdraws amount of the WETH (or wrapped native chain token) without a separate approval tx. The ETH (or native chain token) is sent to the to address.

Call Params

emergencyTokenTransfer

function emergencyTokenTransfer(address Token, address to, uint256 amount)

Method for ERC20 recovery in case of stuck tokens due direct transfers to the contract address.

Can be called only by the owner of the contract i.e. Themis Governance

emergencyEtherTransfer

function emergencyEtherTransfer(address to, uint256 amount)

Method for ETH (or native chain token) recovery in case of stuck ETH due selfdestruct or transfer ether to pre-computated contract address before deployment.

Can be called only by the owner of the contract i.e. Governance.

View Methods

getWETHAddress

function getWETHAddress()

Returns the WETH address used by the WETHGateway.


Last updated