import { Interface } from '@ethersproject/abi'; import { TClaimMultipleAmountsParams, TClaimParams, TDepositParams, TForfeitMultipleAmountsParams, TForfeitParams, TMintParams, TRedeemParams, TWithdrawParams } from "../../types/index.js"; /** * @title VMaia class * @notice Provides a set of function to encode calldata for the different vMaia contract interactions. * @author MaiaDAO */ export declare abstract class VMaia { static INTERFACE: Interface; private constructor(); /** * Encodes the contract interaction calldata to deposit $Maia in exchange for $vMaia. * @param amount amount of maia that the user wants to lock. * @param receiver receiver address of the vote locked maia. * @returns the encoded calldata for the deposit action. */ static encodeDepositCalldata({ amount, receiver }: TDepositParams): string; /** * Encodes the contract interaction calldata to mint $vMaia in exchange for a $Maia deposit. * @param shares amount of vMaia that the user wants to mint. * @param receiver receiver address of the minted vMaia. * @returns the encoded calldata for the mint action. */ static encodeMintCalldata({ shares, receiver }: TMintParams): string; /** * Encodes the contract interaction calldata to withdraw $Maia in exchange for $vMaia. * @param amount amount of vMaia that the user wants to burn. * @param receiver receiver address of the unlocked Maia. * @param owner address of the vMaia shares owner. * @returns the encoded calldata for the withdraw action. */ static encodeWithdrawCalldata({ amount, receiver, owner }: TWithdrawParams): string; /** * Encodes the contract interaction calldata to redeem $Maia in exchange for $vMaia. * @param shares amount of vMaia that the user wants to burn. * @param receiver receiver address of the unlocked Maia. * @param owner address of the vMaia shares owner. * @returns the encoded calldata for the redeem action. */ static encodeRedeemCalldata({ shares, receiver, owner }: TRedeemParams): string; /** * Encodes the contract interaction calldata to forfeit utility tokens. * @param amount amount of utility tokens that the user wants to forfeit. * @returns the encoded calldata for the forfeit action. */ static encodeForfeitMultipleCalldata({ amount }: TForfeitParams): string; /** * Encodes the contract interaction calldata to forfeit utility tokens. * @param weight amount of bHermes gauge weight utility tokens that the user wants to forfeit. * @param governance amount of bHermes governance utility tokens that the user wants to forfeit. * @param partnerGovernance amount of vMaia Governance utility tokens that the user wants to forfeit. * @returns the encoded calldata for the forfeit action. */ static encodeForfeitMultipleAmountsCalldata({ weight, governance, partnerGovernance, }: TForfeitMultipleAmountsParams): string; /** * Encodes the contract interaction calldata to forfeit bHermes gauge weight utility tokens. * @param amount amount of gauge weight utility tokens that the user wants to forfeit. * @returns the encoded calldata for the forfeit action. */ static encodeForfeitWeightCalldata({ amount }: TForfeitParams): string; /** * Encodes the contract interaction calldata to forfeit bHermes governance utility tokens. * @param amount amount of governance utility tokens that the user wants to forfeit. * @returns the encoded calldata for the forfeit action. */ static encodeForfeitGovernanceCalldata({ amount }: TForfeitParams): string; /** * Encodes the contract interaction calldata to forfeit vMaia governance utility tokens. * @param amount amount of vMaia governance utility tokens that the user wants to forfeit. * @returns the encoded calldata for the forfeit action. */ static encodeForfeitPartnerGovernanceCalldata({ amount }: TForfeitParams): string; /** * Encodes the contract interaction calldata to claim utility tokens. * @param amount amount of utility tokens that the user wants to claim. * @returns the encoded calldata for the claim action. */ static encodeClaimMultipleCalldata({ amount }: TClaimParams): string; /** * Encodes the contract interaction calldata to claim utility tokens. * @param weight amount of bHermes gauge weight utility tokens that the user wants to claim. * @param governance amount of bHermes governance utility tokens that the user wants to claim. * @param partnerGovernance amount of vMaia Governance utility tokens that the user wants to claim. * @returns the encoded calldata for the claim action. */ static encodeClaimMultipleAmountsCalldata({ weight, governance, partnerGovernance, }: TClaimMultipleAmountsParams): string; /** * Encodes the contract interaction calldata to claim bHermes gauge weight utility tokens. * @param amount amount of gauge weight utility tokens that the user wants to claim. * @returns the encoded calldata for the claim action. */ static encodeClaimWeightCalldata({ amount }: TClaimParams): string; /** * Encodes the contract interaction calldata to claim bHermes governance utility tokens. * @param amount amount of governance utility tokens that the user wants to claim. * @returns the encoded calldata for the claim action. */ static encodeClaimGovernanceCalldata({ amount }: TClaimParams): string; /** * Encodes the contract interaction calldata to claim vMaia governance utility tokens. * @param amount amount of vMaia governance utility tokens that the user wants to claim. * @returns the encoded calldata for the claim action. */ static encodeClaimPartnerGovernanceCalldata({ amount }: TClaimParams): string; } //# sourceMappingURL=index.d.ts.map