UNPKG

@collabland/staking-contracts

Version:
322 lines (321 loc) 17.8 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 StakingDataStruct = { tokenId: BigNumberish; startStakingTime: BigNumberish; poolIndex: BigNumberish; }; export type StakingDataStructOutput = [BigNumber, BigNumber, number] & { tokenId: BigNumber; startStakingTime: BigNumber; poolIndex: number; }; export interface LuckynftInterface extends utils.Interface { functions: { "getRoleAdmin(bytes32)": FunctionFragment; "grantRole(bytes32,address)": FunctionFragment; "grantRoleForMany(bytes32,address[])": FunctionFragment; "hasRole(bytes32,address)": FunctionFragment; "renounceRole(bytes32,address)": FunctionFragment; "revokeRole(bytes32,address)": FunctionFragment; "setLuckyNFT(address)": FunctionFragment; "pause()": FunctionFragment; "unpause()": FunctionFragment; "getStakingData(address)": FunctionFragment; "onERC721Received(address,address,uint256,bytes)": FunctionFragment; "stake(uint256[])": FunctionFragment; "unstake(uint256[])": FunctionFragment; "getNFTsOfOwner(address,address,uint256)": FunctionFragment; "multiCall(bytes[])": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "getRoleAdmin" | "grantRole" | "grantRoleForMany" | "hasRole" | "renounceRole" | "revokeRole" | "setLuckyNFT" | "pause" | "unpause" | "getStakingData" | "onERC721Received" | "stake" | "unstake" | "getNFTsOfOwner" | "multiCall"): FunctionFragment; encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, string]): string; encodeFunctionData(functionFragment: "grantRoleForMany", values: [BytesLike, string[]]): string; encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, string]): string; encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, string]): string; encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, string]): string; encodeFunctionData(functionFragment: "setLuckyNFT", values: [string]): string; encodeFunctionData(functionFragment: "pause", values?: undefined): string; encodeFunctionData(functionFragment: "unpause", values?: undefined): string; encodeFunctionData(functionFragment: "getStakingData", values: [string]): string; encodeFunctionData(functionFragment: "onERC721Received", values: [string, string, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "stake", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "unstake", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "getNFTsOfOwner", values: [string, string, BigNumberish]): string; encodeFunctionData(functionFragment: "multiCall", values: [BytesLike[]]): string; decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "grantRoleForMany", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setLuckyNFT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getStakingData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unstake", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getNFTsOfOwner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "multiCall", data: BytesLike): Result; events: { "RoleAdminChanged(bytes32,bytes32,bytes32)": EventFragment; "RoleGranted(bytes32,address,address)": EventFragment; "RoleRevoked(bytes32,address,address)": EventFragment; "Staked(address,uint256[],uint256)": EventFragment; "Unstaked(address,uint256[],uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "RoleAdminChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "RoleGranted"): EventFragment; getEvent(nameOrSignatureOrTopic: "RoleRevoked"): EventFragment; getEvent(nameOrSignatureOrTopic: "Staked"): EventFragment; getEvent(nameOrSignatureOrTopic: "Unstaked"): EventFragment; } export interface RoleAdminChangedEventObject { role: string; previousAdminRole: string; newAdminRole: string; } export type RoleAdminChangedEvent = TypedEvent<[ string, string, string ], RoleAdminChangedEventObject>; export type RoleAdminChangedEventFilter = TypedEventFilter<RoleAdminChangedEvent>; export interface RoleGrantedEventObject { role: string; account: string; sender: string; } export type RoleGrantedEvent = TypedEvent<[ string, string, string ], RoleGrantedEventObject>; export type RoleGrantedEventFilter = TypedEventFilter<RoleGrantedEvent>; export interface RoleRevokedEventObject { role: string; account: string; sender: string; } export type RoleRevokedEvent = TypedEvent<[ string, string, string ], RoleRevokedEventObject>; export type RoleRevokedEventFilter = TypedEventFilter<RoleRevokedEvent>; export interface StakedEventObject { owner: string; tokenIds: BigNumber[]; timestamp: BigNumber; } export type StakedEvent = TypedEvent<[ string, BigNumber[], BigNumber ], StakedEventObject>; export type StakedEventFilter = TypedEventFilter<StakedEvent>; export interface UnstakedEventObject { owner: string; tokenIds: BigNumber[]; timestamp: BigNumber; } export type UnstakedEvent = TypedEvent<[ string, BigNumber[], BigNumber ], UnstakedEventObject>; export type UnstakedEventFilter = TypedEventFilter<UnstakedEvent>; export interface Luckynft extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: LuckynftInterface; 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: { getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<[string]>; grantRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; grantRoleForMany(role: BytesLike, accounts: string[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<[boolean]>; renounceRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; revokeRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setLuckyNFT(_luckyNFT: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; pause(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unpause(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; getStakingData(user: string, overrides?: CallOverrides): Promise<[StakingDataStructOutput[]]>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<[string]>; stake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unstake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; getNFTsOfOwner(_contractAddr: string, _owner: string, _collectionSize: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber[]]>; multiCall(data: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; }; getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>; grantRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; grantRoleForMany(role: BytesLike, accounts: string[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<boolean>; renounceRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; revokeRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; setLuckyNFT(_luckyNFT: string, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; pause(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unpause(overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; getStakingData(user: string, overrides?: CallOverrides): Promise<StakingDataStructOutput[]>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<string>; stake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; unstake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; getNFTsOfOwner(_contractAddr: string, _owner: string, _collectionSize: BigNumberish, overrides?: CallOverrides): Promise<BigNumber[]>; multiCall(data: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; callStatic: { getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>; grantRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>; grantRoleForMany(role: BytesLike, accounts: string[], overrides?: CallOverrides): Promise<void>; hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<boolean>; renounceRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>; revokeRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>; setLuckyNFT(_luckyNFT: string, overrides?: CallOverrides): Promise<void>; pause(overrides?: CallOverrides): Promise<void>; unpause(overrides?: CallOverrides): Promise<void>; getStakingData(user: string, overrides?: CallOverrides): Promise<StakingDataStructOutput[]>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<string>; stake(_tokenIds: BigNumberish[], overrides?: CallOverrides): Promise<void>; unstake(_tokenIds: BigNumberish[], overrides?: CallOverrides): Promise<void>; getNFTsOfOwner(_contractAddr: string, _owner: string, _collectionSize: BigNumberish, overrides?: CallOverrides): Promise<BigNumber[]>; multiCall(data: BytesLike[], overrides?: CallOverrides): Promise<string[]>; }; filters: { "RoleAdminChanged(bytes32,bytes32,bytes32)"(role?: BytesLike | null, previousAdminRole?: BytesLike | null, newAdminRole?: BytesLike | null): RoleAdminChangedEventFilter; RoleAdminChanged(role?: BytesLike | null, previousAdminRole?: BytesLike | null, newAdminRole?: BytesLike | null): RoleAdminChangedEventFilter; "RoleGranted(bytes32,address,address)"(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleGrantedEventFilter; RoleGranted(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleGrantedEventFilter; "RoleRevoked(bytes32,address,address)"(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleRevokedEventFilter; RoleRevoked(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleRevokedEventFilter; "Staked(address,uint256[],uint256)"(owner?: string | null, tokenIds?: null, timestamp?: null): StakedEventFilter; Staked(owner?: string | null, tokenIds?: null, timestamp?: null): StakedEventFilter; "Unstaked(address,uint256[],uint256)"(owner?: string | null, tokenIds?: null, timestamp?: null): UnstakedEventFilter; Unstaked(owner?: string | null, tokenIds?: null, timestamp?: null): UnstakedEventFilter; }; estimateGas: { getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>; grantRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; grantRoleForMany(role: BytesLike, accounts: string[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<BigNumber>; renounceRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; revokeRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; setLuckyNFT(_luckyNFT: string, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; pause(overrides?: Overrides & { from?: string; }): Promise<BigNumber>; unpause(overrides?: Overrides & { from?: string; }): Promise<BigNumber>; getStakingData(user: string, overrides?: CallOverrides): Promise<BigNumber>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<BigNumber>; stake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; unstake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; getNFTsOfOwner(_contractAddr: string, _owner: string, _collectionSize: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; multiCall(data: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; }; populateTransaction: { getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>; grantRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; grantRoleForMany(role: BytesLike, accounts: string[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<PopulatedTransaction>; renounceRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; revokeRole(role: BytesLike, account: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; setLuckyNFT(_luckyNFT: string, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; pause(overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; unpause(overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; getStakingData(user: string, overrides?: CallOverrides): Promise<PopulatedTransaction>; onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>; stake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; unstake(_tokenIds: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; getNFTsOfOwner(_contractAddr: string, _owner: string, _collectionSize: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; multiCall(data: BytesLike[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; }; }