IMultiDepositorVaultFactory

Inherits: IFeeVaultDeployer

Interface for the multi depositor vault factory

Functions

create

Create multi depositor vault

function create(
    bytes32 salt,
    string calldata description,
    ERC20Parameters calldata erc20Params,
    BaseVaultParameters calldata baseVaultParams,
    FeeVaultParameters calldata feeVaultParams,
    IBeforeTransferHook beforeTransferHook,
    address expectedVaultAddress
) external returns (address deployedVault);

Parameters

Name
Type
Description

salt

bytes32

The salt used to generate the vault address

description

string

Vault description

erc20Params

ERC20Parameters

ERC20 parameters for deployment

baseVaultParams

BaseVaultParameters

Base vault parameters for deployment

feeVaultParams

FeeVaultParameters

Fee vault parameters for deployment

beforeTransferHook

IBeforeTransferHook

Before transfer hooks for deployment

expectedVaultAddress

address

Expected vault address to check against deployed vault address

Returns

Name
Type
Description

deployedVault

address

Deployed vault address

getERC20Name

Get the ERC20 name of vault units

function getERC20Name() external view returns (string memory name);

Returns

Name
Type
Description

name

string

The name of the vault ERC20 token

getERC20Symbol

Get the ERC20 symbol of vault units

function getERC20Symbol() external view returns (string memory symbol);

Returns

Name
Type
Description

symbol

string

The symbol of the vault ERC20 token

multiDepositorVaultParameters

Get the vault parameters

function multiDepositorVaultParameters() external view returns (IBeforeTransferHook beforeTransferHook);

Returns

Name
Type
Description

beforeTransferHook

IBeforeTransferHook

The hooks called before vault unit transfers

Events

VaultCreated

Emitted when the vault is created

event VaultCreated(
    address indexed vault,
    address indexed owner,
    address hooks,
    ERC20Parameters erc20Params,
    FeeVaultParameters feeVaultParams,
    IBeforeTransferHook beforeTransferHook,
    string description
);

Parameters

Name
Type
Description

vault

address

Vault address

owner

address

Initial owner address

hooks

address

Vault hooks address

erc20Params

ERC20Parameters

ERC20 parameters

feeVaultParams

FeeVaultParameters

Fee vault parameters

beforeTransferHook

IBeforeTransferHook

Before transfer hooks

description

string

Vault description

Errors

Aera__ZeroAddressDeployDelegate

Thrown when deploy delegate is the zero address

error Aera__ZeroAddressDeployDelegate();

Last updated