/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, BaseContract, ContractTransaction, Overrides, CallOverrides, } from "ethers"; import { BytesLike } from "@ethersproject/bytes"; import { Listener, Provider } from "@ethersproject/providers"; import { FunctionFragment, EventFragment, Result } from "@ethersproject/abi"; import type { TypedEventFilter, TypedEvent, TypedListener } from "./common"; interface IBillingInterface extends ethers.utils.Interface { functions: { "balanceOf(address)": FunctionFragment; "billingTypesHash()": FunctionFragment; "nonceExists(address,bytes32,uint64)": FunctionFragment; "spend(address,bytes32,bytes,uint256,uint64,bytes)": FunctionFragment; }; encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; encodeFunctionData( functionFragment: "billingTypesHash", values?: undefined ): string; encodeFunctionData( functionFragment: "nonceExists", values: [string, BytesLike, BigNumberish] ): string; encodeFunctionData( functionFragment: "spend", values: [ string, BytesLike, BytesLike, BigNumberish, BigNumberish, BytesLike ] ): string; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult( functionFragment: "billingTypesHash", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "nonceExists", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "spend", data: BytesLike): Result; events: { "Billing(address,bytes32,bytes,uint256,uint64)": EventFragment; "BillingTypesHashUpdated(bytes32)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Billing"): EventFragment; getEvent(nameOrSignatureOrTopic: "BillingTypesHashUpdated"): EventFragment; } export type BillingEvent = TypedEvent< [string, string, string, BigNumber, BigNumber] & { provider: string; account: string; bills: string; amount: BigNumber; nonce: BigNumber; } >; export type BillingTypesHashUpdatedEvent = TypedEvent< [string] & { hash: string } >; export class IBilling extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; listeners, EventArgsObject>( eventFilter?: TypedEventFilter ): Array>; off, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; on, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; once, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeListener, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeAllListeners, EventArgsObject>( eventFilter: TypedEventFilter ): this; listeners(eventName?: string): Array; off(eventName: string, listener: Listener): this; on(eventName: string, listener: Listener): this; once(eventName: string, listener: Listener): this; removeListener(eventName: string, listener: Listener): this; removeAllListeners(eventName?: string): this; queryFilter, EventArgsObject>( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise>>; interface: IBillingInterface; functions: { balanceOf( provider: string, overrides?: CallOverrides ): Promise<[BigNumber]>; billingTypesHash(overrides?: CallOverrides): Promise<[string]>; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise<[boolean]>; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; }; balanceOf(provider: string, overrides?: CallOverrides): Promise; billingTypesHash(overrides?: CallOverrides): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; callStatic: { balanceOf(provider: string, overrides?: CallOverrides): Promise; billingTypesHash(overrides?: CallOverrides): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: CallOverrides ): Promise; }; filters: { "Billing(address,bytes32,bytes,uint256,uint64)"( provider?: null, account?: null, bills?: null, amount?: null, nonce?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber], { provider: string; account: string; bills: string; amount: BigNumber; nonce: BigNumber; } >; Billing( provider?: null, account?: null, bills?: null, amount?: null, nonce?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber], { provider: string; account: string; bills: string; amount: BigNumber; nonce: BigNumber; } >; "BillingTypesHashUpdated(bytes32)"( hash?: null ): TypedEventFilter<[string], { hash: string }>; BillingTypesHashUpdated( hash?: null ): TypedEventFilter<[string], { hash: string }>; }; estimateGas: { balanceOf(provider: string, overrides?: CallOverrides): Promise; billingTypesHash(overrides?: CallOverrides): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; }; populateTransaction: { balanceOf( provider: string, overrides?: CallOverrides ): Promise; billingTypesHash(overrides?: CallOverrides): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; }; }