UNPKG

@mstable/protocol

Version:
1,754 lines (1,480 loc) 50 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, BaseContract, ContractTransaction, Overrides, CallOverrides, } from "ethers"; import { BytesLike } from "@ethersproject/bytes"; import { Listener, Provider } from "@ethersproject/providers"; import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi"; import { TypedEventFilter, TypedEvent, TypedListener } from "./commons"; interface AaveStakedTokenV2Interface extends ethers.utils.Interface { functions: { "COOLDOWN_SECONDS()": FunctionFragment; "DELEGATE_BY_TYPE_TYPEHASH()": FunctionFragment; "DELEGATE_TYPEHASH()": FunctionFragment; "DISTRIBUTION_END()": FunctionFragment; "DOMAIN_SEPARATOR()": FunctionFragment; "EIP712_REVISION()": FunctionFragment; "EMISSION_MANAGER()": FunctionFragment; "PERMIT_TYPEHASH()": FunctionFragment; "PRECISION()": FunctionFragment; "REVISION()": FunctionFragment; "REWARDS_VAULT()": FunctionFragment; "REWARD_TOKEN()": FunctionFragment; "STAKED_TOKEN()": FunctionFragment; "UNSTAKE_WINDOW()": FunctionFragment; "_aaveGovernance()": FunctionFragment; "_nonces(address)": FunctionFragment; "_votingSnapshots(address,uint256)": FunctionFragment; "_votingSnapshotsCounts(address)": FunctionFragment; "allowance(address,address)": FunctionFragment; "approve(address,uint256)": FunctionFragment; "assets(address)": FunctionFragment; "balanceOf(address)": FunctionFragment; "claimRewards(address,uint256)": FunctionFragment; "configureAssets(tuple[])": FunctionFragment; "cooldown()": FunctionFragment; "decimals()": FunctionFragment; "decreaseAllowance(address,uint256)": FunctionFragment; "delegate(address)": FunctionFragment; "delegateBySig(address,uint256,uint256,uint8,bytes32,bytes32)": FunctionFragment; "delegateByType(address,uint8)": FunctionFragment; "delegateByTypeBySig(address,uint8,uint256,uint256,uint8,bytes32,bytes32)": FunctionFragment; "getDelegateeByType(address,uint8)": FunctionFragment; "getNextCooldownTimestamp(uint256,uint256,address,uint256)": FunctionFragment; "getPowerAtBlock(address,uint256,uint8)": FunctionFragment; "getPowerCurrent(address,uint8)": FunctionFragment; "getTotalRewardsBalance(address)": FunctionFragment; "getUserAssetData(address,address)": FunctionFragment; "increaseAllowance(address,uint256)": FunctionFragment; "initialize()": FunctionFragment; "name()": FunctionFragment; "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)": FunctionFragment; "redeem(address,uint256)": FunctionFragment; "stake(address,uint256)": FunctionFragment; "stakerRewardsToClaim(address)": FunctionFragment; "stakersCooldowns(address)": FunctionFragment; "symbol()": FunctionFragment; "totalSupply()": FunctionFragment; "totalSupplyAt(uint256)": FunctionFragment; "transfer(address,uint256)": FunctionFragment; "transferFrom(address,address,uint256)": FunctionFragment; }; encodeFunctionData( functionFragment: "COOLDOWN_SECONDS", values?: undefined ): string; encodeFunctionData( functionFragment: "DELEGATE_BY_TYPE_TYPEHASH", values?: undefined ): string; encodeFunctionData( functionFragment: "DELEGATE_TYPEHASH", values?: undefined ): string; encodeFunctionData( functionFragment: "DISTRIBUTION_END", values?: undefined ): string; encodeFunctionData( functionFragment: "DOMAIN_SEPARATOR", values?: undefined ): string; encodeFunctionData( functionFragment: "EIP712_REVISION", values?: undefined ): string; encodeFunctionData( functionFragment: "EMISSION_MANAGER", values?: undefined ): string; encodeFunctionData( functionFragment: "PERMIT_TYPEHASH", values?: undefined ): string; encodeFunctionData(functionFragment: "PRECISION", values?: undefined): string; encodeFunctionData(functionFragment: "REVISION", values?: undefined): string; encodeFunctionData( functionFragment: "REWARDS_VAULT", values?: undefined ): string; encodeFunctionData( functionFragment: "REWARD_TOKEN", values?: undefined ): string; encodeFunctionData( functionFragment: "STAKED_TOKEN", values?: undefined ): string; encodeFunctionData( functionFragment: "UNSTAKE_WINDOW", values?: undefined ): string; encodeFunctionData( functionFragment: "_aaveGovernance", values?: undefined ): string; encodeFunctionData(functionFragment: "_nonces", values: [string]): string; encodeFunctionData( functionFragment: "_votingSnapshots", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "_votingSnapshotsCounts", values: [string] ): string; encodeFunctionData( functionFragment: "allowance", values: [string, string] ): string; encodeFunctionData( functionFragment: "approve", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "assets", values: [string]): string; encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; encodeFunctionData( functionFragment: "claimRewards", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "configureAssets", values: [ { emissionPerSecond: BigNumberish; totalStaked: BigNumberish; underlyingAsset: string; }[] ] ): string; encodeFunctionData(functionFragment: "cooldown", values?: undefined): string; encodeFunctionData(functionFragment: "decimals", values?: undefined): string; encodeFunctionData( functionFragment: "decreaseAllowance", values: [string, BigNumberish] ): string; encodeFunctionData(functionFragment: "delegate", values: [string]): string; encodeFunctionData( functionFragment: "delegateBySig", values: [ string, BigNumberish, BigNumberish, BigNumberish, BytesLike, BytesLike ] ): string; encodeFunctionData( functionFragment: "delegateByType", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "delegateByTypeBySig", values: [ string, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BytesLike, BytesLike ] ): string; encodeFunctionData( functionFragment: "getDelegateeByType", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "getNextCooldownTimestamp", values: [BigNumberish, BigNumberish, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "getPowerAtBlock", values: [string, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "getPowerCurrent", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "getTotalRewardsBalance", values: [string] ): string; encodeFunctionData( functionFragment: "getUserAssetData", values: [string, string] ): string; encodeFunctionData( functionFragment: "increaseAllowance", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "initialize", values?: undefined ): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData( functionFragment: "permit", values: [ string, string, BigNumberish, BigNumberish, BigNumberish, BytesLike, BytesLike ] ): string; encodeFunctionData( functionFragment: "redeem", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "stake", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "stakerRewardsToClaim", values: [string] ): string; encodeFunctionData( functionFragment: "stakersCooldowns", values: [string] ): string; encodeFunctionData(functionFragment: "symbol", values?: undefined): string; encodeFunctionData( functionFragment: "totalSupply", values?: undefined ): string; encodeFunctionData( functionFragment: "totalSupplyAt", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "transfer", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "transferFrom", values: [string, string, BigNumberish] ): string; decodeFunctionResult( functionFragment: "COOLDOWN_SECONDS", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "DELEGATE_BY_TYPE_TYPEHASH", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "DELEGATE_TYPEHASH", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "DISTRIBUTION_END", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "DOMAIN_SEPARATOR", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "EIP712_REVISION", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "EMISSION_MANAGER", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "PERMIT_TYPEHASH", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "PRECISION", data: BytesLike): Result; decodeFunctionResult(functionFragment: "REVISION", data: BytesLike): Result; decodeFunctionResult( functionFragment: "REWARDS_VAULT", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "REWARD_TOKEN", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "STAKED_TOKEN", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "UNSTAKE_WINDOW", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "_aaveGovernance", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "_nonces", data: BytesLike): Result; decodeFunctionResult( functionFragment: "_votingSnapshots", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "_votingSnapshotsCounts", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult(functionFragment: "assets", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult( functionFragment: "claimRewards", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "configureAssets", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "cooldown", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; decodeFunctionResult( functionFragment: "decreaseAllowance", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "delegate", data: BytesLike): Result; decodeFunctionResult( functionFragment: "delegateBySig", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "delegateByType", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "delegateByTypeBySig", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getDelegateeByType", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getNextCooldownTimestamp", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getPowerAtBlock", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getPowerCurrent", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getTotalRewardsBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getUserAssetData", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "increaseAllowance", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "redeem", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; decodeFunctionResult( functionFragment: "stakerRewardsToClaim", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "stakersCooldowns", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; decodeFunctionResult( functionFragment: "totalSupply", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "totalSupplyAt", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult( functionFragment: "transferFrom", data: BytesLike ): Result; events: { "Approval(address,address,uint256)": EventFragment; "AssetConfigUpdated(address,uint256)": EventFragment; "AssetIndexUpdated(address,uint256)": EventFragment; "Cooldown(address)": EventFragment; "DelegateChanged(address,address,uint8)": EventFragment; "DelegatedPowerChanged(address,uint256,uint8)": EventFragment; "Redeem(address,address,uint256)": EventFragment; "RewardsAccrued(address,uint256)": EventFragment; "RewardsClaimed(address,address,uint256)": EventFragment; "Staked(address,address,uint256)": EventFragment; "Transfer(address,address,uint256)": EventFragment; "UserIndexUpdated(address,address,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Approval"): EventFragment; getEvent(nameOrSignatureOrTopic: "AssetConfigUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "AssetIndexUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "Cooldown"): EventFragment; getEvent(nameOrSignatureOrTopic: "DelegateChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "DelegatedPowerChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "Redeem"): EventFragment; getEvent(nameOrSignatureOrTopic: "RewardsAccrued"): EventFragment; getEvent(nameOrSignatureOrTopic: "RewardsClaimed"): EventFragment; getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; getEvent(nameOrSignatureOrTopic: "Transfer"): EventFragment; getEvent(nameOrSignatureOrTopic: "UserIndexUpdated"): EventFragment; } export class AaveStakedTokenV2 extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; listeners<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter?: TypedEventFilter<EventArgsArray, EventArgsObject> ): Array<TypedListener<EventArgsArray, EventArgsObject>>; off<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; on<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; once<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; removeListener<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject>, listener: TypedListener<EventArgsArray, EventArgsObject> ): this; removeAllListeners<EventArgsArray extends Array<any>, EventArgsObject>( eventFilter: TypedEventFilter<EventArgsArray, EventArgsObject> ): this; listeners(eventName?: string): Array<Listener>; off(eventName: string, listener: Listener): this; on(eventName: string, listener: Listener): this; once(eventName: string, listener: Listener): this; removeListener(eventName: string, listener: Listener): this; removeAllListeners(eventName?: string): this; queryFilter<EventArgsArray extends Array<any>, EventArgsObject>( event: TypedEventFilter<EventArgsArray, EventArgsObject>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise<Array<TypedEvent<EventArgsArray & EventArgsObject>>>; interface: AaveStakedTokenV2Interface; functions: { COOLDOWN_SECONDS(overrides?: CallOverrides): Promise<[BigNumber]>; DELEGATE_BY_TYPE_TYPEHASH(overrides?: CallOverrides): Promise<[string]>; DELEGATE_TYPEHASH(overrides?: CallOverrides): Promise<[string]>; DISTRIBUTION_END(overrides?: CallOverrides): Promise<[BigNumber]>; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<[string]>; EIP712_REVISION(overrides?: CallOverrides): Promise<[string]>; EMISSION_MANAGER(overrides?: CallOverrides): Promise<[string]>; PERMIT_TYPEHASH(overrides?: CallOverrides): Promise<[string]>; PRECISION(overrides?: CallOverrides): Promise<[number]>; REVISION(overrides?: CallOverrides): Promise<[BigNumber]>; REWARDS_VAULT(overrides?: CallOverrides): Promise<[string]>; REWARD_TOKEN(overrides?: CallOverrides): Promise<[string]>; STAKED_TOKEN(overrides?: CallOverrides): Promise<[string]>; UNSTAKE_WINDOW(overrides?: CallOverrides): Promise<[BigNumber]>; _aaveGovernance(overrides?: CallOverrides): Promise<[string]>; _nonces(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; _votingSnapshots( arg0: string, arg1: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { blockNumber: BigNumber; value: BigNumber } >; _votingSnapshotsCounts( arg0: string, overrides?: CallOverrides ): Promise<[BigNumber]>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<[BigNumber]>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; assets( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { emissionPerSecond: BigNumber; lastUpdateTimestamp: BigNumber; index: BigNumber; } >; balanceOf(account: string, overrides?: CallOverrides): Promise<[BigNumber]>; claimRewards( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; configureAssets( assetsConfigInput: { emissionPerSecond: BigNumberish; totalStaked: BigNumberish; underlyingAsset: string; }[], overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; cooldown( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; decimals(overrides?: CallOverrides): Promise<[number]>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegate( delegatee: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegateBySig( delegatee: string, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegateByType( delegatee: string, delegationType: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegateByTypeBySig( delegatee: string, delegationType: BigNumberish, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; getDelegateeByType( delegator: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<[string]>; getNextCooldownTimestamp( fromCooldownTimestamp: BigNumberish, amountToReceive: BigNumberish, toAddress: string, toBalance: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; getPowerAtBlock( user: string, blockNumber: BigNumberish, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber]>; getPowerCurrent( user: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber]>; getTotalRewardsBalance( staker: string, overrides?: CallOverrides ): Promise<[BigNumber]>; getUserAssetData( user: string, asset: string, overrides?: CallOverrides ): Promise<[BigNumber]>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; initialize( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; name(overrides?: CallOverrides): Promise<[string]>; permit( owner: string, spender: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeem( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; stake( onBehalfOf: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; stakerRewardsToClaim( arg0: string, overrides?: CallOverrides ): Promise<[BigNumber]>; stakersCooldowns( arg0: string, overrides?: CallOverrides ): Promise<[BigNumber]>; symbol(overrides?: CallOverrides): Promise<[string]>; totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>; totalSupplyAt( blockNumber: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber]>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; }; COOLDOWN_SECONDS(overrides?: CallOverrides): Promise<BigNumber>; DELEGATE_BY_TYPE_TYPEHASH(overrides?: CallOverrides): Promise<string>; DELEGATE_TYPEHASH(overrides?: CallOverrides): Promise<string>; DISTRIBUTION_END(overrides?: CallOverrides): Promise<BigNumber>; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<string>; EIP712_REVISION(overrides?: CallOverrides): Promise<string>; EMISSION_MANAGER(overrides?: CallOverrides): Promise<string>; PERMIT_TYPEHASH(overrides?: CallOverrides): Promise<string>; PRECISION(overrides?: CallOverrides): Promise<number>; REVISION(overrides?: CallOverrides): Promise<BigNumber>; REWARDS_VAULT(overrides?: CallOverrides): Promise<string>; REWARD_TOKEN(overrides?: CallOverrides): Promise<string>; STAKED_TOKEN(overrides?: CallOverrides): Promise<string>; UNSTAKE_WINDOW(overrides?: CallOverrides): Promise<BigNumber>; _aaveGovernance(overrides?: CallOverrides): Promise<string>; _nonces(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; _votingSnapshots( arg0: string, arg1: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { blockNumber: BigNumber; value: BigNumber } >; _votingSnapshotsCounts( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; assets( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { emissionPerSecond: BigNumber; lastUpdateTimestamp: BigNumber; index: BigNumber; } >; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; claimRewards( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; configureAssets( assetsConfigInput: { emissionPerSecond: BigNumberish; totalStaked: BigNumberish; underlyingAsset: string; }[], overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; cooldown( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; decimals(overrides?: CallOverrides): Promise<number>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegate( delegatee: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegateBySig( delegatee: string, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegateByType( delegatee: string, delegationType: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; delegateByTypeBySig( delegatee: string, delegationType: BigNumberish, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; getDelegateeByType( delegator: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<string>; getNextCooldownTimestamp( fromCooldownTimestamp: BigNumberish, amountToReceive: BigNumberish, toAddress: string, toBalance: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; getPowerAtBlock( user: string, blockNumber: BigNumberish, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getPowerCurrent( user: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getTotalRewardsBalance( staker: string, overrides?: CallOverrides ): Promise<BigNumber>; getUserAssetData( user: string, asset: string, overrides?: CallOverrides ): Promise<BigNumber>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; initialize( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; name(overrides?: CallOverrides): Promise<string>; permit( owner: string, spender: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; redeem( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; stake( onBehalfOf: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; stakerRewardsToClaim( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; stakersCooldowns(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; symbol(overrides?: CallOverrides): Promise<string>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; totalSupplyAt( blockNumber: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<ContractTransaction>; callStatic: { COOLDOWN_SECONDS(overrides?: CallOverrides): Promise<BigNumber>; DELEGATE_BY_TYPE_TYPEHASH(overrides?: CallOverrides): Promise<string>; DELEGATE_TYPEHASH(overrides?: CallOverrides): Promise<string>; DISTRIBUTION_END(overrides?: CallOverrides): Promise<BigNumber>; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<string>; EIP712_REVISION(overrides?: CallOverrides): Promise<string>; EMISSION_MANAGER(overrides?: CallOverrides): Promise<string>; PERMIT_TYPEHASH(overrides?: CallOverrides): Promise<string>; PRECISION(overrides?: CallOverrides): Promise<number>; REVISION(overrides?: CallOverrides): Promise<BigNumber>; REWARDS_VAULT(overrides?: CallOverrides): Promise<string>; REWARD_TOKEN(overrides?: CallOverrides): Promise<string>; STAKED_TOKEN(overrides?: CallOverrides): Promise<string>; UNSTAKE_WINDOW(overrides?: CallOverrides): Promise<BigNumber>; _aaveGovernance(overrides?: CallOverrides): Promise<string>; _nonces(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; _votingSnapshots( arg0: string, arg1: BigNumberish, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber] & { blockNumber: BigNumber; value: BigNumber } >; _votingSnapshotsCounts( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; assets( arg0: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber] & { emissionPerSecond: BigNumber; lastUpdateTimestamp: BigNumber; index: BigNumber; } >; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; claimRewards( to: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<void>; configureAssets( assetsConfigInput: { emissionPerSecond: BigNumberish; totalStaked: BigNumberish; underlyingAsset: string; }[], overrides?: CallOverrides ): Promise<void>; cooldown(overrides?: CallOverrides): Promise<void>; decimals(overrides?: CallOverrides): Promise<number>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; delegate(delegatee: string, overrides?: CallOverrides): Promise<void>; delegateBySig( delegatee: string, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: CallOverrides ): Promise<void>; delegateByType( delegatee: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<void>; delegateByTypeBySig( delegatee: string, delegationType: BigNumberish, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: CallOverrides ): Promise<void>; getDelegateeByType( delegator: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<string>; getNextCooldownTimestamp( fromCooldownTimestamp: BigNumberish, amountToReceive: BigNumberish, toAddress: string, toBalance: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getPowerAtBlock( user: string, blockNumber: BigNumberish, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getPowerCurrent( user: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getTotalRewardsBalance( staker: string, overrides?: CallOverrides ): Promise<BigNumber>; getUserAssetData( user: string, asset: string, overrides?: CallOverrides ): Promise<BigNumber>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; initialize(overrides?: CallOverrides): Promise<void>; name(overrides?: CallOverrides): Promise<string>; permit( owner: string, spender: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: CallOverrides ): Promise<void>; redeem( to: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<void>; stake( onBehalfOf: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<void>; stakerRewardsToClaim( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; stakersCooldowns( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; symbol(overrides?: CallOverrides): Promise<string>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; totalSupplyAt( blockNumber: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: CallOverrides ): Promise<boolean>; }; filters: { Approval( owner?: string | null, spender?: string | null, value?: null ): TypedEventFilter< [string, string, BigNumber], { owner: string; spender: string; value: BigNumber } >; AssetConfigUpdated( asset?: string | null, emission?: null ): TypedEventFilter< [string, BigNumber], { asset: string; emission: BigNumber } >; AssetIndexUpdated( asset?: string | null, index?: null ): TypedEventFilter< [string, BigNumber], { asset: string; index: BigNumber } >; Cooldown( user?: string | null ): TypedEventFilter<[string], { user: string }>; DelegateChanged( delegator?: string | null, delegatee?: string | null, delegationType?: null ): TypedEventFilter< [string, string, number], { delegator: string; delegatee: string; delegationType: number } >; DelegatedPowerChanged( user?: string | null, amount?: null, delegationType?: null ): TypedEventFilter< [string, BigNumber, number], { user: string; amount: BigNumber; delegationType: number } >; Redeem( from?: string | null, to?: string | null, amount?: null ): TypedEventFilter< [string, string, BigNumber], { from: string; to: string; amount: BigNumber } >; RewardsAccrued( user?: null, amount?: null ): TypedEventFilter< [string, BigNumber], { user: string; amount: BigNumber } >; RewardsClaimed( from?: string | null, to?: string | null, amount?: null ): TypedEventFilter< [string, string, BigNumber], { from: string; to: string; amount: BigNumber } >; Staked( from?: string | null, onBehalfOf?: string | null, amount?: null ): TypedEventFilter< [string, string, BigNumber], { from: string; onBehalfOf: string; amount: BigNumber } >; Transfer( from?: string | null, to?: string | null, value?: null ): TypedEventFilter< [string, string, BigNumber], { from: string; to: string; value: BigNumber } >; UserIndexUpdated( user?: string | null, asset?: string | null, index?: null ): TypedEventFilter< [string, string, BigNumber], { user: string; asset: string; index: BigNumber } >; }; estimateGas: { COOLDOWN_SECONDS(overrides?: CallOverrides): Promise<BigNumber>; DELEGATE_BY_TYPE_TYPEHASH(overrides?: CallOverrides): Promise<BigNumber>; DELEGATE_TYPEHASH(overrides?: CallOverrides): Promise<BigNumber>; DISTRIBUTION_END(overrides?: CallOverrides): Promise<BigNumber>; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<BigNumber>; EIP712_REVISION(overrides?: CallOverrides): Promise<BigNumber>; EMISSION_MANAGER(overrides?: CallOverrides): Promise<BigNumber>; PERMIT_TYPEHASH(overrides?: CallOverrides): Promise<BigNumber>; PRECISION(overrides?: CallOverrides): Promise<BigNumber>; REVISION(overrides?: CallOverrides): Promise<BigNumber>; REWARDS_VAULT(overrides?: CallOverrides): Promise<BigNumber>; REWARD_TOKEN(overrides?: CallOverrides): Promise<BigNumber>; STAKED_TOKEN(overrides?: CallOverrides): Promise<BigNumber>; UNSTAKE_WINDOW(overrides?: CallOverrides): Promise<BigNumber>; _aaveGovernance(overrides?: CallOverrides): Promise<BigNumber>; _nonces(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; _votingSnapshots( arg0: string, arg1: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; _votingSnapshotsCounts( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<BigNumber>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; assets(arg0: string, overrides?: CallOverrides): Promise<BigNumber>; balanceOf(account: string, overrides?: CallOverrides): Promise<BigNumber>; claimRewards( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; configureAssets( assetsConfigInput: { emissionPerSecond: BigNumberish; totalStaked: BigNumberish; underlyingAsset: string; }[], overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; cooldown( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; decimals(overrides?: CallOverrides): Promise<BigNumber>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; delegate( delegatee: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; delegateBySig( delegatee: string, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; delegateByType( delegatee: string, delegationType: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; delegateByTypeBySig( delegatee: string, delegationType: BigNumberish, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; getDelegateeByType( delegator: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getNextCooldownTimestamp( fromCooldownTimestamp: BigNumberish, amountToReceive: BigNumberish, toAddress: string, toBalance: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; getPowerAtBlock( user: string, blockNumber: BigNumberish, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getPowerCurrent( user: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; getTotalRewardsBalance( staker: string, overrides?: CallOverrides ): Promise<BigNumber>; getUserAssetData( user: string, asset: string, overrides?: CallOverrides ): Promise<BigNumber>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; initialize( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; name(overrides?: CallOverrides): Promise<BigNumber>; permit( owner: string, spender: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; redeem( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; stake( onBehalfOf: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; stakerRewardsToClaim( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; stakersCooldowns( arg0: string, overrides?: CallOverrides ): Promise<BigNumber>; symbol(overrides?: CallOverrides): Promise<BigNumber>; totalSupply(overrides?: CallOverrides): Promise<BigNumber>; totalSupplyAt( blockNumber: BigNumberish, overrides?: CallOverrides ): Promise<BigNumber>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<BigNumber>; }; populateTransaction: { COOLDOWN_SECONDS(overrides?: CallOverrides): Promise<PopulatedTransaction>; DELEGATE_BY_TYPE_TYPEHASH( overrides?: CallOverrides ): Promise<PopulatedTransaction>; DELEGATE_TYPEHASH(overrides?: CallOverrides): Promise<PopulatedTransaction>; DISTRIBUTION_END(overrides?: CallOverrides): Promise<PopulatedTransaction>; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<PopulatedTransaction>; EIP712_REVISION(overrides?: CallOverrides): Promise<PopulatedTransaction>; EMISSION_MANAGER(overrides?: CallOverrides): Promise<PopulatedTransaction>; PERMIT_TYPEHASH(overrides?: CallOverrides): Promise<PopulatedTransaction>; PRECISION(overrides?: CallOverrides): Promise<PopulatedTransaction>; REVISION(overrides?: CallOverrides): Promise<PopulatedTransaction>; REWARDS_VAULT(overrides?: CallOverrides): Promise<PopulatedTransaction>; REWARD_TOKEN(overrides?: CallOverrides): Promise<PopulatedTransaction>; STAKED_TOKEN(overrides?: CallOverrides): Promise<PopulatedTransaction>; UNSTAKE_WINDOW(overrides?: CallOverrides): Promise<PopulatedTransaction>; _aaveGovernance(overrides?: CallOverrides): Promise<PopulatedTransaction>; _nonces( arg0: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; _votingSnapshots( arg0: string, arg1: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; _votingSnapshotsCounts( arg0: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; allowance( owner: string, spender: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; approve( spender: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; assets( arg0: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; balanceOf( account: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; claimRewards( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; configureAssets( assetsConfigInput: { emissionPerSecond: BigNumberish; totalStaked: BigNumberish; underlyingAsset: string; }[], overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; cooldown( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; decimals(overrides?: CallOverrides): Promise<PopulatedTransaction>; decreaseAllowance( spender: string, subtractedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; delegate( delegatee: string, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; delegateBySig( delegatee: string, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; delegateByType( delegatee: string, delegationType: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; delegateByTypeBySig( delegatee: string, delegationType: BigNumberish, nonce: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; getDelegateeByType( delegator: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; getNextCooldownTimestamp( fromCooldownTimestamp: BigNumberish, amountToReceive: BigNumberish, toAddress: string, toBalance: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; getPowerAtBlock( user: string, blockNumber: BigNumberish, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; getPowerCurrent( user: string, delegationType: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; getTotalRewardsBalance( staker: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; getUserAssetData( user: string, asset: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; increaseAllowance( spender: string, addedValue: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; initialize( overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; name(overrides?: CallOverrides): Promise<PopulatedTransaction>; permit( owner: string, spender: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; redeem( to: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; stake( onBehalfOf: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; stakerRewardsToClaim( arg0: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; stakersCooldowns( arg0: string, overrides?: CallOverrides ): Promise<PopulatedTransaction>; symbol(overrides?: CallOverrides): Promise<PopulatedTransaction>; totalSupply(overrides?: CallOverrides): Promise<PopulatedTransaction>; totalSupplyAt( blockNumber: BigNumberish, overrides?: CallOverrides ): Promise<PopulatedTransaction>; transfer( recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> } ): Promise<PopulatedTransaction>; transferFrom( sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides & { from?: string | Promise<string> }