CreateVaultZap
CreateVaultZap.sol
This contract is a zap for creating and setting up a vault.
Table of Contents
Constants
MINIMUM_INVENTORY_LIQUIDITY
Set to NFTX inventory staking contract's MINIMUM_LIQUIDITY
.
WETH
Address of WETH contract.
vaultFactory
Address of NFTXVaultFactoryUpgradeableV3.
nftxRouter
Address of NFTXRouter contract.
ammFactory
Address of NFTX AMM's UniswapV3FactoryUpgradeable contract.
inventoryStaking
Address of NFTXInventoryStakingV3Upgradeable contract.
positionManager
Address of the NFTX AMM's NonfungiblePositionManager contract.
Write Functions
createVault
Sells one or more ERC721 NFTs for ETH.
params
CreateVaultParams
See table below.
msg.value
uint256
Amount of ETH to send.
vaultInfo
VaultInfo
See table below.
eligibilityStorage
VaultEligibilityStorage
See table below.
nftIds
uint256[]
TokenIDs of NFTs to deposit.
nftAmounts
uint256[]
Amounts of NFTs.
vaultFeaturesFlag
uint256
Packed booleans in the order: enableMint
, enableRedeem
, enableSwap.
vaultFees
VaultFees
See table below.
liquidityParams
LiquidityParams
See table below.
assetAddress
address
NFT collection address.
is1155
bool
Whether the collection uses ERC1155.
allowAllItems
bool
Whether all token IDs from the collection are allowed in vault.
name
string
ERC20 vToken name.
symbol
string
ERC20 vToken symbol.
moduleIndex
uint256
Module index number.
initData
bytes
Module initialization data.
mintFee
uint256
Vault mint fee. 1e16 = 1%.
redeemFee
uint256
Vault redeem fee. 1e16 = 1%.
swapFee
uint256
Vault swap fee. 1e16 = 1%.
lowerNFTPriceInETH
uint256
Lower vToken price bound of liquidity.
upperNFTPriceInETH
uint256
Upper vToken price bound of liquidity.
fee
uint24
Fee tier of AMM pool.
currentNFTPriceInETH
uint256
Current vToken price. Only used if the AMM pool is new and must be initialized.
vTokenMin
uint256
Minimum required vToken amount to be added.
wethMin
uint256
Minimum required WETH amount to be added.
deadline
uint256
Deadline for transaction to succeed, expressed as a Unix timestamp in seconds.
vaultId
uint256
ID number of newly deployed vault.
Last updated