/* 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 BillingInterface extends ethers.utils.Interface { functions: { "balanceOf(address)": FunctionFragment; "billFee(address,bytes)": FunctionFragment; "billingTypesHash()": FunctionFragment; "hashBillingTypes(address,bytes32,bytes,uint256,uint64)": FunctionFragment; "hashTypedDataV4ForBills(address,bytes32,bytes,uint256,uint64)": FunctionFragment; "initialize(address,string,string,string,address)": FunctionFragment; "nonceExists(address,bytes32,uint64)": FunctionFragment; "owner()": FunctionFragment; "ownerWithdrawERC20(address,address,uint256)": FunctionFragment; "ownerWithdrawNative(address,uint256)": FunctionFragment; "renounceOwnership()": FunctionFragment; "router()": FunctionFragment; "spend(address,bytes32,bytes,uint256,uint64,bytes)": FunctionFragment; "transferOwnership(address)": FunctionFragment; }; encodeFunctionData(functionFragment: "balanceOf", values: [string]): string; encodeFunctionData( functionFragment: "billFee", values: [string, BytesLike] ): string; encodeFunctionData( functionFragment: "billingTypesHash", values?: undefined ): string; encodeFunctionData( functionFragment: "hashBillingTypes", values: [string, BytesLike, BytesLike, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "hashTypedDataV4ForBills", values: [string, BytesLike, BytesLike, BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "initialize", values: [string, string, string, string, string] ): string; encodeFunctionData( functionFragment: "nonceExists", values: [string, BytesLike, BigNumberish] ): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData( functionFragment: "ownerWithdrawERC20", values: [string, string, BigNumberish] ): string; encodeFunctionData( functionFragment: "ownerWithdrawNative", values: [string, BigNumberish] ): string; encodeFunctionData( functionFragment: "renounceOwnership", values?: undefined ): string; encodeFunctionData(functionFragment: "router", values?: undefined): string; encodeFunctionData( functionFragment: "spend", values: [ string, BytesLike, BytesLike, BigNumberish, BigNumberish, BytesLike ] ): string; encodeFunctionData( functionFragment: "transferOwnership", values: [string] ): string; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "billFee", data: BytesLike): Result; decodeFunctionResult( functionFragment: "billingTypesHash", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "hashBillingTypes", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "hashTypedDataV4ForBills", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult( functionFragment: "nonceExists", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult( functionFragment: "ownerWithdrawERC20", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "ownerWithdrawNative", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "renounceOwnership", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "router", data: BytesLike): Result; decodeFunctionResult(functionFragment: "spend", data: BytesLike): Result; decodeFunctionResult( functionFragment: "transferOwnership", data: BytesLike ): Result; events: { "Billing(address,bytes32,bytes,uint256,uint64)": EventFragment; "BillingTypesHashUpdated(bytes32)": EventFragment; "Initialized(uint8)": EventFragment; "NativeWithdrawal(address,uint256)": EventFragment; "OwnershipTransferred(address,address)": EventFragment; "RouterUpdated(address)": EventFragment; "Withdrawal(address,address,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Billing"): EventFragment; getEvent(nameOrSignatureOrTopic: "BillingTypesHashUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; getEvent(nameOrSignatureOrTopic: "NativeWithdrawal"): EventFragment; getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; getEvent(nameOrSignatureOrTopic: "RouterUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "Withdrawal"): 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 type InitializedEvent = TypedEvent<[number] & { version: number }>; export type NativeWithdrawalEvent = TypedEvent< [string, BigNumber] & { to: string; value: BigNumber } >; export type OwnershipTransferredEvent = TypedEvent< [string, string] & { previousOwner: string; newOwner: string } >; export type RouterUpdatedEvent = TypedEvent<[string] & { router: string }>; export type WithdrawalEvent = TypedEvent< [string, string, BigNumber] & { token: string; to: string; value: BigNumber } >; export class Billing 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: BillingInterface; functions: { balanceOf( provider: string, overrides?: CallOverrides ): Promise<[BigNumber]>; billFee( provider: string, data: BytesLike, overrides?: CallOverrides ): Promise<[BigNumber] & { value: BigNumber }>; billingTypesHash(overrides?: CallOverrides): Promise<[string]>; hashBillingTypes( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise<[string]>; hashTypedDataV4ForBills( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise<[string]>; initialize( owner: string, name: string, version: string, billingTypes: string, router: string, overrides?: Overrides & { from?: string | Promise } ): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise<[boolean]>; owner(overrides?: CallOverrides): Promise<[string]>; ownerWithdrawERC20( token: string, to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; ownerWithdrawNative( to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; renounceOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; router(overrides?: CallOverrides): Promise<[string]>; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, overrides?: Overrides & { from?: string | Promise } ): Promise; }; balanceOf(provider: string, overrides?: CallOverrides): Promise; billFee( provider: string, data: BytesLike, overrides?: CallOverrides ): Promise; billingTypesHash(overrides?: CallOverrides): Promise; hashBillingTypes( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; hashTypedDataV4ForBills( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; initialize( owner: string, name: string, version: string, billingTypes: string, router: string, overrides?: Overrides & { from?: string | Promise } ): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; owner(overrides?: CallOverrides): Promise; ownerWithdrawERC20( token: string, to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; ownerWithdrawNative( to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; renounceOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; router(overrides?: CallOverrides): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, overrides?: Overrides & { from?: string | Promise } ): Promise; callStatic: { balanceOf(provider: string, overrides?: CallOverrides): Promise; billFee( provider: string, data: BytesLike, overrides?: CallOverrides ): Promise; billingTypesHash(overrides?: CallOverrides): Promise; hashBillingTypes( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; hashTypedDataV4ForBills( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; initialize( owner: string, name: string, version: string, billingTypes: string, router: string, overrides?: CallOverrides ): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; owner(overrides?: CallOverrides): Promise; ownerWithdrawERC20( token: string, to: string, value: BigNumberish, overrides?: CallOverrides ): Promise; ownerWithdrawNative( to: string, value: BigNumberish, overrides?: CallOverrides ): Promise; renounceOwnership(overrides?: CallOverrides): Promise; router(overrides?: CallOverrides): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: CallOverrides ): Promise; transferOwnership( newOwner: string, 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 }>; "Initialized(uint8)"( version?: null ): TypedEventFilter<[number], { version: number }>; Initialized( version?: null ): TypedEventFilter<[number], { version: number }>; "NativeWithdrawal(address,uint256)"( to?: null, value?: null ): TypedEventFilter<[string, BigNumber], { to: string; value: BigNumber }>; NativeWithdrawal( to?: null, value?: null ): TypedEventFilter<[string, BigNumber], { to: string; value: BigNumber }>; "OwnershipTransferred(address,address)"( previousOwner?: string | null, newOwner?: string | null ): TypedEventFilter< [string, string], { previousOwner: string; newOwner: string } >; OwnershipTransferred( previousOwner?: string | null, newOwner?: string | null ): TypedEventFilter< [string, string], { previousOwner: string; newOwner: string } >; "RouterUpdated(address)"( router?: null ): TypedEventFilter<[string], { router: string }>; RouterUpdated( router?: null ): TypedEventFilter<[string], { router: string }>; "Withdrawal(address,address,uint256)"( token?: null, to?: null, value?: null ): TypedEventFilter< [string, string, BigNumber], { token: string; to: string; value: BigNumber } >; Withdrawal( token?: null, to?: null, value?: null ): TypedEventFilter< [string, string, BigNumber], { token: string; to: string; value: BigNumber } >; }; estimateGas: { balanceOf(provider: string, overrides?: CallOverrides): Promise; billFee( provider: string, data: BytesLike, overrides?: CallOverrides ): Promise; billingTypesHash(overrides?: CallOverrides): Promise; hashBillingTypes( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; hashTypedDataV4ForBills( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; initialize( owner: string, name: string, version: string, billingTypes: string, router: string, overrides?: Overrides & { from?: string | Promise } ): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; owner(overrides?: CallOverrides): Promise; ownerWithdrawERC20( token: string, to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; ownerWithdrawNative( to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; renounceOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; router(overrides?: CallOverrides): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, overrides?: Overrides & { from?: string | Promise } ): Promise; }; populateTransaction: { balanceOf( provider: string, overrides?: CallOverrides ): Promise; billFee( provider: string, data: BytesLike, overrides?: CallOverrides ): Promise; billingTypesHash(overrides?: CallOverrides): Promise; hashBillingTypes( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; hashTypedDataV4ForBills( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, overrides?: CallOverrides ): Promise; initialize( owner: string, name: string, version: string, billingTypes: string, router: string, overrides?: Overrides & { from?: string | Promise } ): Promise; nonceExists( provider: string, account: BytesLike, nonce: BigNumberish, overrides?: CallOverrides ): Promise; owner(overrides?: CallOverrides): Promise; ownerWithdrawERC20( token: string, to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; ownerWithdrawNative( to: string, value: BigNumberish, overrides?: Overrides & { from?: string | Promise } ): Promise; renounceOwnership( overrides?: Overrides & { from?: string | Promise } ): Promise; router(overrides?: CallOverrides): Promise; spend( provider: string, account: BytesLike, bills: BytesLike, timeout: BigNumberish, nonce: BigNumberish, signature: BytesLike, overrides?: Overrides & { from?: string | Promise } ): Promise; transferOwnership( newOwner: string, overrides?: Overrides & { from?: string | Promise } ): Promise; }; }