ISingleDepositorVault
Last updated
Last updated
Inherits: IFeeVault
Interface for vaults that accept deposits/withdrawals from a single address
Deposit assets into the vault
function deposit(TokenAmount[] calldata tokenAmounts) external;
Parameters
tokenAmounts
TokenAmount[]
The assets to deposit
Withdraw assets from the vault
function withdraw(TokenAmount[] calldata tokenAmounts) external;
Parameters
tokenAmounts
TokenAmount[]
The assets to withdraw
Execute operations on the vault as a trusted entity
function execute(OperationPayable[] calldata operations) external;
Parameters
operations
OperationPayable[]
The operations to execute
Emitted when tokens are deposited into the vault
event Deposited(address indexed depositor, TokenAmount[] tokenAmounts);
Parameters
depositor
address
The address making the deposit
tokenAmounts
TokenAmount[]
The tokens and amounts deposited
Emitted when tokens are withdrawn from the vault
event Withdrawn(address indexed withdrawer, TokenAmount[] tokenAmounts);
Parameters
withdrawer
address
The address making the withdrawal
tokenAmounts
TokenAmount[]
The tokens and amounts withdrawn
Emitted when operations are executed
event Executed(address indexed executor, OperationPayable[] operations);
Parameters
executor
address
The address executing the operations
operations
OperationPayable[]
The operations that were executed
error Aera__ExecutionFailed(uint256 index, bytes result);
error Aera__UnexpectedTokenAllowance(uint256 allowance);