import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../common"; export declare namespace IWallet { type ActionDataStruct = { ethValue: PromiseOrValue; contractAddress: PromiseOrValue; encodedFunction: PromiseOrValue; }; type ActionDataStructOutput = [BigNumber, string, string] & { ethValue: BigNumber; contractAddress: string; encodedFunction: string; }; type OperationStruct = { nonce: PromiseOrValue; gas: PromiseOrValue; actions: IWallet.ActionDataStruct[]; }; type OperationStructOutput = [ BigNumber, BigNumber, IWallet.ActionDataStructOutput[] ] & { nonce: BigNumber; gas: BigNumber; actions: IWallet.ActionDataStructOutput[]; }; } export interface ERC20ExpanderInterface extends utils.Interface { functions: { "addressRegistry()": FunctionFragment; "aggregatorUtilities()": FunctionFragment; "blsPublicKeyRegistry()": FunctionFragment; "expand(bytes)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "addressRegistry" | "aggregatorUtilities" | "blsPublicKeyRegistry" | "expand"): FunctionFragment; encodeFunctionData(functionFragment: "addressRegistry", values?: undefined): string; encodeFunctionData(functionFragment: "aggregatorUtilities", values?: undefined): string; encodeFunctionData(functionFragment: "blsPublicKeyRegistry", values?: undefined): string; encodeFunctionData(functionFragment: "expand", values: [PromiseOrValue]): string; decodeFunctionResult(functionFragment: "addressRegistry", data: BytesLike): Result; decodeFunctionResult(functionFragment: "aggregatorUtilities", data: BytesLike): Result; decodeFunctionResult(functionFragment: "blsPublicKeyRegistry", data: BytesLike): Result; decodeFunctionResult(functionFragment: "expand", data: BytesLike): Result; events: {}; } export interface ERC20Expander extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ERC20ExpanderInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { addressRegistry(overrides?: CallOverrides): Promise<[string]>; aggregatorUtilities(overrides?: CallOverrides): Promise<[string]>; blsPublicKeyRegistry(overrides?: CallOverrides): Promise<[string]>; expand(stream: PromiseOrValue, overrides?: CallOverrides): Promise<[ [ BigNumber, BigNumber, BigNumber, BigNumber ], IWallet.OperationStructOutput, BigNumber ] & { senderPublicKey: [BigNumber, BigNumber, BigNumber, BigNumber]; operation: IWallet.OperationStructOutput; bytesRead: BigNumber; }>; }; addressRegistry(overrides?: CallOverrides): Promise; aggregatorUtilities(overrides?: CallOverrides): Promise; blsPublicKeyRegistry(overrides?: CallOverrides): Promise; expand(stream: PromiseOrValue, overrides?: CallOverrides): Promise<[ [ BigNumber, BigNumber, BigNumber, BigNumber ], IWallet.OperationStructOutput, BigNumber ] & { senderPublicKey: [BigNumber, BigNumber, BigNumber, BigNumber]; operation: IWallet.OperationStructOutput; bytesRead: BigNumber; }>; callStatic: { addressRegistry(overrides?: CallOverrides): Promise; aggregatorUtilities(overrides?: CallOverrides): Promise; blsPublicKeyRegistry(overrides?: CallOverrides): Promise; expand(stream: PromiseOrValue, overrides?: CallOverrides): Promise<[ [ BigNumber, BigNumber, BigNumber, BigNumber ], IWallet.OperationStructOutput, BigNumber ] & { senderPublicKey: [BigNumber, BigNumber, BigNumber, BigNumber]; operation: IWallet.OperationStructOutput; bytesRead: BigNumber; }>; }; filters: {}; estimateGas: { addressRegistry(overrides?: CallOverrides): Promise; aggregatorUtilities(overrides?: CallOverrides): Promise; blsPublicKeyRegistry(overrides?: CallOverrides): Promise; expand(stream: PromiseOrValue, overrides?: CallOverrides): Promise; }; populateTransaction: { addressRegistry(overrides?: CallOverrides): Promise; aggregatorUtilities(overrides?: CallOverrides): Promise; blsPublicKeyRegistry(overrides?: CallOverrides): Promise; expand(stream: PromiseOrValue, overrides?: CallOverrides): Promise; }; } //# sourceMappingURL=ERC20Expander.d.ts.map