UNPKG

randomness-js

Version:

A library for consuming, verifying and using randomness from the dcipher network

112 lines (111 loc) 6.71 kB
import type { BaseContract, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "./common"; export declare namespace StdInvariant { type FuzzSelectorStruct = { addr: AddressLike; selectors: BytesLike[]; }; type FuzzSelectorStructOutput = [addr: string, selectors: string[]] & { addr: string; selectors: string[]; }; type FuzzArtifactSelectorStruct = { artifact: string; selectors: BytesLike[]; }; type FuzzArtifactSelectorStructOutput = [ artifact: string, selectors: string[] ] & { artifact: string; selectors: string[]; }; type FuzzInterfaceStruct = { addr: AddressLike; artifacts: string[]; }; type FuzzInterfaceStructOutput = [ addr: string, artifacts: string[] ] & { addr: string; artifacts: string[]; }; } export interface StdInvariantInterface extends Interface { getFunction(nameOrSignature: "excludeArtifacts" | "excludeContracts" | "excludeSelectors" | "excludeSenders" | "targetArtifactSelectors" | "targetArtifacts" | "targetContracts" | "targetInterfaces" | "targetSelectors" | "targetSenders"): FunctionFragment; encodeFunctionData(functionFragment: "excludeArtifacts", values?: undefined): string; encodeFunctionData(functionFragment: "excludeContracts", values?: undefined): string; encodeFunctionData(functionFragment: "excludeSelectors", 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: "targetInterfaces", 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: "excludeSelectors", 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: "targetInterfaces", data: BytesLike): Result; decodeFunctionResult(functionFragment: "targetSelectors", data: BytesLike): Result; decodeFunctionResult(functionFragment: "targetSenders", data: BytesLike): Result; } export interface StdInvariant extends BaseContract { connect(runner?: ContractRunner | null): StdInvariant; waitForDeployment(): Promise<this>; interface: StdInvariantInterface; queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>; queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>; on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>; on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>; once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>; once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>; listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>; listeners(eventName?: string): Promise<Array<Listener>>; removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>; excludeArtifacts: TypedContractMethod<[], [string[]], "view">; excludeContracts: TypedContractMethod<[], [string[]], "view">; excludeSelectors: TypedContractMethod<[ ], [ StdInvariant.FuzzSelectorStructOutput[] ], "view">; excludeSenders: TypedContractMethod<[], [string[]], "view">; targetArtifactSelectors: TypedContractMethod<[ ], [ StdInvariant.FuzzArtifactSelectorStructOutput[] ], "view">; targetArtifacts: TypedContractMethod<[], [string[]], "view">; targetContracts: TypedContractMethod<[], [string[]], "view">; targetInterfaces: TypedContractMethod<[ ], [ StdInvariant.FuzzInterfaceStructOutput[] ], "view">; targetSelectors: TypedContractMethod<[ ], [ StdInvariant.FuzzSelectorStructOutput[] ], "view">; targetSenders: TypedContractMethod<[], [string[]], "view">; getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T; getFunction(nameOrSignature: "excludeArtifacts"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "excludeContracts"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "excludeSelectors"): TypedContractMethod<[], [StdInvariant.FuzzSelectorStructOutput[]], "view">; getFunction(nameOrSignature: "excludeSenders"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "targetArtifactSelectors"): TypedContractMethod<[ ], [ StdInvariant.FuzzArtifactSelectorStructOutput[] ], "view">; getFunction(nameOrSignature: "targetArtifacts"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "targetContracts"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "targetInterfaces"): TypedContractMethod<[ ], [ StdInvariant.FuzzInterfaceStructOutput[] ], "view">; getFunction(nameOrSignature: "targetSelectors"): TypedContractMethod<[], [StdInvariant.FuzzSelectorStructOutput[]], "view">; getFunction(nameOrSignature: "targetSenders"): TypedContractMethod<[], [string[]], "view">; filters: {}; }