import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, 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 interface BsvmInterface extends utils.Interface { functions: { "addr(uint256)": FunctionFragment; "deal(address,uint256)": FunctionFragment; "prank(address,address)": FunctionFragment; "sign(uint256,bytes32)": FunctionFragment; "startPrank(address)": FunctionFragment; "startPrank(address,address)": FunctionFragment; "stopPrank()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "addr" | "deal" | "prank" | "sign" | "startPrank(address)" | "startPrank(address,address)" | "stopPrank"): FunctionFragment; encodeFunctionData(functionFragment: "addr", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "deal", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "prank", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "sign", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "startPrank(address)", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "startPrank(address,address)", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "stopPrank", values?: undefined): string; decodeFunctionResult(functionFragment: "addr", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "prank", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sign", data: BytesLike): Result; decodeFunctionResult(functionFragment: "startPrank(address)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "startPrank(address,address)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stopPrank", data: BytesLike): Result; events: {}; } export interface Bsvm extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: BsvmInterface; 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: { addr(privateKey: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deal(who: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; prank(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; sign(privateKey: PromiseOrValue, digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address)"(sender: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address,address)"(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; stopPrank(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; addr(privateKey: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deal(who: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; prank(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; sign(privateKey: PromiseOrValue, digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address)"(sender: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address,address)"(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; stopPrank(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { addr(privateKey: PromiseOrValue, overrides?: CallOverrides): Promise; deal(who: PromiseOrValue, amount: PromiseOrValue, overrides?: CallOverrides): Promise; prank(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: CallOverrides): Promise; sign(privateKey: PromiseOrValue, digest: PromiseOrValue, overrides?: CallOverrides): Promise<[number, string, string] & { v: number; r: string; s: string; }>; "startPrank(address)"(sender: PromiseOrValue, overrides?: CallOverrides): Promise; "startPrank(address,address)"(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: CallOverrides): Promise; stopPrank(overrides?: CallOverrides): Promise; }; filters: {}; estimateGas: { addr(privateKey: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deal(who: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; prank(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; sign(privateKey: PromiseOrValue, digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address)"(sender: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address,address)"(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; stopPrank(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { addr(privateKey: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; deal(who: PromiseOrValue, amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; prank(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; sign(privateKey: PromiseOrValue, digest: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address)"(sender: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; "startPrank(address,address)"(sender: PromiseOrValue, origin: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; stopPrank(overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }