UNPKG

@byzantine/vault-sdk

Version:

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

45 lines (44 loc) 1.71 kB
import { ethers } from "ethers"; export declare class EigenLayerClient { private provider; private signer?; private vaultTypeClient; private vaultCache; constructor(provider: ethers.Provider, signer?: ethers.Signer); /** * Get the SuperVault contract instance * @param vaultAddress The address of the SuperVault * @returns The SuperVault contract instance */ private getSuperVaultContract; /** * Get the vault contract instance * @param vaultAddress The address of the vault or SuperVault * @returns The vault contract instance */ private getVaultContract; /** * Clear the cache for a specific vault or all vaults * @param vaultAddress Optional address of the vault to clear from cache */ clearCache(vaultAddress?: string): void; /** * Get the Eigen Operator of a vault * @param vaultAddress The address of the vault * @returns The Eigen Operator */ getEigenOperator(vaultAddress: string): Promise<string>; /** * Set the Eigen Operator of a vault * @param vaultAddress The address of the vault * @param operator The new Eigen Operator * @param approverSignatureAndExpiry The signature and expiry for the approver * @param approverSalt The salt for the approver * @param options Optional transaction parameters like gas limit, gas price, etc. * @returns Transaction response */ setEigenOperator(vaultAddress: string, operator: string, approverSignatureAndExpiry: { signature: string; expiry: number; }, approverSalt: string, options?: Partial<ethers.TransactionRequest>): Promise<ethers.TransactionResponse>; }