UNPKG

@byzantine/vault-sdk

Version:

Byzantine Vault SDK for creating and managing vaults on Ethereum for restaking strategies

44 lines (43 loc) 2.01 kB
import { ethers } from "ethers"; /** * Get the current fee percentage of the vault * @param vaultContract - The vault contract instance * @returns The current fee percentage (in basis points, e.g. 100 = 1%) */ export declare function getCuratorFee(vaultContract: ethers.Contract): Promise<bigint>; /** * Check if an address is the fee manager * @param vaultContract - The vault contract instance * @param address - Address to check * @returns True if the address is the fee manager */ export declare function isFeeManager(vaultContract: ethers.Contract, address: string): Promise<boolean>; /** * Get the available unclaimed fees for the vault * @param vaultContract - The vault contract instance * @returns The amount of unclaimed fees */ export declare function getUnclaimedFees(vaultContract: ethers.Contract): Promise<bigint>; /** * Set the fee percentage for the vault * @param signer - Ethereum signer (must be the fee manager) * @param vaultContract - The vault contract connected to signer * @param newFee - New fee (in basis points, e.g. 100 = 1%) * @returns Transaction response */ export declare function setVaultFeePercentage(vaultContract: ethers.Contract, newFee: bigint): Promise<ethers.TransactionResponse>; /** * Claim the accumulated fees from the vault * @param signer - Ethereum signer (must be the fee claimer) * @param vaultContract - The vault contract connected to signer * @returns Transaction response */ export declare function claimVaultFees(vaultContract: ethers.Contract): Promise<ethers.TransactionResponse>; /** * Transfer the fee manager role to a new address * @param signer - Ethereum signer (must be the role admin) * @param vaultContract - The vault contract connected to signer * @param newManagerAddress - Address of the new fee manager * @returns Transaction response */ export declare function transferFeeManagerRole(signer: ethers.Signer, vaultContract: ethers.Contract, newManagerAddress: string): Promise<ethers.TransactionResponse>;