import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, PayableOverrides, 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, PromiseOrValue } from "../../common"; export interface SplitWalletInterface extends utils.Interface { functions: { "sendERC20ToMain(address,uint256)": FunctionFragment; "sendETHToMain(uint256)": FunctionFragment; "splitMain()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "sendERC20ToMain" | "sendETHToMain" | "splitMain"): FunctionFragment; encodeFunctionData(functionFragment: "sendERC20ToMain", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "sendETHToMain", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "splitMain", values?: undefined): string; decodeFunctionResult(functionFragment: "sendERC20ToMain", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendETHToMain", data: BytesLike): Result; decodeFunctionResult(functionFragment: "splitMain", data: BytesLike): Result; events: { "ReceiveETH(address,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "ReceiveETH"): EventFragment; } export interface ReceiveETHEventObject { split: string; amount: BigNumber; } export declare type ReceiveETHEvent = TypedEvent<[ string, BigNumber ], ReceiveETHEventObject>; export declare type ReceiveETHEventFilter = TypedEventFilter; export interface SplitWallet extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: SplitWalletInterface; 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: { sendERC20ToMain(token: PromiseOrValue, amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; sendETHToMain(amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; splitMain(overrides?: CallOverrides): Promise<[string]>; }; sendERC20ToMain(token: PromiseOrValue, amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; sendETHToMain(amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; splitMain(overrides?: CallOverrides): Promise; callStatic: { sendERC20ToMain(token: PromiseOrValue, amount: PromiseOrValue, overrides?: CallOverrides): Promise; sendETHToMain(amount: PromiseOrValue, overrides?: CallOverrides): Promise; splitMain(overrides?: CallOverrides): Promise; }; filters: { "ReceiveETH(address,uint256)"(split?: PromiseOrValue | null, amount?: null): ReceiveETHEventFilter; ReceiveETH(split?: PromiseOrValue | null, amount?: null): ReceiveETHEventFilter; }; estimateGas: { sendERC20ToMain(token: PromiseOrValue, amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; sendETHToMain(amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; splitMain(overrides?: CallOverrides): Promise; }; populateTransaction: { sendERC20ToMain(token: PromiseOrValue, amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; sendETHToMain(amount: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; splitMain(overrides?: CallOverrides): Promise; }; }