Usage notes
Full Deposit Process (Ethers.js)
import { ethers } from "ethers";
import brinkVaultAbi from "./BrinkVault.json";
const brinkVault = new ethers.Contract(brinkVaultAddress, brinkVaultAbi, signer);
const asset = new ethers.Contract(assetAddress, erc20Abi, signer);
const amount = ethers.parseUnits("100", 18);
// Step 1: Approve
await asset.approve(brinkVaultAddress, amount);
// Step 2: Deposit
const tx = await brinkVault.deposit(amount, await signer.getAddress());
await tx.wait();
// Step 3: Check balance
const shares = await brinkVault.balanceOf(await signer.getAddress());
console.log("Vault shares:", shares.toString());Withdraw Tokens
View Vault State
Summary
The BrinkVault contract provides a user-friendly ERC-4626 vault interface for depositing, earning, and withdrawing ERC20 tokens. As an investor:
Approve → Deposit → Earn → Withdraw
Monitor your balance and vault performance using read-only functions. Administrative operations (e.g., rebalancing, whitelist management) are handled by vault managers and strategists.
Last updated