/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener, } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod, } from "../common"; export declare namespace SparseMerkleProof { export type AccountStruct = { nonce: BigNumberish; balance: BigNumberish; storageRoot: BytesLike; mimcCodeHash: BytesLike; keccakCodeHash: BytesLike; codeSize: BigNumberish; }; export type AccountStructOutput = [ nonce: bigint, balance: bigint, storageRoot: string, mimcCodeHash: string, keccakCodeHash: string, codeSize: bigint ] & { nonce: bigint; balance: bigint; storageRoot: string; mimcCodeHash: string; keccakCodeHash: string; codeSize: bigint; }; export type LeafStruct = { prev: BigNumberish; next: BigNumberish; hKey: BytesLike; hValue: BytesLike; }; export type LeafStructOutput = [ prev: bigint, next: bigint, hKey: string, hValue: string ] & { prev: bigint; next: bigint; hKey: string; hValue: string }; } export interface SparseMerkleProofInterface extends Interface { getFunction( nameOrSignature: | "getAccount" | "getLeaf" | "hashAccountValue" | "hashStorageValue" | "mimcHash" | "verifyProof" ): FunctionFragment; encodeFunctionData( functionFragment: "getAccount", values: [BytesLike] ): string; encodeFunctionData(functionFragment: "getLeaf", values: [BytesLike]): string; encodeFunctionData( functionFragment: "hashAccountValue", values: [BytesLike] ): string; encodeFunctionData( functionFragment: "hashStorageValue", values: [BytesLike] ): string; encodeFunctionData(functionFragment: "mimcHash", values: [BytesLike]): string; encodeFunctionData( functionFragment: "verifyProof", values: [BytesLike[], BigNumberish, BytesLike] ): string; decodeFunctionResult(functionFragment: "getAccount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLeaf", data: BytesLike): Result; decodeFunctionResult( functionFragment: "hashAccountValue", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "hashStorageValue", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "mimcHash", data: BytesLike): Result; decodeFunctionResult( functionFragment: "verifyProof", data: BytesLike ): Result; } export interface SparseMerkleProof extends BaseContract { connect(runner?: ContractRunner | null): SparseMerkleProof; waitForDeployment(): Promise; interface: SparseMerkleProofInterface; queryFilter( event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise>>; queryFilter( filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise>>; on( event: TCEvent, listener: TypedListener ): Promise; on( filter: TypedDeferredTopicFilter, listener: TypedListener ): Promise; once( event: TCEvent, listener: TypedListener ): Promise; once( filter: TypedDeferredTopicFilter, listener: TypedListener ): Promise; listeners( event: TCEvent ): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners( event?: TCEvent ): Promise; getAccount: TypedContractMethod< [_encodedAccountValue: BytesLike], [SparseMerkleProof.AccountStructOutput], "view" >; getLeaf: TypedContractMethod< [_encodedLeaf: BytesLike], [SparseMerkleProof.LeafStructOutput], "view" >; hashAccountValue: TypedContractMethod<[_value: BytesLike], [string], "view">; hashStorageValue: TypedContractMethod<[_value: BytesLike], [string], "view">; mimcHash: TypedContractMethod<[_input: BytesLike], [string], "view">; verifyProof: TypedContractMethod< [_rawProof: BytesLike[], _leafIndex: BigNumberish, _root: BytesLike], [boolean], "view" >; getFunction( key: string | FunctionFragment ): T; getFunction( nameOrSignature: "getAccount" ): TypedContractMethod< [_encodedAccountValue: BytesLike], [SparseMerkleProof.AccountStructOutput], "view" >; getFunction( nameOrSignature: "getLeaf" ): TypedContractMethod< [_encodedLeaf: BytesLike], [SparseMerkleProof.LeafStructOutput], "view" >; getFunction( nameOrSignature: "hashAccountValue" ): TypedContractMethod<[_value: BytesLike], [string], "view">; getFunction( nameOrSignature: "hashStorageValue" ): TypedContractMethod<[_value: BytesLike], [string], "view">; getFunction( nameOrSignature: "mimcHash" ): TypedContractMethod<[_input: BytesLike], [string], "view">; getFunction( nameOrSignature: "verifyProof" ): TypedContractMethod< [_rawProof: BytesLike[], _leafIndex: BigNumberish, _root: BytesLike], [boolean], "view" >; filters: {}; }