/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, BaseContract, ContractTransaction, Overrides, PayableOverrides, CallOverrides, } from "ethers"; import { BytesLike } from "@ethersproject/bytes"; import { Listener, Provider } from "@ethersproject/providers"; import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi"; import { TypedEventFilter, TypedEvent, TypedListener } from "./commons"; interface TornadoPoolInterface extends ethers.utils.Interface { functions: { "FIELD_SIZE()": FunctionFragment; "MAX_EXT_AMOUNT()": FunctionFragment; "calculateExternalAmount(uint256)": FunctionFragment; "currentCommitmentIndex()": FunctionFragment; "currentRoot()": FunctionFragment; "isSpent(bytes32)": FunctionFragment; "nullifierHashes(bytes32)": FunctionFragment; "register(tuple)": FunctionFragment; "registerAndTransact(tuple,tuple,tuple)": FunctionFragment; "transaction(tuple,tuple)": FunctionFragment; "verifier16()": FunctionFragment; "verifier2()": FunctionFragment; "verifyProof(tuple)": FunctionFragment; }; encodeFunctionData( functionFragment: "FIELD_SIZE", values?: undefined ): string; encodeFunctionData( functionFragment: "MAX_EXT_AMOUNT", values?: undefined ): string; encodeFunctionData( functionFragment: "calculateExternalAmount", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "currentCommitmentIndex", values?: undefined ): string; encodeFunctionData( functionFragment: "currentRoot", values?: undefined ): string; encodeFunctionData(functionFragment: "isSpent", values: [BytesLike]): string; encodeFunctionData( functionFragment: "nullifierHashes", values: [BytesLike] ): string; encodeFunctionData( functionFragment: "register", values: [{ pubKey: BytesLike; account: BytesLike }] ): string; encodeFunctionData( functionFragment: "registerAndTransact", values: [ { pubKey: BytesLike; account: BytesLike }, { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; } ] ): string; encodeFunctionData( functionFragment: "transaction", values: [ { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; } ] ): string; encodeFunctionData( functionFragment: "verifier16", values?: undefined ): string; encodeFunctionData(functionFragment: "verifier2", values?: undefined): string; encodeFunctionData( functionFragment: "verifyProof", values: [ { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; } ] ): string; decodeFunctionResult(functionFragment: "FIELD_SIZE", data: BytesLike): Result; decodeFunctionResult( functionFragment: "MAX_EXT_AMOUNT", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "calculateExternalAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "currentCommitmentIndex", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "currentRoot", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "isSpent", data: BytesLike): Result; decodeFunctionResult( functionFragment: "nullifierHashes", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; decodeFunctionResult( functionFragment: "registerAndTransact", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "transaction", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "verifier16", data: BytesLike): Result; decodeFunctionResult(functionFragment: "verifier2", data: BytesLike): Result; decodeFunctionResult( functionFragment: "verifyProof", data: BytesLike ): Result; events: { "EncryptedAccount(address,bytes)": EventFragment; "NewCommitment(bytes32,uint256,bytes)": EventFragment; "NewNullifier(bytes32)": EventFragment; "PublicKey(address,bytes)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "EncryptedAccount"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewCommitment"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewNullifier"): EventFragment; getEvent(nameOrSignatureOrTopic: "PublicKey"): EventFragment; } export class TornadoPool extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; listeners, EventArgsObject>( eventFilter?: TypedEventFilter ): Array>; off, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; on, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; once, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeListener, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeAllListeners, EventArgsObject>( eventFilter: TypedEventFilter ): this; listeners(eventName?: string): Array; off(eventName: string, listener: Listener): this; on(eventName: string, listener: Listener): this; once(eventName: string, listener: Listener): this; removeListener(eventName: string, listener: Listener): this; removeAllListeners(eventName?: string): this; queryFilter, EventArgsObject>( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise>>; interface: TornadoPoolInterface; functions: { FIELD_SIZE(overrides?: CallOverrides): Promise<[BigNumber]>; MAX_EXT_AMOUNT(overrides?: CallOverrides): Promise<[BigNumber]>; calculateExternalAmount( _extAmount: BigNumberish, overrides?: CallOverrides ): Promise<[BigNumber]>; currentCommitmentIndex(overrides?: CallOverrides): Promise<[BigNumber]>; currentRoot(overrides?: CallOverrides): Promise<[string]>; isSpent( _nullifierHash: BytesLike, overrides?: CallOverrides ): Promise<[boolean]>; nullifierHashes( arg0: BytesLike, overrides?: CallOverrides ): Promise<[boolean]>; register( args: { pubKey: BytesLike; account: BytesLike }, overrides?: Overrides & { from?: string | Promise } ): Promise; registerAndTransact( _registerArgs: { pubKey: BytesLike; account: BytesLike }, _proofArgs: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; transaction( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; verifier16(overrides?: CallOverrides): Promise<[string]>; verifier2(overrides?: CallOverrides): Promise<[string]>; verifyProof( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, overrides?: CallOverrides ): Promise<[boolean]>; }; FIELD_SIZE(overrides?: CallOverrides): Promise; MAX_EXT_AMOUNT(overrides?: CallOverrides): Promise; calculateExternalAmount( _extAmount: BigNumberish, overrides?: CallOverrides ): Promise; currentCommitmentIndex(overrides?: CallOverrides): Promise; currentRoot(overrides?: CallOverrides): Promise; isSpent( _nullifierHash: BytesLike, overrides?: CallOverrides ): Promise; nullifierHashes(arg0: BytesLike, overrides?: CallOverrides): Promise; register( args: { pubKey: BytesLike; account: BytesLike }, overrides?: Overrides & { from?: string | Promise } ): Promise; registerAndTransact( _registerArgs: { pubKey: BytesLike; account: BytesLike }, _proofArgs: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; transaction( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; verifier16(overrides?: CallOverrides): Promise; verifier2(overrides?: CallOverrides): Promise; verifyProof( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, overrides?: CallOverrides ): Promise; callStatic: { FIELD_SIZE(overrides?: CallOverrides): Promise; MAX_EXT_AMOUNT(overrides?: CallOverrides): Promise; calculateExternalAmount( _extAmount: BigNumberish, overrides?: CallOverrides ): Promise; currentCommitmentIndex(overrides?: CallOverrides): Promise; currentRoot(overrides?: CallOverrides): Promise; isSpent( _nullifierHash: BytesLike, overrides?: CallOverrides ): Promise; nullifierHashes( arg0: BytesLike, overrides?: CallOverrides ): Promise; register( args: { pubKey: BytesLike; account: BytesLike }, overrides?: CallOverrides ): Promise; registerAndTransact( _registerArgs: { pubKey: BytesLike; account: BytesLike }, _proofArgs: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: CallOverrides ): Promise; transaction( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: CallOverrides ): Promise; verifier16(overrides?: CallOverrides): Promise; verifier2(overrides?: CallOverrides): Promise; verifyProof( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, overrides?: CallOverrides ): Promise; }; filters: { EncryptedAccount( owner?: string | null, account?: null ): TypedEventFilter<[string, string], { owner: string; account: string }>; NewCommitment( commitment?: null, index?: null, encryptedOutput?: null ): TypedEventFilter< [string, BigNumber, string], { commitment: string; index: BigNumber; encryptedOutput: string } >; NewNullifier( nullifier?: null ): TypedEventFilter<[string], { nullifier: string }>; PublicKey( owner?: string | null, key?: null ): TypedEventFilter<[string, string], { owner: string; key: string }>; }; estimateGas: { FIELD_SIZE(overrides?: CallOverrides): Promise; MAX_EXT_AMOUNT(overrides?: CallOverrides): Promise; calculateExternalAmount( _extAmount: BigNumberish, overrides?: CallOverrides ): Promise; currentCommitmentIndex(overrides?: CallOverrides): Promise; currentRoot(overrides?: CallOverrides): Promise; isSpent( _nullifierHash: BytesLike, overrides?: CallOverrides ): Promise; nullifierHashes( arg0: BytesLike, overrides?: CallOverrides ): Promise; register( args: { pubKey: BytesLike; account: BytesLike }, overrides?: Overrides & { from?: string | Promise } ): Promise; registerAndTransact( _registerArgs: { pubKey: BytesLike; account: BytesLike }, _proofArgs: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; transaction( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; verifier16(overrides?: CallOverrides): Promise; verifier2(overrides?: CallOverrides): Promise; verifyProof( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, overrides?: CallOverrides ): Promise; }; populateTransaction: { FIELD_SIZE(overrides?: CallOverrides): Promise; MAX_EXT_AMOUNT(overrides?: CallOverrides): Promise; calculateExternalAmount( _extAmount: BigNumberish, overrides?: CallOverrides ): Promise; currentCommitmentIndex( overrides?: CallOverrides ): Promise; currentRoot(overrides?: CallOverrides): Promise; isSpent( _nullifierHash: BytesLike, overrides?: CallOverrides ): Promise; nullifierHashes( arg0: BytesLike, overrides?: CallOverrides ): Promise; register( args: { pubKey: BytesLike; account: BytesLike }, overrides?: Overrides & { from?: string | Promise } ): Promise; registerAndTransact( _registerArgs: { pubKey: BytesLike; account: BytesLike }, _proofArgs: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; transaction( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, _extData: { recipient: string; relayer: string; encryptedOutput1: BytesLike; encryptedOutput2: BytesLike; }, overrides?: PayableOverrides & { from?: string | Promise } ): Promise; verifier16(overrides?: CallOverrides): Promise; verifier2(overrides?: CallOverrides): Promise; verifyProof( _args: { proof: BytesLike; root: BytesLike; newRoot: BytesLike; inputNullifiers: BytesLike[]; outputCommitments: [BytesLike, BytesLike]; outPathIndices: BigNumberish; extAmount: BigNumberish; fee: BigNumberish; extDataHash: BytesLike; }, overrides?: CallOverrides ): Promise; }; }