Skip to main content

EthPrivErc20Vault

Git Source ↗

Inherits: Initializable ↗, EthErc20Vault →, VaultWhitelist →, IEthPrivErc20Vault

Defines the Ethereum staking Vault with whitelist and ERC20 ↗ token.

Functions​

vaultId​

Vault Unique Identifier

function vaultId() public pure virtual override(IVaultVersion, EthErc20Vault) returns (bytes32);

Returns

NameTypeDescription
<none>bytes32The unique identifier of the Vault

version​

Version

function version() public pure virtual override(IVaultVersion, EthErc20Vault) returns (uint8);

Returns

NameTypeDescription
<none>uint8The version of the Vault implementation contract

deposit​

Deposit ETH to the Vault

function deposit(address receiver, address referrer)
public
payable
virtual
override(IVaultEthStaking, VaultEthStaking)
returns (uint256 shares);

Parameters

NameTypeDescription
receiveraddressThe address that will receive Vault's shares
referreraddressThe address of the referrer. Set to zero address if not used.

Returns

NameTypeDescription
sharesuint256The number of shares minted

receive​

Function for depositing using fallback function

receive() external payable virtual override;

mintOsToken​

Mints OsToken shares

function mintOsToken(address receiver, uint256 osTokenShares, address referrer)
public
virtual
override(IVaultOsToken, VaultOsToken)
returns (uint256 assets);

Parameters

NameTypeDescription
receiveraddressThe address that will receive the minted OsToken shares
osTokenSharesuint256The number of OsToken shares to mint to the receiver. To mint the maximum amount of shares, use 2^256 - 1.
referreraddressThe address of the referrer

Returns

NameTypeDescription
assetsuint256The number of assets minted to the receiver