import type { BaseContract, BigNumber, 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 StdInvariant { type FuzzSelectorStruct = { addr: PromiseOrValue; selectors: PromiseOrValue[]; }; type FuzzSelectorStructOutput = [string, string[]] & { addr: string; selectors: string[]; }; } export interface StdInvariantInterface extends utils.Interface { functions: { "excludeArtifacts()": FunctionFragment; "excludeContracts()": FunctionFragment; "excludeSenders()": FunctionFragment; "targetArtifactSelectors()": FunctionFragment; "targetArtifacts()": FunctionFragment; "targetContracts()": FunctionFragment; "targetSelectors()": FunctionFragment; "targetSenders()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "excludeArtifacts" | "excludeContracts" | "excludeSenders" | "targetArtifactSelectors" | "targetArtifacts" | "targetContracts" | "targetSelectors" | "targetSenders"): FunctionFragment; encodeFunctionData(functionFragment: "excludeArtifacts", values?: undefined): string; encodeFunctionData(functionFragment: "excludeContracts", values?: undefined): string; encodeFunctionData(functionFragment: "excludeSenders", values?: undefined): string; encodeFunctionData(functionFragment: "targetArtifactSelectors", values?: undefined): string; encodeFunctionData(functionFragment: "targetArtifacts", values?: undefined): string; encodeFunctionData(functionFragment: "targetContracts", values?: undefined): string; encodeFunctionData(functionFragment: "targetSelectors", values?: undefined): string; encodeFunctionData(functionFragment: "targetSenders", values?: undefined): string; decodeFunctionResult(functionFragment: "excludeArtifacts", data: BytesLike): Result; decodeFunctionResult(functionFragment: "excludeContracts", data: BytesLike): Result; decodeFunctionResult(functionFragment: "excludeSenders", data: BytesLike): Result; decodeFunctionResult(functionFragment: "targetArtifactSelectors", data: BytesLike): Result; decodeFunctionResult(functionFragment: "targetArtifacts", data: BytesLike): Result; decodeFunctionResult(functionFragment: "targetContracts", data: BytesLike): Result; decodeFunctionResult(functionFragment: "targetSelectors", data: BytesLike): Result; decodeFunctionResult(functionFragment: "targetSenders", data: BytesLike): Result; events: {}; } export interface StdInvariant extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: StdInvariantInterface; 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: { excludeArtifacts(overrides?: CallOverrides): Promise<[string[]] & { excludedArtifacts_: string[]; }>; excludeContracts(overrides?: CallOverrides): Promise<[string[]] & { excludedContracts_: string[]; }>; excludeSenders(overrides?: CallOverrides): Promise<[string[]] & { excludedSenders_: string[]; }>; targetArtifactSelectors(overrides?: CallOverrides): Promise<[ StdInvariant.FuzzSelectorStructOutput[] ] & { targetedArtifactSelectors_: StdInvariant.FuzzSelectorStructOutput[]; }>; targetArtifacts(overrides?: CallOverrides): Promise<[string[]] & { targetedArtifacts_: string[]; }>; targetContracts(overrides?: CallOverrides): Promise<[string[]] & { targetedContracts_: string[]; }>; targetSelectors(overrides?: CallOverrides): Promise<[ StdInvariant.FuzzSelectorStructOutput[] ] & { targetedSelectors_: StdInvariant.FuzzSelectorStructOutput[]; }>; targetSenders(overrides?: CallOverrides): Promise<[string[]] & { targetedSenders_: string[]; }>; }; excludeArtifacts(overrides?: CallOverrides): Promise; excludeContracts(overrides?: CallOverrides): Promise; excludeSenders(overrides?: CallOverrides): Promise; targetArtifactSelectors(overrides?: CallOverrides): Promise; targetArtifacts(overrides?: CallOverrides): Promise; targetContracts(overrides?: CallOverrides): Promise; targetSelectors(overrides?: CallOverrides): Promise; targetSenders(overrides?: CallOverrides): Promise; callStatic: { excludeArtifacts(overrides?: CallOverrides): Promise; excludeContracts(overrides?: CallOverrides): Promise; excludeSenders(overrides?: CallOverrides): Promise; targetArtifactSelectors(overrides?: CallOverrides): Promise; targetArtifacts(overrides?: CallOverrides): Promise; targetContracts(overrides?: CallOverrides): Promise; targetSelectors(overrides?: CallOverrides): Promise; targetSenders(overrides?: CallOverrides): Promise; }; filters: {}; estimateGas: { excludeArtifacts(overrides?: CallOverrides): Promise; excludeContracts(overrides?: CallOverrides): Promise; excludeSenders(overrides?: CallOverrides): Promise; targetArtifactSelectors(overrides?: CallOverrides): Promise; targetArtifacts(overrides?: CallOverrides): Promise; targetContracts(overrides?: CallOverrides): Promise; targetSelectors(overrides?: CallOverrides): Promise; targetSenders(overrides?: CallOverrides): Promise; }; populateTransaction: { excludeArtifacts(overrides?: CallOverrides): Promise; excludeContracts(overrides?: CallOverrides): Promise; excludeSenders(overrides?: CallOverrides): Promise; targetArtifactSelectors(overrides?: CallOverrides): Promise; targetArtifacts(overrides?: CallOverrides): Promise; targetContracts(overrides?: CallOverrides): Promise; targetSelectors(overrides?: CallOverrides): Promise; targetSenders(overrides?: CallOverrides): Promise; }; }