UNPKG

randomness-js

Version:

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

67 lines (66 loc) 3.4 kB
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "./common"; export interface RandomnessInterface extends Interface { getFunction(nameOrSignature: "selectArrayIndices" | "verify"): FunctionFragment; encodeFunctionData(functionFragment: "selectArrayIndices", values: [BigNumberish, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "verify", values: [ AddressLike, AddressLike, BytesLike, BigNumberish, AddressLike, string ]): string; decodeFunctionResult(functionFragment: "selectArrayIndices", data: BytesLike): Result; decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; } export interface Randomness extends BaseContract { connect(runner?: ContractRunner | null): Randomness; waitForDeployment(): Promise<this>; interface: RandomnessInterface; 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>; selectArrayIndices: TypedContractMethod<[ lengthOfArray: BigNumberish, countToDraw: BigNumberish, randomBytes: BytesLike ], [ bigint[] ], "view">; verify: TypedContractMethod<[ randomnessContract: AddressLike, signatureContract: AddressLike, signature: BytesLike, requestID: BigNumberish, requester: AddressLike, schemeID: string ], [ boolean ], "view">; getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T; getFunction(nameOrSignature: "selectArrayIndices"): TypedContractMethod<[ lengthOfArray: BigNumberish, countToDraw: BigNumberish, randomBytes: BytesLike ], [ bigint[] ], "view">; getFunction(nameOrSignature: "verify"): TypedContractMethod<[ randomnessContract: AddressLike, signatureContract: AddressLike, signature: BytesLike, requestID: BigNumberish, requester: AddressLike, schemeID: string ], [ boolean ], "view">; filters: {}; }