UNPKG

@unirep/contracts

Version:

Client library for contracts related functions which are used in UniRep protocol.

645 lines (644 loc) 41.4 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"; export declare namespace IUnirep { type ConfigStruct = { stateTreeDepth: BigNumberish; epochTreeDepth: BigNumberish; historyTreeDepth: BigNumberish; fieldCount: BigNumberish; sumFieldCount: BigNumberish; numEpochKeyNoncePerEpoch: BigNumberish; replNonceBits: BigNumberish; replFieldBits: BigNumberish; }; type ConfigStructOutput = [ number, number, number, number, number, number, number, number ] & { stateTreeDepth: number; epochTreeDepth: number; historyTreeDepth: number; fieldCount: number; sumFieldCount: number; numEpochKeyNoncePerEpoch: number; replNonceBits: number; replFieldBits: number; }; type SignupSignalsStruct = { epoch: BigNumberish; chainId: BigNumberish; attesterId: BigNumberish; stateTreeLeaf: BigNumberish; identityCommitment: BigNumberish; }; type SignupSignalsStructOutput = [ number, number, BigNumber, BigNumber, BigNumber ] & { epoch: number; chainId: number; attesterId: BigNumber; stateTreeLeaf: BigNumber; identityCommitment: BigNumber; }; type UserStateTransitionSignalsStruct = { historyTreeRoot: BigNumberish; stateTreeLeaf: BigNumberish; toEpoch: BigNumberish; attesterId: BigNumberish; epochKeys: BigNumberish[]; }; type UserStateTransitionSignalsStructOutput = [ BigNumber, BigNumber, number, BigNumber, BigNumber[] ] & { historyTreeRoot: BigNumber; stateTreeLeaf: BigNumber; toEpoch: number; attesterId: BigNumber; epochKeys: BigNumber[]; }; } export interface UnirepInterface extends utils.Interface { functions: { "SNARK_SCALAR_FIELD()": FunctionFragment; "_updateEpochIfNeeded(uint256)": FunctionFragment; "attest(uint256,uint48,uint256,uint256)": FunctionFragment; "attestationCount()": FunctionFragment; "attesterCurrentEpoch(uint160)": FunctionFragment; "attesterEpochLength(uint160)": FunctionFragment; "attesterEpochRemainingTime(uint160)": FunctionFragment; "attesterEpochRoot(uint160,uint48)": FunctionFragment; "attesterMemberCount(uint160)": FunctionFragment; "attesterSemaphoreGroupRoot(uint160)": FunctionFragment; "attesterSignUp(uint48)": FunctionFragment; "attesterSignUpViaRelayer(address,uint48,bytes)": FunctionFragment; "attesterStartTimestamp(uint160)": FunctionFragment; "attesterStateTreeLeafCount(uint160)": FunctionFragment; "attesterStateTreeRoot(uint160)": FunctionFragment; "attesterStateTreeRootExists(uint160,uint48,uint256)": FunctionFragment; "chainid()": FunctionFragment; "config()": FunctionFragment; "decodeSignupControl(uint256)": FunctionFragment; "decodeSignupSignals(uint256[])": FunctionFragment; "decodeUserStateTransitionControl(uint256)": FunctionFragment; "decodeUserStateTransitionSignals(uint256[])": FunctionFragment; "defaultDataHash()": FunctionFragment; "epochTreeDepth()": FunctionFragment; "fieldCount()": FunctionFragment; "historyTreeDepth()": FunctionFragment; "manualUserSignUp(uint48,uint256,uint256,uint256[])": FunctionFragment; "numEpochKeyNoncePerEpoch()": FunctionFragment; "replFieldBits()": FunctionFragment; "replNonceBits()": FunctionFragment; "signupVerifier()": FunctionFragment; "stateTreeDepth()": FunctionFragment; "sumFieldCount()": FunctionFragment; "updateEpochIfNeeded(uint160)": FunctionFragment; "usedNullifiers(uint256)": FunctionFragment; "userSignUp(uint256[],uint256[8])": FunctionFragment; "userStateTransition(uint256[],uint256[8])": FunctionFragment; "userStateTransitionVerifier()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "SNARK_SCALAR_FIELD" | "_updateEpochIfNeeded" | "attest" | "attestationCount" | "attesterCurrentEpoch" | "attesterEpochLength" | "attesterEpochRemainingTime" | "attesterEpochRoot" | "attesterMemberCount" | "attesterSemaphoreGroupRoot" | "attesterSignUp" | "attesterSignUpViaRelayer" | "attesterStartTimestamp" | "attesterStateTreeLeafCount" | "attesterStateTreeRoot" | "attesterStateTreeRootExists" | "chainid" | "config" | "decodeSignupControl" | "decodeSignupSignals" | "decodeUserStateTransitionControl" | "decodeUserStateTransitionSignals" | "defaultDataHash" | "epochTreeDepth" | "fieldCount" | "historyTreeDepth" | "manualUserSignUp" | "numEpochKeyNoncePerEpoch" | "replFieldBits" | "replNonceBits" | "signupVerifier" | "stateTreeDepth" | "sumFieldCount" | "updateEpochIfNeeded" | "usedNullifiers" | "userSignUp" | "userStateTransition" | "userStateTransitionVerifier"): FunctionFragment; encodeFunctionData(functionFragment: "SNARK_SCALAR_FIELD", values?: undefined): string; encodeFunctionData(functionFragment: "_updateEpochIfNeeded", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attest", values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "attestationCount", values?: undefined): string; encodeFunctionData(functionFragment: "attesterCurrentEpoch", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterEpochLength", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterEpochRemainingTime", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterEpochRoot", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "attesterMemberCount", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterSemaphoreGroupRoot", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterSignUp", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterSignUpViaRelayer", values: [string, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "attesterStartTimestamp", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterStateTreeLeafCount", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterStateTreeRoot", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "attesterStateTreeRootExists", values: [BigNumberish, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "chainid", values?: undefined): string; encodeFunctionData(functionFragment: "config", values?: undefined): string; encodeFunctionData(functionFragment: "decodeSignupControl", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "decodeSignupSignals", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "decodeUserStateTransitionControl", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "decodeUserStateTransitionSignals", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "defaultDataHash", values?: undefined): string; encodeFunctionData(functionFragment: "epochTreeDepth", values?: undefined): string; encodeFunctionData(functionFragment: "fieldCount", values?: undefined): string; encodeFunctionData(functionFragment: "historyTreeDepth", values?: undefined): string; encodeFunctionData(functionFragment: "manualUserSignUp", values: [BigNumberish, BigNumberish, BigNumberish, BigNumberish[]]): string; encodeFunctionData(functionFragment: "numEpochKeyNoncePerEpoch", values?: undefined): string; encodeFunctionData(functionFragment: "replFieldBits", values?: undefined): string; encodeFunctionData(functionFragment: "replNonceBits", values?: undefined): string; encodeFunctionData(functionFragment: "signupVerifier", values?: undefined): string; encodeFunctionData(functionFragment: "stateTreeDepth", values?: undefined): string; encodeFunctionData(functionFragment: "sumFieldCount", values?: undefined): string; encodeFunctionData(functionFragment: "updateEpochIfNeeded", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "usedNullifiers", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "userSignUp", values: [BigNumberish[], BigNumberish[]]): string; encodeFunctionData(functionFragment: "userStateTransition", values: [BigNumberish[], BigNumberish[]]): string; encodeFunctionData(functionFragment: "userStateTransitionVerifier", values?: undefined): string; decodeFunctionResult(functionFragment: "SNARK_SCALAR_FIELD", data: BytesLike): Result; decodeFunctionResult(functionFragment: "_updateEpochIfNeeded", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attest", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attestationCount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterCurrentEpoch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterEpochLength", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterEpochRemainingTime", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterEpochRoot", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterMemberCount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterSemaphoreGroupRoot", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterSignUp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterSignUpViaRelayer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterStartTimestamp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterStateTreeLeafCount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterStateTreeRoot", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attesterStateTreeRootExists", data: BytesLike): Result; decodeFunctionResult(functionFragment: "chainid", data: BytesLike): Result; decodeFunctionResult(functionFragment: "config", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decodeSignupControl", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decodeSignupSignals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decodeUserStateTransitionControl", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decodeUserStateTransitionSignals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "defaultDataHash", data: BytesLike): Result; decodeFunctionResult(functionFragment: "epochTreeDepth", data: BytesLike): Result; decodeFunctionResult(functionFragment: "fieldCount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "historyTreeDepth", data: BytesLike): Result; decodeFunctionResult(functionFragment: "manualUserSignUp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "numEpochKeyNoncePerEpoch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "replFieldBits", data: BytesLike): Result; decodeFunctionResult(functionFragment: "replNonceBits", data: BytesLike): Result; decodeFunctionResult(functionFragment: "signupVerifier", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stateTreeDepth", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sumFieldCount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateEpochIfNeeded", data: BytesLike): Result; decodeFunctionResult(functionFragment: "usedNullifiers", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userSignUp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userStateTransition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userStateTransitionVerifier", data: BytesLike): Result; events: { "Attestation(uint48,uint256,uint160,uint256,uint256)": EventFragment; "AttesterSignedUp(uint160,uint48,uint48)": EventFragment; "EpochEnded(uint48,uint160)": EventFragment; "EpochTreeLeaf(uint48,uint160,uint256,uint256)": EventFragment; "HistoryTreeLeaf(uint160,uint256)": EventFragment; "StateTreeLeaf(uint48,uint160,uint256,uint256)": EventFragment; "UserSignedUp(uint48,uint256,uint160,uint256)": EventFragment; "UserStateTransitioned(uint48,uint160,uint256,uint256,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Attestation"): EventFragment; getEvent(nameOrSignatureOrTopic: "AttesterSignedUp"): EventFragment; getEvent(nameOrSignatureOrTopic: "EpochEnded"): EventFragment; getEvent(nameOrSignatureOrTopic: "EpochTreeLeaf"): EventFragment; getEvent(nameOrSignatureOrTopic: "HistoryTreeLeaf"): EventFragment; getEvent(nameOrSignatureOrTopic: "StateTreeLeaf"): EventFragment; getEvent(nameOrSignatureOrTopic: "UserSignedUp"): EventFragment; getEvent(nameOrSignatureOrTopic: "UserStateTransitioned"): EventFragment; } export interface AttestationEventObject { epoch: number; epochKey: BigNumber; attesterId: BigNumber; fieldIndex: BigNumber; change: BigNumber; } export type AttestationEvent = TypedEvent<[ number, BigNumber, BigNumber, BigNumber, BigNumber ], AttestationEventObject>; export type AttestationEventFilter = TypedEventFilter<AttestationEvent>; export interface AttesterSignedUpEventObject { attesterId: BigNumber; epochLength: number; timestamp: number; } export type AttesterSignedUpEvent = TypedEvent<[ BigNumber, number, number ], AttesterSignedUpEventObject>; export type AttesterSignedUpEventFilter = TypedEventFilter<AttesterSignedUpEvent>; export interface EpochEndedEventObject { epoch: number; attesterId: BigNumber; } export type EpochEndedEvent = TypedEvent<[ number, BigNumber ], EpochEndedEventObject>; export type EpochEndedEventFilter = TypedEventFilter<EpochEndedEvent>; export interface EpochTreeLeafEventObject { epoch: number; attesterId: BigNumber; index: BigNumber; leaf: BigNumber; } export type EpochTreeLeafEvent = TypedEvent<[ number, BigNumber, BigNumber, BigNumber ], EpochTreeLeafEventObject>; export type EpochTreeLeafEventFilter = TypedEventFilter<EpochTreeLeafEvent>; export interface HistoryTreeLeafEventObject { attesterId: BigNumber; leaf: BigNumber; } export type HistoryTreeLeafEvent = TypedEvent<[ BigNumber, BigNumber ], HistoryTreeLeafEventObject>; export type HistoryTreeLeafEventFilter = TypedEventFilter<HistoryTreeLeafEvent>; export interface StateTreeLeafEventObject { epoch: number; attesterId: BigNumber; index: BigNumber; leaf: BigNumber; } export type StateTreeLeafEvent = TypedEvent<[ number, BigNumber, BigNumber, BigNumber ], StateTreeLeafEventObject>; export type StateTreeLeafEventFilter = TypedEventFilter<StateTreeLeafEvent>; export interface UserSignedUpEventObject { epoch: number; identityCommitment: BigNumber; attesterId: BigNumber; leafIndex: BigNumber; } export type UserSignedUpEvent = TypedEvent<[ number, BigNumber, BigNumber, BigNumber ], UserSignedUpEventObject>; export type UserSignedUpEventFilter = TypedEventFilter<UserSignedUpEvent>; export interface UserStateTransitionedEventObject { epoch: number; attesterId: BigNumber; leafIndex: BigNumber; hashedLeaf: BigNumber; nullifier: BigNumber; } export type UserStateTransitionedEvent = TypedEvent<[ number, BigNumber, BigNumber, BigNumber, BigNumber ], UserStateTransitionedEventObject>; export type UserStateTransitionedEventFilter = TypedEventFilter<UserStateTransitionedEvent>; export interface Unirep extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: UnirepInterface; 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: { SNARK_SCALAR_FIELD(overrides?: CallOverrides): Promise<[BigNumber]>; _updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attest(epochKey: BigNumberish, epoch: BigNumberish, fieldIndex: BigNumberish, change: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attestationCount(overrides?: CallOverrides): Promise<[number]>; attesterCurrentEpoch(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[number]>; attesterEpochLength(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[number]>; attesterEpochRemainingTime(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[number]>; attesterEpochRoot(attesterId: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; attesterMemberCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; attesterSemaphoreGroupRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; attesterSignUp(epochLength: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attesterSignUpViaRelayer(attester: string, epochLength: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attesterStartTimestamp(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; attesterStateTreeLeafCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; attesterStateTreeRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber]>; attesterStateTreeRootExists(attesterId: BigNumberish, epoch: BigNumberish, root: BigNumberish, overrides?: CallOverrides): Promise<[boolean]>; chainid(overrides?: CallOverrides): Promise<[number]>; config(overrides?: CallOverrides): Promise<[IUnirep.ConfigStructOutput]>; decodeSignupControl(control: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number, number ] & { attesterId: BigNumber; epoch: number; chainId: number; }>; decodeSignupSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<[IUnirep.SignupSignalsStructOutput]>; decodeUserStateTransitionControl(control: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number ] & { attesterId: BigNumber; toEpoch: number; }>; decodeUserStateTransitionSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<[IUnirep.UserStateTransitionSignalsStructOutput]>; defaultDataHash(overrides?: CallOverrides): Promise<[BigNumber]>; epochTreeDepth(overrides?: CallOverrides): Promise<[number]>; fieldCount(overrides?: CallOverrides): Promise<[number]>; historyTreeDepth(overrides?: CallOverrides): Promise<[number]>; manualUserSignUp(epoch: BigNumberish, identityCommitment: BigNumberish, leafIdentityHash: BigNumberish, initialData: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; numEpochKeyNoncePerEpoch(overrides?: CallOverrides): Promise<[number]>; replFieldBits(overrides?: CallOverrides): Promise<[number]>; replNonceBits(overrides?: CallOverrides): Promise<[number]>; signupVerifier(overrides?: CallOverrides): Promise<[string]>; stateTreeDepth(overrides?: CallOverrides): Promise<[number]>; sumFieldCount(overrides?: CallOverrides): Promise<[number]>; updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; usedNullifiers(arg0: BigNumberish, overrides?: CallOverrides): Promise<[boolean]>; userSignUp(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; userStateTransition(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; userStateTransitionVerifier(overrides?: CallOverrides): Promise<[string]>; }; SNARK_SCALAR_FIELD(overrides?: CallOverrides): Promise<BigNumber>; _updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attest(epochKey: BigNumberish, epoch: BigNumberish, fieldIndex: BigNumberish, change: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attestationCount(overrides?: CallOverrides): Promise<number>; attesterCurrentEpoch(attesterId: BigNumberish, overrides?: CallOverrides): Promise<number>; attesterEpochLength(attesterId: BigNumberish, overrides?: CallOverrides): Promise<number>; attesterEpochRemainingTime(attesterId: BigNumberish, overrides?: CallOverrides): Promise<number>; attesterEpochRoot(attesterId: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterMemberCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterSemaphoreGroupRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterSignUp(epochLength: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attesterSignUpViaRelayer(attester: string, epochLength: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; attesterStartTimestamp(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeLeafCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeRootExists(attesterId: BigNumberish, epoch: BigNumberish, root: BigNumberish, overrides?: CallOverrides): Promise<boolean>; chainid(overrides?: CallOverrides): Promise<number>; config(overrides?: CallOverrides): Promise<IUnirep.ConfigStructOutput>; decodeSignupControl(control: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number, number ] & { attesterId: BigNumber; epoch: number; chainId: number; }>; decodeSignupSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<IUnirep.SignupSignalsStructOutput>; decodeUserStateTransitionControl(control: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber, number] & { attesterId: BigNumber; toEpoch: number; }>; decodeUserStateTransitionSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<IUnirep.UserStateTransitionSignalsStructOutput>; defaultDataHash(overrides?: CallOverrides): Promise<BigNumber>; epochTreeDepth(overrides?: CallOverrides): Promise<number>; fieldCount(overrides?: CallOverrides): Promise<number>; historyTreeDepth(overrides?: CallOverrides): Promise<number>; manualUserSignUp(epoch: BigNumberish, identityCommitment: BigNumberish, leafIdentityHash: BigNumberish, initialData: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; numEpochKeyNoncePerEpoch(overrides?: CallOverrides): Promise<number>; replFieldBits(overrides?: CallOverrides): Promise<number>; replNonceBits(overrides?: CallOverrides): Promise<number>; signupVerifier(overrides?: CallOverrides): Promise<string>; stateTreeDepth(overrides?: CallOverrides): Promise<number>; sumFieldCount(overrides?: CallOverrides): Promise<number>; updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; usedNullifiers(arg0: BigNumberish, overrides?: CallOverrides): Promise<boolean>; userSignUp(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; userStateTransition(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<ContractTransaction>; userStateTransitionVerifier(overrides?: CallOverrides): Promise<string>; callStatic: { SNARK_SCALAR_FIELD(overrides?: CallOverrides): Promise<BigNumber>; _updateEpochIfNeeded(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attest(epochKey: BigNumberish, epoch: BigNumberish, fieldIndex: BigNumberish, change: BigNumberish, overrides?: CallOverrides): Promise<void>; attestationCount(overrides?: CallOverrides): Promise<number>; attesterCurrentEpoch(attesterId: BigNumberish, overrides?: CallOverrides): Promise<number>; attesterEpochLength(attesterId: BigNumberish, overrides?: CallOverrides): Promise<number>; attesterEpochRemainingTime(attesterId: BigNumberish, overrides?: CallOverrides): Promise<number>; attesterEpochRoot(attesterId: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterMemberCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterSemaphoreGroupRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterSignUp(epochLength: BigNumberish, overrides?: CallOverrides): Promise<void>; attesterSignUpViaRelayer(attester: string, epochLength: BigNumberish, signature: BytesLike, overrides?: CallOverrides): Promise<void>; attesterStartTimestamp(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeLeafCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeRootExists(attesterId: BigNumberish, epoch: BigNumberish, root: BigNumberish, overrides?: CallOverrides): Promise<boolean>; chainid(overrides?: CallOverrides): Promise<number>; config(overrides?: CallOverrides): Promise<IUnirep.ConfigStructOutput>; decodeSignupControl(control: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number, number ] & { attesterId: BigNumber; epoch: number; chainId: number; }>; decodeSignupSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<IUnirep.SignupSignalsStructOutput>; decodeUserStateTransitionControl(control: BigNumberish, overrides?: CallOverrides): Promise<[ BigNumber, number ] & { attesterId: BigNumber; toEpoch: number; }>; decodeUserStateTransitionSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<IUnirep.UserStateTransitionSignalsStructOutput>; defaultDataHash(overrides?: CallOverrides): Promise<BigNumber>; epochTreeDepth(overrides?: CallOverrides): Promise<number>; fieldCount(overrides?: CallOverrides): Promise<number>; historyTreeDepth(overrides?: CallOverrides): Promise<number>; manualUserSignUp(epoch: BigNumberish, identityCommitment: BigNumberish, leafIdentityHash: BigNumberish, initialData: BigNumberish[], overrides?: CallOverrides): Promise<void>; numEpochKeyNoncePerEpoch(overrides?: CallOverrides): Promise<number>; replFieldBits(overrides?: CallOverrides): Promise<number>; replNonceBits(overrides?: CallOverrides): Promise<number>; signupVerifier(overrides?: CallOverrides): Promise<string>; stateTreeDepth(overrides?: CallOverrides): Promise<number>; sumFieldCount(overrides?: CallOverrides): Promise<number>; updateEpochIfNeeded(attesterId: BigNumberish, overrides?: CallOverrides): Promise<number>; usedNullifiers(arg0: BigNumberish, overrides?: CallOverrides): Promise<boolean>; userSignUp(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: CallOverrides): Promise<void>; userStateTransition(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: CallOverrides): Promise<void>; userStateTransitionVerifier(overrides?: CallOverrides): Promise<string>; }; filters: { "Attestation(uint48,uint256,uint160,uint256,uint256)"(epoch?: BigNumberish | null, epochKey?: BigNumberish | null, attesterId?: BigNumberish | null, fieldIndex?: null, change?: null): AttestationEventFilter; Attestation(epoch?: BigNumberish | null, epochKey?: BigNumberish | null, attesterId?: BigNumberish | null, fieldIndex?: null, change?: null): AttestationEventFilter; "AttesterSignedUp(uint160,uint48,uint48)"(attesterId?: BigNumberish | null, epochLength?: null, timestamp?: null): AttesterSignedUpEventFilter; AttesterSignedUp(attesterId?: BigNumberish | null, epochLength?: null, timestamp?: null): AttesterSignedUpEventFilter; "EpochEnded(uint48,uint160)"(epoch?: BigNumberish | null, attesterId?: BigNumberish | null): EpochEndedEventFilter; EpochEnded(epoch?: BigNumberish | null, attesterId?: BigNumberish | null): EpochEndedEventFilter; "EpochTreeLeaf(uint48,uint160,uint256,uint256)"(epoch?: BigNumberish | null, attesterId?: BigNumberish | null, index?: BigNumberish | null, leaf?: null): EpochTreeLeafEventFilter; EpochTreeLeaf(epoch?: BigNumberish | null, attesterId?: BigNumberish | null, index?: BigNumberish | null, leaf?: null): EpochTreeLeafEventFilter; "HistoryTreeLeaf(uint160,uint256)"(attesterId?: BigNumberish | null, leaf?: null): HistoryTreeLeafEventFilter; HistoryTreeLeaf(attesterId?: BigNumberish | null, leaf?: null): HistoryTreeLeafEventFilter; "StateTreeLeaf(uint48,uint160,uint256,uint256)"(epoch?: BigNumberish | null, attesterId?: BigNumberish | null, index?: BigNumberish | null, leaf?: null): StateTreeLeafEventFilter; StateTreeLeaf(epoch?: BigNumberish | null, attesterId?: BigNumberish | null, index?: BigNumberish | null, leaf?: null): StateTreeLeafEventFilter; "UserSignedUp(uint48,uint256,uint160,uint256)"(epoch?: BigNumberish | null, identityCommitment?: BigNumberish | null, attesterId?: BigNumberish | null, leafIndex?: null): UserSignedUpEventFilter; UserSignedUp(epoch?: BigNumberish | null, identityCommitment?: BigNumberish | null, attesterId?: BigNumberish | null, leafIndex?: null): UserSignedUpEventFilter; "UserStateTransitioned(uint48,uint160,uint256,uint256,uint256)"(epoch?: BigNumberish | null, attesterId?: BigNumberish | null, leafIndex?: BigNumberish | null, hashedLeaf?: null, nullifier?: null): UserStateTransitionedEventFilter; UserStateTransitioned(epoch?: BigNumberish | null, attesterId?: BigNumberish | null, leafIndex?: BigNumberish | null, hashedLeaf?: null, nullifier?: null): UserStateTransitionedEventFilter; }; estimateGas: { SNARK_SCALAR_FIELD(overrides?: CallOverrides): Promise<BigNumber>; _updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; attest(epochKey: BigNumberish, epoch: BigNumberish, fieldIndex: BigNumberish, change: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; attestationCount(overrides?: CallOverrides): Promise<BigNumber>; attesterCurrentEpoch(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterEpochLength(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterEpochRemainingTime(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterEpochRoot(attesterId: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterMemberCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterSemaphoreGroupRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterSignUp(epochLength: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; attesterSignUpViaRelayer(attester: string, epochLength: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; attesterStartTimestamp(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeLeafCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; attesterStateTreeRootExists(attesterId: BigNumberish, epoch: BigNumberish, root: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; chainid(overrides?: CallOverrides): Promise<BigNumber>; config(overrides?: CallOverrides): Promise<BigNumber>; decodeSignupControl(control: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; decodeSignupSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<BigNumber>; decodeUserStateTransitionControl(control: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; decodeUserStateTransitionSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<BigNumber>; defaultDataHash(overrides?: CallOverrides): Promise<BigNumber>; epochTreeDepth(overrides?: CallOverrides): Promise<BigNumber>; fieldCount(overrides?: CallOverrides): Promise<BigNumber>; historyTreeDepth(overrides?: CallOverrides): Promise<BigNumber>; manualUserSignUp(epoch: BigNumberish, identityCommitment: BigNumberish, leafIdentityHash: BigNumberish, initialData: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; numEpochKeyNoncePerEpoch(overrides?: CallOverrides): Promise<BigNumber>; replFieldBits(overrides?: CallOverrides): Promise<BigNumber>; replNonceBits(overrides?: CallOverrides): Promise<BigNumber>; signupVerifier(overrides?: CallOverrides): Promise<BigNumber>; stateTreeDepth(overrides?: CallOverrides): Promise<BigNumber>; sumFieldCount(overrides?: CallOverrides): Promise<BigNumber>; updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<BigNumber>; usedNullifiers(arg0: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>; userSignUp(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; userStateTransition(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<BigNumber>; userStateTransitionVerifier(overrides?: CallOverrides): Promise<BigNumber>; }; populateTransaction: { SNARK_SCALAR_FIELD(overrides?: CallOverrides): Promise<PopulatedTransaction>; _updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; attest(epochKey: BigNumberish, epoch: BigNumberish, fieldIndex: BigNumberish, change: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; attestationCount(overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterCurrentEpoch(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterEpochLength(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterEpochRemainingTime(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterEpochRoot(attesterId: BigNumberish, epoch: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterMemberCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterSemaphoreGroupRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterSignUp(epochLength: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; attesterSignUpViaRelayer(attester: string, epochLength: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; attesterStartTimestamp(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterStateTreeLeafCount(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterStateTreeRoot(attesterId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; attesterStateTreeRootExists(attesterId: BigNumberish, epoch: BigNumberish, root: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; chainid(overrides?: CallOverrides): Promise<PopulatedTransaction>; config(overrides?: CallOverrides): Promise<PopulatedTransaction>; decodeSignupControl(control: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; decodeSignupSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<PopulatedTransaction>; decodeUserStateTransitionControl(control: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; decodeUserStateTransitionSignals(publicSignals: BigNumberish[], overrides?: CallOverrides): Promise<PopulatedTransaction>; defaultDataHash(overrides?: CallOverrides): Promise<PopulatedTransaction>; epochTreeDepth(overrides?: CallOverrides): Promise<PopulatedTransaction>; fieldCount(overrides?: CallOverrides): Promise<PopulatedTransaction>; historyTreeDepth(overrides?: CallOverrides): Promise<PopulatedTransaction>; manualUserSignUp(epoch: BigNumberish, identityCommitment: BigNumberish, leafIdentityHash: BigNumberish, initialData: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; numEpochKeyNoncePerEpoch(overrides?: CallOverrides): Promise<PopulatedTransaction>; replFieldBits(overrides?: CallOverrides): Promise<PopulatedTransaction>; replNonceBits(overrides?: CallOverrides): Promise<PopulatedTransaction>; signupVerifier(overrides?: CallOverrides): Promise<PopulatedTransaction>; stateTreeDepth(overrides?: CallOverrides): Promise<PopulatedTransaction>; sumFieldCount(overrides?: CallOverrides): Promise<PopulatedTransaction>; updateEpochIfNeeded(attesterId: BigNumberish, overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; usedNullifiers(arg0: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>; userSignUp(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; userStateTransition(publicSignals: BigNumberish[], proof: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise<PopulatedTransaction>; userStateTransitionVerifier(overrides?: CallOverrides): Promise<PopulatedTransaction>; }; }