Vault
Interfaces
IAlephVault
interface IAlephVault {
// Vault metadata
function name() external view returns (string memory);
function manager() external view returns (address);
function underlyingToken() external view returns (address);
function custodian() external view returns (address);
// Batch tracking
function startTimeStamp() external view returns (uint48);
function currentBatch() external view returns (uint48);
// Share class/series info
function shareClasses() external view returns (uint8);
function shareSeriesId(uint8 _classId) external view returns (uint32);
function lastConsolidatedSeriesId(uint8 _classId) external view returns (uint32);
// Assets and shares
function totalAssets() external view returns (uint256);
function totalAssetsPerClass(uint8 _classId) external view returns (uint256);
function totalAssetsPerSeries(uint8 _classId, uint32 _seriesId) external view returns (uint256);
function totalSharesPerSeries(uint8 _classId, uint32 _seriesId) external view returns (uint256);
// User positions
function assetsOf(uint8 _classId, uint32 _seriesId, address _user) external view returns (uint256);
function sharesOf(uint8 _classId, uint32 _seriesId, address _user) external view returns (uint256);
function assetsPerClassOf(uint8 _classId, address _user) external view returns (uint256);
function redeemableAmount(address _user) external view returns (uint256);
// Pricing
function pricePerShare(uint8 _classId, uint32 _seriesId) external view returns (uint256);
function highWaterMark(uint8 _classId, uint32 _seriesId) external view returns (uint256);
// Share class parameters
function managementFee(uint8 _classId) external view returns (uint32);
function performanceFee(uint8 _classId) external view returns (uint32);
function noticePeriod(uint8 _classId) external view returns (uint48);
function lockInPeriod(uint8 _classId) external view returns (uint48);
function minDepositAmount(uint8 _classId) external view returns (uint256);
function minUserBalance(uint8 _classId) external view returns (uint256);
function maxDepositCap(uint8 _classId) external view returns (uint256);
function minRedeemAmount(uint8 _classId) external view returns (uint256);
// Request queries
function depositRequestOf(uint8 _classId, address _user) external view returns (uint256);
function redeemRequestOf(uint8 _classId, address _user) external view returns (uint256);
function totalAmountToDeposit(uint8 _classId) external view returns (uint256);
}IAlephVaultDeposit
IAlephVaultRedeem
IAlephVaultSettlement
IFeeManager
Data Structures
ShareClassParams
ShareSeries
AuthSignature
Events
Deposit Events
Redemption Events
Series Events
Fee Events
Error Codes
Deposit Errors
InsufficientDeposit
Amount below minimum
DepositLessThanMinDepositAmount
Below class minimum
DepositLessThanMinUserBalance
Would leave balance below minimum
DepositExceedsMaxDepositCap
Exceeds vault capacity
OnlyOneRequestPerBatchAllowedForDeposit
Already requested this batch
Redemption Errors
RedeemLessThanMinRedeemAmount
Amount below minimum
InsufficientAssetsToRedeem
Not enough shares
RedeemFallBelowMinUserBalance
Would violate minimum balance
OnlyOneRequestPerBatchAllowedForRedeem
Already requested this batch
InsufficientVaultBalance
Vault lacks liquidity
Settlement Errors
InvalidNewTotalAssets
Bad NAV data
InvalidToBatchId
Invalid settlement range
NoDepositsToSettle
Nothing to settle
NoRedeemsToSettle
Nothing to settle
InsufficientAssetsToSettle
Vault underfunded
Integration Example
Checking User Position
Deposit
Redeem
Constants
Last updated
Was this helpful?

