UNPKG

@collabland/staking-contracts

Version:
355 lines (354 loc) 20.5 kB
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, 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 } from "./common.js"; export type StakeMultipleInputsStruct = { tokenId: BigNumberish; lockTime: BigNumberish; }; export type StakeMultipleInputsStructOutput = [BigNumber, BigNumber] & { tokenId: BigNumber; lockTime: BigNumber; }; export interface TtooStakingInterface extends utils.Interface { functions: { "addLockTime(uint256)": FunctionFragment; "addMultipleLockTimes(uint256[])": FunctionFragment; "delegationRegistry()": FunctionFragment; "getLockTimes()": FunctionFragment; "getUnlockTime(uint256)": FunctionFragment; "getUserStakedCount(address)": FunctionFragment; "getUserStakingInfo(address)": FunctionFragment; "isValidLockTime(uint256)": FunctionFragment; "lockInfos(uint256)": FunctionFragment; "nft()": FunctionFragment; "onERC721Received(address,address,uint256,bytes)": FunctionFragment; "owner()": FunctionFragment; "removeLockTime(uint256)": FunctionFragment; "removeMultipleLockTimes(uint256[])": FunctionFragment; "renounceOwnership()": FunctionFragment; "stake(uint256,uint256)": FunctionFragment; "stakeMultiple((uint256,uint256)[])": FunctionFragment; "transferOwnership(address)": FunctionFragment; "unstake(uint256)": FunctionFragment; "unstakeMultiple(uint256[])": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "addLockTime" | "addMultipleLockTimes" | "delegationRegistry" | "getLockTimes" | "getUnlockTime" | "getUserStakedCount" | "getUserStakingInfo" | "isValidLockTime" | "lockInfos" | "nft" | "onERC721Received" | "owner" | "removeLockTime" | "removeMultipleLockTimes" | "renounceOwnership" | "stake" | "stakeMultiple" | "transferOwnership" | "unstake" | "unstakeMultiple"): FunctionFragment; encodeFunctionData(functionFragment: "addLockTime", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "addMultipleLockTimes", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "delegationRegistry", values?: undefined): string; encodeFunctionData(functionFragment: "getLockTimes", values?: undefined): string; encodeFunctionData(functionFragment: "getUnlockTime", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getUserStakedCount", values: [string]): string; encodeFunctionData(functionFragment: "getUserStakingInfo", values: [string]): string; encodeFunctionData(functionFragment: "isValidLockTime", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "lockInfos", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "nft", values?: undefined): string; encodeFunctionData(functionFragment: "onERC721Received", values: [string, string, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "removeLockTime", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "removeMultipleLockTimes", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; encodeFunctionData(functionFragment: "stake", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "stakeMultiple", values: [StakeMultipleInputsStruct[]]): string; encodeFunctionData(functionFragment: "transferOwnership", values: [string]): string; encodeFunctionData(functionFragment: "unstake", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "unstakeMultiple", values: [BigNumberish[]]): string; decodeFunctionResult(functionFragment: "addLockTime", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addMultipleLockTimes", data: BytesLike): Result; decodeFunctionResult(functionFragment: "delegationRegistry", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLockTimes", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUnlockTime", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUserStakedCount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUserStakingInfo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isValidLockTime", data: BytesLike): Result; decodeFunctionResult(functionFragment: "lockInfos", data: BytesLike): Result; decodeFunctionResult(functionFragment: "nft", data: BytesLike): Result; decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeLockTime", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeMultipleLockTimes", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stakeMultiple", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unstake", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unstakeMultiple", data: BytesLike): Result; events: { "OwnershipTransferred(address,address)": EventFragment; "Stake(address,uint256,uint256)": EventFragment; "Unstake(address,uint256)": EventFragment; "UpdateLockTime(address,uint256,bool)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; getEvent(nameOrSignatureOrTopic: "Stake"): EventFragment; getEvent(nameOrSignatureOrTopic: "Unstake"): EventFragment; getEvent(nameOrSignatureOrTopic: "UpdateLockTime"): EventFragment; } export interface OwnershipTransferredEventObject { previousOwner: string; newOwner: string; } export type OwnershipTransferredEvent = TypedEvent<[ string, string ], OwnershipTransferredEventObject>; export type OwnershipTransferredEventFilter = TypedEventFilter<OwnershipTransferredEvent>; export interface StakeEventObject { staker: string; tokenId: BigNumber; unlockAt: BigNumber; } export type StakeEvent = TypedEvent<[ string, BigNumber, BigNumber ], StakeEventObject>; export type StakeEventFilter = TypedEventFilter<StakeEvent>; export interface UnstakeEventObject { staker: string; tokenId: BigNumber; } export type UnstakeEvent = TypedEvent<[string, BigNumber], UnstakeEventObject>; export type UnstakeEventFilter = TypedEventFilter<UnstakeEvent>; export interface UpdateLockTimeEventObject { owner: string; lockTime: BigNumber; isAdd: boolean; } export type UpdateLockTimeEvent = TypedEvent<[ string, BigNumber, boolean ], UpdateLockTimeEventObject>; export type UpdateLockTimeEventFilter = TypedEventFilter<UpdateLockTimeEvent>; export interface TtooStaking extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: TtooStakingInterface; queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>; listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>; listeners(eventName?: string): Array<Listener>; removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this; removeAllListeners(eventName?: string): this; off: OnEvent<this>; on: OnEvent<this>; once: OnEvent<this>; removeListener: OnEvent<this>; functions: { addLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; addMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; delegationRegistry(overrides?: CallOverrides): Promise<[string]>; getLockTimes(overrides?: CallOverrides): Promise<[BigNumber[]]>; getUnlockTime(tokenId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; getUserStakedCount(staker: string, overrides?: CallOverrides): Promise<[BigNumber]>; getUserStakingInfo(staker: string, overrides?: CallOverrides): Promise<[BigNumber[], BigNumber[]]>; isValidLockTime(time: BigNumberish, overrides?: CallOverrides): Promise<[boolean]>; lockInfos(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string, number] & { owner: string; unlockAt: number; }>; nft(overrides?: CallOverrides): Promise<[string]>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; owner(overrides?: CallOverrides): Promise<[string]>; removeLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; removeMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; stake(tokenId: BigNumberish, lockTime: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; stakeMultiple(inputs: StakeMultipleInputsStruct[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unstake(tokenId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unstakeMultiple(tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; }; addLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; addMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; delegationRegistry(overrides?: CallOverrides): Promise<string>; getLockTimes(overrides?: CallOverrides): Promise<BigNumber[]>; getUnlockTime(tokenId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; getUserStakedCount(staker: string, overrides?: CallOverrides): Promise<BigNumber>; getUserStakingInfo(staker: string, overrides?: CallOverrides): Promise<[BigNumber[], BigNumber[]]>; isValidLockTime(time: BigNumberish, overrides?: CallOverrides): Promise<boolean>; lockInfos(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string, number] & { owner: string; unlockAt: number; }>; nft(overrides?: CallOverrides): Promise<string>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; owner(overrides?: CallOverrides): Promise<string>; removeLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; removeMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; stake(tokenId: BigNumberish, lockTime: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; stakeMultiple(inputs: StakeMultipleInputsStruct[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unstake(tokenId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unstakeMultiple(tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; callStatic: { addLockTime(time: BigNumberish, overrides?: CallOverrides): Promise<void>; addMultipleLockTimes(times: BigNumberish[], overrides?: CallOverrides): Promise<void>; delegationRegistry(overrides?: CallOverrides): Promise<string>; getLockTimes(overrides?: CallOverrides): Promise<BigNumber[]>; getUnlockTime(tokenId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; getUserStakedCount(staker: string, overrides?: CallOverrides): Promise<BigNumber>; getUserStakingInfo(staker: string, overrides?: CallOverrides): Promise<[BigNumber[], BigNumber[]]>; isValidLockTime(time: BigNumberish, overrides?: CallOverrides): Promise<boolean>; lockInfos(arg0: BigNumberish, overrides?: CallOverrides): Promise<[string, number] & { owner: string; unlockAt: number; }>; nft(overrides?: CallOverrides): Promise<string>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<string>; owner(overrides?: CallOverrides): Promise<string>; removeLockTime(time: BigNumberish, overrides?: CallOverrides): Promise<void>; removeMultipleLockTimes(times: BigNumberish[], overrides?: CallOverrides): Promise<void>; renounceOwnership(overrides?: CallOverrides): Promise<void>; stake(tokenId: BigNumberish, lockTime: BigNumberish, overrides?: CallOverrides): Promise<void>; stakeMultiple(inputs: StakeMultipleInputsStruct[], overrides?: CallOverrides): Promise<void>; transferOwnership(newOwner: string, overrides?: CallOverrides): Promise<void>; unstake(tokenId: BigNumberish, overrides?: CallOverrides): Promise<void>; unstakeMultiple(tokenIds: BigNumberish[], overrides?: CallOverrides): Promise<void>; }; filters: { "OwnershipTransferred(address,address)"(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; "Stake(address,uint256,uint256)"(staker?: string | null, tokenId?: BigNumberish | null, unlockAt?: BigNumberish | null): StakeEventFilter; Stake(staker?: string | null, tokenId?: BigNumberish | null, unlockAt?: BigNumberish | null): StakeEventFilter; "Unstake(address,uint256)"(staker?: string | null, tokenId?: BigNumberish | null): UnstakeEventFilter; Unstake(staker?: string | null, tokenId?: BigNumberish | null): UnstakeEventFilter; "UpdateLockTime(address,uint256,bool)"(owner?: string | null, lockTime?: BigNumberish | null, isAdd?: boolean | null): UpdateLockTimeEventFilter; UpdateLockTime(owner?: string | null, lockTime?: BigNumberish | null, isAdd?: boolean | null): UpdateLockTimeEventFilter; }; estimateGas: { addLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; addMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; delegationRegistry(overrides?: CallOverrides): Promise<BigNumber>; getLockTimes(overrides?: CallOverrides): Promise<BigNumber>; getUnlockTime(tokenId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; getUserStakedCount(staker: string, overrides?: CallOverrides): Promise<BigNumber>; getUserStakingInfo(staker: string, overrides?: CallOverrides): Promise<BigNumber>; isValidLockTime(time: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; lockInfos(arg0: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; nft(overrides?: CallOverrides): Promise<BigNumber>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; owner(overrides?: CallOverrides): Promise<BigNumber>; removeLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; removeMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<BigNumber>; stake(tokenId: BigNumberish, lockTime: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; stakeMultiple(inputs: StakeMultipleInputsStruct[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; unstake(tokenId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; unstakeMultiple(tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; }; populateTransaction: { addLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; addMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; delegationRegistry(overrides?: CallOverrides): Promise<PopulatedTransaction>; getLockTimes(overrides?: CallOverrides): Promise<PopulatedTransaction>; getUnlockTime(tokenId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; getUserStakedCount(staker: string, overrides?: CallOverrides): Promise<PopulatedTransaction>; getUserStakingInfo(staker: string, overrides?: CallOverrides): Promise<PopulatedTransaction>; isValidLockTime(time: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; lockInfos(arg0: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; nft(overrides?: CallOverrides): Promise<PopulatedTransaction>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; owner(overrides?: CallOverrides): Promise<PopulatedTransaction>; removeLockTime(time: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; removeMultipleLockTimes(times: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; renounceOwnership(overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; stake(tokenId: BigNumberish, lockTime: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; stakeMultiple(inputs: StakeMultipleInputsStruct[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; unstake(tokenId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; unstakeMultiple(tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; }; }