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 declare namespace ISuperVerseStaker {
    type InputItemStruct = {
        itemId: BigNumberish;
        origin: BigNumberish;
    };
    type InputItemStructOutput = [BigNumber, number] & {
        itemId: BigNumber;
        origin: number;
    };
}
export declare namespace EscapeHatch {
    type AssetStruct = {
        assetType: BigNumberish;
        asset: string;
        id: BigNumberish;
        amount: BigNumberish;
        to: string;
    };
    type AssetStructOutput = [
        number,
        string,
        BigNumber,
        BigNumber,
        string
    ] & {
        assetType: number;
        asset: string;
        id: BigNumber;
        amount: BigNumber;
        to: string;
    };
}
export interface SuperverseStakingInterface extends utils.Interface {
    functions: {
        "ET_COLLECTION()": FunctionFragment;
        "REWARD_PERIOD()": FunctionFragment;
        "SF_COLLECTION()": FunctionFragment;
        "TOKEN()": FunctionFragment;
        "allProduced()": FunctionFragment;
        "availableReward(address)": FunctionFragment;
        "claim()": FunctionFragment;
        "configureItemValues(uint8,uint256[],uint128[])": FunctionFragment;
        "hasRightUntil(address,bytes32,bytes32)": FunctionFragment;
        "itemValues(uint8,uint256)": FunctionFragment;
        "nextRebaseTimestamp()": FunctionFragment;
        "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)": FunctionFragment;
        "onERC1155Received(address,address,uint256,uint256,bytes)": FunctionFragment;
        "onERC721Received(address,address,uint256,bytes)": FunctionFragment;
        "owner()": FunctionFragment;
        "pause()": FunctionFragment;
        "producedReward()": FunctionFragment;
        "producedTimestamp()": FunctionFragment;
        "rebase()": FunctionFragment;
        "rebaseCooldown()": FunctionFragment;
        "renounceOwnership()": FunctionFragment;
        "rescueAssets((uint8,address,uint256,uint256,address)[])": FunctionFragment;
        "reward()": FunctionFragment;
        "rpp()": FunctionFragment;
        "setManagerRight(bytes32,bytes32)": FunctionFragment;
        "setPermit(address,bytes32,bytes32,uint256)": FunctionFragment;
        "setRebaseCooldown(uint256)": FunctionFragment;
        "stake(uint256,address,(uint256,uint8)[])": FunctionFragment;
        "stakeTimestamps(address)": FunctionFragment;
        "stakerInfo(address)": FunctionFragment;
        "totalPower()": FunctionFragment;
        "transferOwnership(address)": FunctionFragment;
        "unpause()": FunctionFragment;
        "withdraw(uint256,(uint256,uint8)[])": FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: "ET_COLLECTION" | "REWARD_PERIOD" | "SF_COLLECTION" | "TOKEN" | "allProduced" | "availableReward" | "claim" | "configureItemValues" | "hasRightUntil" | "itemValues" | "nextRebaseTimestamp" | "onERC1155BatchReceived" | "onERC1155Received" | "onERC721Received" | "owner" | "pause" | "producedReward" | "producedTimestamp" | "rebase" | "rebaseCooldown" | "renounceOwnership" | "rescueAssets" | "reward" | "rpp" | "setManagerRight" | "setPermit" | "setRebaseCooldown" | "stake" | "stakeTimestamps" | "stakerInfo" | "totalPower" | "transferOwnership" | "unpause" | "withdraw"): FunctionFragment;
    encodeFunctionData(functionFragment: "ET_COLLECTION", values?: undefined): string;
    encodeFunctionData(functionFragment: "REWARD_PERIOD", values?: undefined): string;
    encodeFunctionData(functionFragment: "SF_COLLECTION", values?: undefined): string;
    encodeFunctionData(functionFragment: "TOKEN", values?: undefined): string;
    encodeFunctionData(functionFragment: "allProduced", values?: undefined): string;
    encodeFunctionData(functionFragment: "availableReward", values: [string]): string;
    encodeFunctionData(functionFragment: "claim", values?: undefined): string;
    encodeFunctionData(functionFragment: "configureItemValues", values: [BigNumberish, BigNumberish[], BigNumberish[]]): string;
    encodeFunctionData(functionFragment: "hasRightUntil", values: [string, BytesLike, BytesLike]): string;
    encodeFunctionData(functionFragment: "itemValues", values: [BigNumberish, BigNumberish]): string;
    encodeFunctionData(functionFragment: "nextRebaseTimestamp", values?: undefined): string;
    encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [string, string, BigNumberish[], BigNumberish[], BytesLike]): string;
    encodeFunctionData(functionFragment: "onERC1155Received", values: [string, string, BigNumberish, BigNumberish, BytesLike]): string;
    encodeFunctionData(functionFragment: "onERC721Received", values: [string, string, BigNumberish, BytesLike]): string;
    encodeFunctionData(functionFragment: "owner", values?: undefined): string;
    encodeFunctionData(functionFragment: "pause", values?: undefined): string;
    encodeFunctionData(functionFragment: "producedReward", values?: undefined): string;
    encodeFunctionData(functionFragment: "producedTimestamp", values?: undefined): string;
    encodeFunctionData(functionFragment: "rebase", values?: undefined): string;
    encodeFunctionData(functionFragment: "rebaseCooldown", values?: undefined): string;
    encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string;
    encodeFunctionData(functionFragment: "rescueAssets", values: [EscapeHatch.AssetStruct[]]): string;
    encodeFunctionData(functionFragment: "reward", values?: undefined): string;
    encodeFunctionData(functionFragment: "rpp", values?: undefined): string;
    encodeFunctionData(functionFragment: "setManagerRight", values: [BytesLike, BytesLike]): string;
    encodeFunctionData(functionFragment: "setPermit", values: [string, BytesLike, BytesLike, BigNumberish]): string;
    encodeFunctionData(functionFragment: "setRebaseCooldown", values: [BigNumberish]): string;
    encodeFunctionData(functionFragment: "stake", values: [BigNumberish, string, ISuperVerseStaker.InputItemStruct[]]): string;
    encodeFunctionData(functionFragment: "stakeTimestamps", values: [string]): string;
    encodeFunctionData(functionFragment: "stakerInfo", values: [string]): string;
    encodeFunctionData(functionFragment: "totalPower", values?: undefined): string;
    encodeFunctionData(functionFragment: "transferOwnership", values: [string]): string;
    encodeFunctionData(functionFragment: "unpause", values?: undefined): string;
    encodeFunctionData(functionFragment: "withdraw", values: [BigNumberish, ISuperVerseStaker.InputItemStruct[]]): string;
    decodeFunctionResult(functionFragment: "ET_COLLECTION", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "REWARD_PERIOD", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "SF_COLLECTION", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "TOKEN", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "allProduced", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "availableReward", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "configureItemValues", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "hasRightUntil", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "itemValues", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "nextRebaseTimestamp", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "pause", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "producedReward", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "producedTimestamp", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "rebase", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "rebaseCooldown", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "rescueAssets", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "reward", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "rpp", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setManagerRight", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setPermit", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setRebaseCooldown", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "stakeTimestamps", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "stakerInfo", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "totalPower", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "unpause", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
    events: {
        "Claim(address,uint256)": EventFragment;
        "Fund(address,uint256)": EventFragment;
        "ManagementUpdated(address,bytes32,bytes32)": EventFragment;
        "OwnershipTransferred(address,address)": EventFragment;
        "PermitUpdated(address,address,bytes32,bytes32,uint256)": EventFragment;
        "Stake(address,uint256,uint256,(uint256,uint8)[])": EventFragment;
        "Withdraw(address,uint256,uint256,(uint256,uint8)[])": EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: "Claim"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Fund"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "ManagementUpdated"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "PermitUpdated"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Stake"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Withdraw"): EventFragment;
}
export interface ClaimEventObject {
    user: string;
    amount: BigNumber;
}
export type ClaimEvent = TypedEvent<[string, BigNumber], ClaimEventObject>;
export type ClaimEventFilter = TypedEventFilter<ClaimEvent>;
export interface FundEventObject {
    user: string;
    amount: BigNumber;
}
export type FundEvent = TypedEvent<[string, BigNumber], FundEventObject>;
export type FundEventFilter = TypedEventFilter<FundEvent>;
export interface ManagementUpdatedEventObject {
    manager: string;
    managedRight: string;
    managerRight: string;
}
export type ManagementUpdatedEvent = TypedEvent<[
    string,
    string,
    string
], ManagementUpdatedEventObject>;
export type ManagementUpdatedEventFilter = TypedEventFilter<ManagementUpdatedEvent>;
export interface OwnershipTransferredEventObject {
    previousOwner: string;
    newOwner: string;
}
export type OwnershipTransferredEvent = TypedEvent<[
    string,
    string
], OwnershipTransferredEventObject>;
export type OwnershipTransferredEventFilter = TypedEventFilter<OwnershipTransferredEvent>;
export interface PermitUpdatedEventObject {
    updater: string;
    updatee: string;
    circumstance: string;
    role: string;
    expirationTime: BigNumber;
}
export type PermitUpdatedEvent = TypedEvent<[
    string,
    string,
    string,
    string,
    BigNumber
], PermitUpdatedEventObject>;
export type PermitUpdatedEventFilter = TypedEventFilter<PermitUpdatedEvent>;
export interface StakeEventObject {
    user: string;
    amount: BigNumber;
    power: BigNumber;
    items: ISuperVerseStaker.InputItemStructOutput[];
}
export type StakeEvent = TypedEvent<[
    string,
    BigNumber,
    BigNumber,
    ISuperVerseStaker.InputItemStructOutput[]
], StakeEventObject>;
export type StakeEventFilter = TypedEventFilter<StakeEvent>;
export interface WithdrawEventObject {
    user: string;
    amount: BigNumber;
    power: BigNumber;
    items: ISuperVerseStaker.InputItemStructOutput[];
}
export type WithdrawEvent = TypedEvent<[
    string,
    BigNumber,
    BigNumber,
    ISuperVerseStaker.InputItemStructOutput[]
], WithdrawEventObject>;
export type WithdrawEventFilter = TypedEventFilter<WithdrawEvent>;
export interface SuperverseStaking extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: SuperverseStakingInterface;
    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: {
        ET_COLLECTION(overrides?: CallOverrides): Promise<[string]>;
        REWARD_PERIOD(overrides?: CallOverrides): Promise<[BigNumber]>;
        SF_COLLECTION(overrides?: CallOverrides): Promise<[string]>;
        TOKEN(overrides?: CallOverrides): Promise<[string]>;
        allProduced(overrides?: CallOverrides): Promise<[BigNumber]>;
        availableReward(_staker: string, overrides?: CallOverrides): Promise<[BigNumber]>;
        claim(overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        configureItemValues(_assetType: BigNumberish, _groupIds: BigNumberish[], _values: BigNumberish[], overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        hasRightUntil(_address: string, _circumstance: BytesLike, _right: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]>;
        itemValues(arg0: BigNumberish, arg1: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>;
        nextRebaseTimestamp(overrides?: CallOverrides): Promise<[BigNumber]>;
        onERC1155BatchReceived(arg0: string, arg1: string, arg2: BigNumberish[], arg3: BigNumberish[], arg4: BytesLike, overrides?: CallOverrides): Promise<[string]>;
        onERC1155Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BigNumberish, arg4: BytesLike, overrides?: CallOverrides): Promise<[string]>;
        onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<[string]>;
        owner(overrides?: CallOverrides): Promise<[string]>;
        pause(overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        producedReward(overrides?: CallOverrides): Promise<[BigNumber]>;
        producedTimestamp(overrides?: CallOverrides): Promise<[BigNumber]>;
        rebase(overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        rebaseCooldown(overrides?: CallOverrides): Promise<[BigNumber]>;
        renounceOwnership(overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        rescueAssets(_assets: EscapeHatch.AssetStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        reward(overrides?: CallOverrides): Promise<[BigNumber]>;
        rpp(overrides?: CallOverrides): Promise<[BigNumber]>;
        setManagerRight(_managedRight: BytesLike, _managerRight: BytesLike, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setPermit(_address: string, _circumstance: BytesLike, _right: BytesLike, _expirationTime: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setRebaseCooldown(_rebaseCooldown: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        stake(_amount: BigNumberish, _user: string, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        stakeTimestamps(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>;
        stakerInfo(_staker: string, overrides?: CallOverrides): Promise<[
            BigNumber,
            BigNumber,
            BigNumber,
            BigNumber,
            BigNumber,
            BigNumber[],
            BigNumber[]
        ] & {
            stakerPower: BigNumber;
            stakedTokens: BigNumber;
            claimedReward: BigNumber;
            missedReward: BigNumber;
            availableToClaim: BigNumber;
            idsET: BigNumber[];
            idsSFs: BigNumber[];
        }>;
        totalPower(overrides?: CallOverrides): Promise<[BigNumber]>;
        transferOwnership(newOwner: string, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        unpause(overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        withdraw(_amount: BigNumberish, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
    };
    ET_COLLECTION(overrides?: CallOverrides): Promise<string>;
    REWARD_PERIOD(overrides?: CallOverrides): Promise<BigNumber>;
    SF_COLLECTION(overrides?: CallOverrides): Promise<string>;
    TOKEN(overrides?: CallOverrides): Promise<string>;
    allProduced(overrides?: CallOverrides): Promise<BigNumber>;
    availableReward(_staker: string, overrides?: CallOverrides): Promise<BigNumber>;
    claim(overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    configureItemValues(_assetType: BigNumberish, _groupIds: BigNumberish[], _values: BigNumberish[], overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    hasRightUntil(_address: string, _circumstance: BytesLike, _right: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
    itemValues(arg0: BigNumberish, arg1: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
    nextRebaseTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
    onERC1155BatchReceived(arg0: string, arg1: string, arg2: BigNumberish[], arg3: BigNumberish[], arg4: BytesLike, overrides?: CallOverrides): Promise<string>;
    onERC1155Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BigNumberish, arg4: BytesLike, overrides?: CallOverrides): Promise<string>;
    onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<string>;
    owner(overrides?: CallOverrides): Promise<string>;
    pause(overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    producedReward(overrides?: CallOverrides): Promise<BigNumber>;
    producedTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
    rebase(overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    rebaseCooldown(overrides?: CallOverrides): Promise<BigNumber>;
    renounceOwnership(overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    rescueAssets(_assets: EscapeHatch.AssetStruct[], overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    reward(overrides?: CallOverrides): Promise<BigNumber>;
    rpp(overrides?: CallOverrides): Promise<BigNumber>;
    setManagerRight(_managedRight: BytesLike, _managerRight: BytesLike, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setPermit(_address: string, _circumstance: BytesLike, _right: BytesLike, _expirationTime: BigNumberish, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setRebaseCooldown(_rebaseCooldown: BigNumberish, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    stake(_amount: BigNumberish, _user: string, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    stakeTimestamps(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
    stakerInfo(_staker: string, overrides?: CallOverrides): Promise<[
        BigNumber,
        BigNumber,
        BigNumber,
        BigNumber,
        BigNumber,
        BigNumber[],
        BigNumber[]
    ] & {
        stakerPower: BigNumber;
        stakedTokens: BigNumber;
        claimedReward: BigNumber;
        missedReward: BigNumber;
        availableToClaim: BigNumber;
        idsET: BigNumber[];
        idsSFs: BigNumber[];
    }>;
    totalPower(overrides?: CallOverrides): Promise<BigNumber>;
    transferOwnership(newOwner: string, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    unpause(overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    withdraw(_amount: BigNumberish, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    callStatic: {
        ET_COLLECTION(overrides?: CallOverrides): Promise<string>;
        REWARD_PERIOD(overrides?: CallOverrides): Promise<BigNumber>;
        SF_COLLECTION(overrides?: CallOverrides): Promise<string>;
        TOKEN(overrides?: CallOverrides): Promise<string>;
        allProduced(overrides?: CallOverrides): Promise<BigNumber>;
        availableReward(_staker: string, overrides?: CallOverrides): Promise<BigNumber>;
        claim(overrides?: CallOverrides): Promise<void>;
        configureItemValues(_assetType: BigNumberish, _groupIds: BigNumberish[], _values: BigNumberish[], overrides?: CallOverrides): Promise<void>;
        hasRightUntil(_address: string, _circumstance: BytesLike, _right: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
        itemValues(arg0: BigNumberish, arg1: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        nextRebaseTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
        onERC1155BatchReceived(arg0: string, arg1: string, arg2: BigNumberish[], arg3: BigNumberish[], arg4: BytesLike, overrides?: CallOverrides): Promise<string>;
        onERC1155Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BigNumberish, arg4: BytesLike, overrides?: CallOverrides): Promise<string>;
        onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<string>;
        owner(overrides?: CallOverrides): Promise<string>;
        pause(overrides?: CallOverrides): Promise<void>;
        producedReward(overrides?: CallOverrides): Promise<BigNumber>;
        producedTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
        rebase(overrides?: CallOverrides): Promise<void>;
        rebaseCooldown(overrides?: CallOverrides): Promise<BigNumber>;
        renounceOwnership(overrides?: CallOverrides): Promise<void>;
        rescueAssets(_assets: EscapeHatch.AssetStruct[], overrides?: CallOverrides): Promise<void>;
        reward(overrides?: CallOverrides): Promise<BigNumber>;
        rpp(overrides?: CallOverrides): Promise<BigNumber>;
        setManagerRight(_managedRight: BytesLike, _managerRight: BytesLike, overrides?: CallOverrides): Promise<void>;
        setPermit(_address: string, _circumstance: BytesLike, _right: BytesLike, _expirationTime: BigNumberish, overrides?: CallOverrides): Promise<void>;
        setRebaseCooldown(_rebaseCooldown: BigNumberish, overrides?: CallOverrides): Promise<void>;
        stake(_amount: BigNumberish, _user: string, _items: ISuperVerseStaker.InputItemStruct[], overrides?: CallOverrides): Promise<void>;
        stakeTimestamps(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
        stakerInfo(_staker: string, overrides?: CallOverrides): Promise<[
            BigNumber,
            BigNumber,
            BigNumber,
            BigNumber,
            BigNumber,
            BigNumber[],
            BigNumber[]
        ] & {
            stakerPower: BigNumber;
            stakedTokens: BigNumber;
            claimedReward: BigNumber;
            missedReward: BigNumber;
            availableToClaim: BigNumber;
            idsET: BigNumber[];
            idsSFs: BigNumber[];
        }>;
        totalPower(overrides?: CallOverrides): Promise<BigNumber>;
        transferOwnership(newOwner: string, overrides?: CallOverrides): Promise<void>;
        unpause(overrides?: CallOverrides): Promise<void>;
        withdraw(_amount: BigNumberish, _items: ISuperVerseStaker.InputItemStruct[], overrides?: CallOverrides): Promise<void>;
    };
    filters: {
        "Claim(address,uint256)"(user?: string | null, amount?: null): ClaimEventFilter;
        Claim(user?: string | null, amount?: null): ClaimEventFilter;
        "Fund(address,uint256)"(user?: string | null, amount?: null): FundEventFilter;
        Fund(user?: string | null, amount?: null): FundEventFilter;
        "ManagementUpdated(address,bytes32,bytes32)"(manager?: string | null, managedRight?: BytesLike | null, managerRight?: BytesLike | null): ManagementUpdatedEventFilter;
        ManagementUpdated(manager?: string | null, managedRight?: BytesLike | null, managerRight?: BytesLike | null): ManagementUpdatedEventFilter;
        "OwnershipTransferred(address,address)"(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter;
        OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter;
        "PermitUpdated(address,address,bytes32,bytes32,uint256)"(updater?: string | null, updatee?: string | null, circumstance?: null, role?: BytesLike | null, expirationTime?: null): PermitUpdatedEventFilter;
        PermitUpdated(updater?: string | null, updatee?: string | null, circumstance?: null, role?: BytesLike | null, expirationTime?: null): PermitUpdatedEventFilter;
        "Stake(address,uint256,uint256,(uint256,uint8)[])"(user?: string | null, amount?: null, power?: null, items?: null): StakeEventFilter;
        Stake(user?: string | null, amount?: null, power?: null, items?: null): StakeEventFilter;
        "Withdraw(address,uint256,uint256,(uint256,uint8)[])"(user?: string | null, amount?: null, power?: null, items?: null): WithdrawEventFilter;
        Withdraw(user?: string | null, amount?: null, power?: null, items?: null): WithdrawEventFilter;
    };
    estimateGas: {
        ET_COLLECTION(overrides?: CallOverrides): Promise<BigNumber>;
        REWARD_PERIOD(overrides?: CallOverrides): Promise<BigNumber>;
        SF_COLLECTION(overrides?: CallOverrides): Promise<BigNumber>;
        TOKEN(overrides?: CallOverrides): Promise<BigNumber>;
        allProduced(overrides?: CallOverrides): Promise<BigNumber>;
        availableReward(_staker: string, overrides?: CallOverrides): Promise<BigNumber>;
        claim(overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        configureItemValues(_assetType: BigNumberish, _groupIds: BigNumberish[], _values: BigNumberish[], overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        hasRightUntil(_address: string, _circumstance: BytesLike, _right: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
        itemValues(arg0: BigNumberish, arg1: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        nextRebaseTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
        onERC1155BatchReceived(arg0: string, arg1: string, arg2: BigNumberish[], arg3: BigNumberish[], arg4: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
        onERC1155Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BigNumberish, arg4: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
        onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
        owner(overrides?: CallOverrides): Promise<BigNumber>;
        pause(overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        producedReward(overrides?: CallOverrides): Promise<BigNumber>;
        producedTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
        rebase(overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        rebaseCooldown(overrides?: CallOverrides): Promise<BigNumber>;
        renounceOwnership(overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        rescueAssets(_assets: EscapeHatch.AssetStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        reward(overrides?: CallOverrides): Promise<BigNumber>;
        rpp(overrides?: CallOverrides): Promise<BigNumber>;
        setManagerRight(_managedRight: BytesLike, _managerRight: BytesLike, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setPermit(_address: string, _circumstance: BytesLike, _right: BytesLike, _expirationTime: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setRebaseCooldown(_rebaseCooldown: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        stake(_amount: BigNumberish, _user: string, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        stakeTimestamps(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
        stakerInfo(_staker: string, overrides?: CallOverrides): Promise<BigNumber>;
        totalPower(overrides?: CallOverrides): Promise<BigNumber>;
        transferOwnership(newOwner: string, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        unpause(overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        withdraw(_amount: BigNumberish, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
    };
    populateTransaction: {
        ET_COLLECTION(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        REWARD_PERIOD(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        SF_COLLECTION(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        TOKEN(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        allProduced(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        availableReward(_staker: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        claim(overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        configureItemValues(_assetType: BigNumberish, _groupIds: BigNumberish[], _values: BigNumberish[], overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        hasRightUntil(_address: string, _circumstance: BytesLike, _right: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        itemValues(arg0: BigNumberish, arg1: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        nextRebaseTimestamp(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        onERC1155BatchReceived(arg0: string, arg1: string, arg2: BigNumberish[], arg3: BigNumberish[], arg4: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        onERC1155Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BigNumberish, arg4: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        onERC721Received(arg0: string, arg1: string, arg2: BigNumberish, arg3: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        pause(overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        producedReward(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        producedTimestamp(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        rebase(overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        rebaseCooldown(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        renounceOwnership(overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        rescueAssets(_assets: EscapeHatch.AssetStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        reward(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        rpp(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        setManagerRight(_managedRight: BytesLike, _managerRight: BytesLike, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setPermit(_address: string, _circumstance: BytesLike, _right: BytesLike, _expirationTime: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setRebaseCooldown(_rebaseCooldown: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        stake(_amount: BigNumberish, _user: string, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        stakeTimestamps(arg0: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        stakerInfo(_staker: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        totalPower(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        transferOwnership(newOwner: string, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        unpause(overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        withdraw(_amount: BigNumberish, _items: ISuperVerseStaker.InputItemStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
    };
}
