/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction, Signer, utils, } from "ethers"; import type { FunctionFragment, Result, EventFragment, } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue, } from "../../common"; export declare namespace IStakeManager { export type DepositInfoStruct = { deposit: PromiseOrValue; staked: PromiseOrValue; stake: PromiseOrValue; unstakeDelaySec: PromiseOrValue; withdrawTime: PromiseOrValue; }; export type DepositInfoStructOutput = [ BigNumber, boolean, BigNumber, number, number ] & { deposit: BigNumber; staked: boolean; stake: BigNumber; unstakeDelaySec: number; withdrawTime: number; }; } export interface IStakeManagerInterface extends utils.Interface { functions: { "addStake(uint32)": FunctionFragment; "balanceOf(address)": FunctionFragment; "depositTo(address)": FunctionFragment; "getDepositInfo(address)": FunctionFragment; "unlockStake()": FunctionFragment; "withdrawStake(address)": FunctionFragment; "withdrawTo(address,uint256)": FunctionFragment; }; getFunction( nameOrSignatureOrTopic: | "addStake" | "balanceOf" | "depositTo" | "getDepositInfo" | "unlockStake" | "withdrawStake" | "withdrawTo" ): FunctionFragment; encodeFunctionData( functionFragment: "addStake", values: [PromiseOrValue] ): string; encodeFunctionData( functionFragment: "balanceOf", values: [PromiseOrValue] ): string; encodeFunctionData( functionFragment: "depositTo", values: [PromiseOrValue] ): string; encodeFunctionData( functionFragment: "getDepositInfo", values: [PromiseOrValue] ): string; encodeFunctionData( functionFragment: "unlockStake", values?: undefined ): string; encodeFunctionData( functionFragment: "withdrawStake", values: [PromiseOrValue] ): string; encodeFunctionData( functionFragment: "withdrawTo", values: [PromiseOrValue, PromiseOrValue] ): string; decodeFunctionResult(functionFragment: "addStake", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositTo", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getDepositInfo", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "unlockStake", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "withdrawStake", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "withdrawTo", data: BytesLike): Result; events: { "Deposited(address,uint256)": EventFragment; "StakeLocked(address,uint256,uint256)": EventFragment; "StakeUnlocked(address,uint256)": EventFragment; "StakeWithdrawn(address,address,uint256)": EventFragment; "Withdrawn(address,address,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Deposited"): EventFragment; getEvent(nameOrSignatureOrTopic: "StakeLocked"): EventFragment; getEvent(nameOrSignatureOrTopic: "StakeUnlocked"): EventFragment; getEvent(nameOrSignatureOrTopic: "StakeWithdrawn"): EventFragment; getEvent(nameOrSignatureOrTopic: "Withdrawn"): EventFragment; } export interface DepositedEventObject { account: string; totalDeposit: BigNumber; } export type DepositedEvent = TypedEvent< [string, BigNumber], DepositedEventObject >; export type DepositedEventFilter = TypedEventFilter; export interface StakeLockedEventObject { account: string; totalStaked: BigNumber; unstakeDelaySec: BigNumber; } export type StakeLockedEvent = TypedEvent< [string, BigNumber, BigNumber], StakeLockedEventObject >; export type StakeLockedEventFilter = TypedEventFilter; export interface StakeUnlockedEventObject { account: string; withdrawTime: BigNumber; } export type StakeUnlockedEvent = TypedEvent< [string, BigNumber], StakeUnlockedEventObject >; export type StakeUnlockedEventFilter = TypedEventFilter; export interface StakeWithdrawnEventObject { account: string; withdrawAddress: string; amount: BigNumber; } export type StakeWithdrawnEvent = TypedEvent< [string, string, BigNumber], StakeWithdrawnEventObject >; export type StakeWithdrawnEventFilter = TypedEventFilter; export interface WithdrawnEventObject { account: string; withdrawAddress: string; amount: BigNumber; } export type WithdrawnEvent = TypedEvent< [string, string, BigNumber], WithdrawnEventObject >; export type WithdrawnEventFilter = TypedEventFilter; export interface IStakeManager extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IStakeManagerInterface; queryFilter( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise>; listeners( eventFilter?: TypedEventFilter ): Array>; listeners(eventName?: string): Array; removeAllListeners( eventFilter: TypedEventFilter ): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { addStake( _unstakeDelaySec: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; balanceOf( account: PromiseOrValue, overrides?: CallOverrides ): Promise<[BigNumber]>; depositTo( account: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; getDepositInfo( account: PromiseOrValue, overrides?: CallOverrides ): Promise< [IStakeManager.DepositInfoStructOutput] & { info: IStakeManager.DepositInfoStructOutput; } >; unlockStake( overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawStake( withdrawAddress: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawTo( withdrawAddress: PromiseOrValue, withdrawAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; }; addStake( _unstakeDelaySec: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; balanceOf( account: PromiseOrValue, overrides?: CallOverrides ): Promise; depositTo( account: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; getDepositInfo( account: PromiseOrValue, overrides?: CallOverrides ): Promise; unlockStake( overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawStake( withdrawAddress: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawTo( withdrawAddress: PromiseOrValue, withdrawAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; callStatic: { addStake( _unstakeDelaySec: PromiseOrValue, overrides?: CallOverrides ): Promise; balanceOf( account: PromiseOrValue, overrides?: CallOverrides ): Promise; depositTo( account: PromiseOrValue, overrides?: CallOverrides ): Promise; getDepositInfo( account: PromiseOrValue, overrides?: CallOverrides ): Promise; unlockStake(overrides?: CallOverrides): Promise; withdrawStake( withdrawAddress: PromiseOrValue, overrides?: CallOverrides ): Promise; withdrawTo( withdrawAddress: PromiseOrValue, withdrawAmount: PromiseOrValue, overrides?: CallOverrides ): Promise; }; filters: { "Deposited(address,uint256)"( account?: PromiseOrValue | null, totalDeposit?: null ): DepositedEventFilter; Deposited( account?: PromiseOrValue | null, totalDeposit?: null ): DepositedEventFilter; "StakeLocked(address,uint256,uint256)"( account?: PromiseOrValue | null, totalStaked?: null, unstakeDelaySec?: null ): StakeLockedEventFilter; StakeLocked( account?: PromiseOrValue | null, totalStaked?: null, unstakeDelaySec?: null ): StakeLockedEventFilter; "StakeUnlocked(address,uint256)"( account?: PromiseOrValue | null, withdrawTime?: null ): StakeUnlockedEventFilter; StakeUnlocked( account?: PromiseOrValue | null, withdrawTime?: null ): StakeUnlockedEventFilter; "StakeWithdrawn(address,address,uint256)"( account?: PromiseOrValue | null, withdrawAddress?: null, amount?: null ): StakeWithdrawnEventFilter; StakeWithdrawn( account?: PromiseOrValue | null, withdrawAddress?: null, amount?: null ): StakeWithdrawnEventFilter; "Withdrawn(address,address,uint256)"( account?: PromiseOrValue | null, withdrawAddress?: null, amount?: null ): WithdrawnEventFilter; Withdrawn( account?: PromiseOrValue | null, withdrawAddress?: null, amount?: null ): WithdrawnEventFilter; }; estimateGas: { addStake( _unstakeDelaySec: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; balanceOf( account: PromiseOrValue, overrides?: CallOverrides ): Promise; depositTo( account: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; getDepositInfo( account: PromiseOrValue, overrides?: CallOverrides ): Promise; unlockStake( overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawStake( withdrawAddress: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawTo( withdrawAddress: PromiseOrValue, withdrawAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; }; populateTransaction: { addStake( _unstakeDelaySec: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; balanceOf( account: PromiseOrValue, overrides?: CallOverrides ): Promise; depositTo( account: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue } ): Promise; getDepositInfo( account: PromiseOrValue, overrides?: CallOverrides ): Promise; unlockStake( overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawStake( withdrawAddress: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; withdrawTo( withdrawAddress: PromiseOrValue, withdrawAmount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue } ): Promise; }; }