hermes-v2-sdk
Version:
⚒️ An SDK for building applications on top of Hermes V2
93 lines (92 loc) • 4.53 kB
TypeScript
import { Interface } from '@ethersproject/abi';
import { TBurnHermesParams, TForfeitClaimMultipleParams, TForfeitClaimParams } from '../../types/bHermes';
/**
* @title BHermes class
* @notice Provides a set of function to encode calldata for the different bHermes contract interactions.
* @author MaiaDAO
*/
export declare abstract class BHermes {
static readonly INTERFACE: Interface;
private constructor();
/**
* Encodes the contract interaction calldata to burn $Hermes in exchange for $bHermes.
* @param amount amount of hermes that the user wants to burn.
* @param receiver receiver address of the burnt hermes.
* @returns the encoded calldata for the burn action.
*/
static encodeBurnCalldata({ amount, receiver }: TBurnHermesParams): string;
/**
* Encodes the contract interaction calldata to claim outstanding rewards.
* @returns the encoded calldata for the claimOutstanding action.
*/
static encodeClaimOutstandingCalldata(): string;
/**
* Encodes the contract interaction calldata to forfeit outstanding rewards.
* @returns the encoded calldata for the forfeitOutstanding action.
*/
static encodeForfeitOutstandingCalldata(): string;
/**
* Encodes the contract interaction calldata to forfeit a certain amount of all types of rewards.
* @param amount amount of each utility token to forfeit.
* @returns the encoded calldata for the forfeitMultiple action.
*/
static encodeForfeitMultipleCalldata({ amount }: TForfeitClaimParams): string;
/**
* Encodes the contract interaction calldata to claim a certain amount of all types of rewards.
* @param weight amount of weight to claim.
* @param boost amount of boost to claim.
* @param governance amount of governance to claim.
* @returns the encoded calldata for the claimMultiple action.
*/
static encodeForfeitMultipleAmoutnsCalldata({ weight, boost, governance, }: TForfeitClaimMultipleParams): string;
/**
* Encodes the contract interaction calldata to forfeit weight.
* @param amount amount of weight to forfeit.
* @returns the encoded calldata for the forfeitWeight action.
*/
static encodeForfeitWeightCalldata({ amount }: TForfeitClaimParams): string;
/**
* Encodes the contract interaction calldata to forfeit boost.
* @param amount amount of boost to forfeit.
* @returns the encoded calldata for the forfeitBoost action.
*/
static encodeForfeitBoostCalldata({ amount }: TForfeitClaimParams): string;
/**
* Encodes the contract interaction calldata to forfeit governance.
* @param amount amount of governance to forfeit.
* @returns the encoded calldata for the forfeitGovernance action.
*/
static encodeForfeitGovernanceCalldata({ amount }: TForfeitClaimParams): string;
/**
* Encodes the contract interaction calldata to claim multiple.
* @param amount amount of each utility token to claim.
* @returns the encoded calldata for the claimMultiple action.
*/
static encodeClaimMultipleCalldata({ amount }: TForfeitClaimParams): string;
/**
* Encodes the contract interaction calldata to claim multiple amounts.
* @param weight amount of weight to claim.
* @param boost amount of boost to claim.
* @param governance amount of governance to claim.
* @returns the encoded calldata for the claimMultipleAmounts action.
*/
static encodeClaimMultipleAmountsCalldata({ weight, boost, governance }: TForfeitClaimMultipleParams): string;
/**
* Encodes the contract interaction calldata to claim weight.
* @param amount amount of weight to claim.
* @returns the encoded calldata for the claimWeight action.
*/
static encodeClaimWeightCalldata({ amount }: TForfeitClaimParams): string;
/**
* Encodes the contract interaction calldata to claim boost.
* @param amount amount of boost to claim.
* @returns the encoded calldata for the claimBoost action.
*/
static encodeClaimBoostCalldata({ amount }: TForfeitClaimParams): string;
/**
* Encodes the contract interaction calldata to claim governance.
* @param amount amount of governance to claim.
* @returns the encoded calldata for the claimGovernance action.
*/
static encodeClaimGovernanceCalldata({ amount }: TForfeitClaimParams): string;
}