Skip to main content

IVaultDepositHandler

IVaultDepositHandler

Addresses

ChainAddress

Functions

mint

Mint shares shares to receiver, calling ERC-2612 permit() using the attached signature and signatureAssets. See EIP-2626 mint.

function mint(
Shares shares,
address receiver,
uint256 deadline,
struct IVaultDomain.Signature signature,
uint256 signatureAssets,
uint256 maxAssets
) external returns (
uint256 assets
)

Parameters

NameTypeDescription
sharesSharesShares to mint
receiveraddressAccount credited with the deposit
deadlineuint256deadline for permit
signaturestruct IVaultDomain.Signaturepermit entitling DomFiVault to assets collateral
signatureAssetsuint256Assets permitted to DomFiVault. This should be the expected assets or higher, in case share price increases
maxAssetsuint256Slippage control. Ignored if zero. If nonzero, revert if more than maxAssets are required to mint shares.

Return Values

NameTypeDescription
assetsuint256Collateral sent to the vault in exchange for these shares

deposit

Deposit amount collateral to user, calling ERC-2612 permit() using the attached signature and deadline. See EIP-4626.

function deposit(
uint256 amount,
address user,
uint256 deadline,
struct IVaultDomain.Signature signature,
Shares minShares
) external returns (
Shares shares
)

Parameters

NameTypeDescription
amountuint256Collateral to deposit from msg.sender
useraddressAddress credited with the deposit
deadlineuint256deadline for permit
signaturestruct IVaultDomain.Signaturepermit entitling DomFiVault to amount collateral
minSharesSharesSlippage control. Ignored if zero. If nonzero, revert if a deposit yields less than minShares

Return Values

NameTypeDescription
sharesSharesdfUSDC amount sent to user in exchange for this collateral

VaultDepositDelegate

Addresses

ChainAddress

Functions

mint

Mint shares shares to receiver, calling ERC-2612 permit() using the attached signature and signatureAssets. See EIP-2626 mint.

function mint(
contract IVaultDepositHandler handler,
Shares shares,
address receiver,
uint256 deadline,
struct IVaultDomain.Signature signature,
uint256 signatureAssets,
uint256 maxAssets
) internal returns (
uint256 assets
)

Parameters

NameTypeDescription
handlercontract IVaultDepositHandler
sharesSharesShares to mint
receiveraddressAccount credited with the deposit
deadlineuint256deadline for permit
signaturestruct IVaultDomain.Signaturepermit entitling DomFiVault to assets collateral
signatureAssetsuint256Assets permitted to DomFiVault. This should be the expected assets or higher, in case share price increases
maxAssetsuint256Slippage control. Ignored if zero. If nonzero, revert if more than maxAssets are required to mint shares.

Return Values

NameTypeDescription
assetsuint256Collateral sent to the vault in exchange for these shares

deposit

Deposit amount collateral to user, calling ERC-2612 permit() using the attached signature and deadline. See EIP-4626.

function deposit(
contract IVaultDepositHandler handler,
uint256 amount,
address user,
uint256 deadline,
struct IVaultDomain.Signature signature,
Shares minShares
) internal returns (
Shares shares
)

Parameters

NameTypeDescription
handlercontract IVaultDepositHandler
amountuint256Collateral to deposit from msg.sender
useraddressAddress credited with the deposit
deadlineuint256deadline for permit
signaturestruct IVaultDomain.Signaturepermit entitling DomFiVault to amount collateral
minSharesSharesSlippage control. Ignored if zero. If nonzero, revert if a deposit yields less than minShares

Return Values

NameTypeDescription
sharesSharesdfUSDC amount sent to user in exchange for this collateral