import { NgContract, FilterParam, TypedFilter } from "../../contract"; import { BigNumber, Overrides, CallOverrides, Signer, ContractTransaction, BigNumberish } from "ethers"; import { Provider } from "@ethersproject/providers"; import { NgZone } from "@angular/core"; import { ERC20Metadata } from "./types"; export interface BaseERC20Events { events: { Approval: (owner: string, spender: string, value: BigNumber) => void; Transfer: (from: string, to: string, value: BigNumber) => void; }; filters: { Approval: (owner?: FilterParam, spender?: FilterParam) => TypedFilter<"Approval">; Transfer: (from?: FilterParam, to?: FilterParam) => TypedFilter<"Transfer">; }; queries: { Approval: { owner: string; spender: string; value: BigNumber; }; Transfer: { from: string; to: string; value: BigNumber; }; }; } export declare class ERC20 extends NgContract { private metadata?; allowance: (owner: string, spender: string, overrides?: CallOverrides) => Promise; balanceOf: (account: string, overrides?: CallOverrides) => Promise; decimals: (overrides?: CallOverrides) => Promise; name: (overrides?: CallOverrides) => Promise; symbol: (overrides?: CallOverrides) => Promise; totalSupply: (overrides?: CallOverrides) => Promise; approve: (spender: string, amount: BigNumberish, overrides?: Overrides) => Promise; decreaseAllowance: (spender: string, subtractedValue: BigNumberish, overrides?: Overrides) => Promise; increaseAllowance: (spender: string, addedValue: BigNumberish, overrides?: Overrides) => Promise; transfer: (recipient: string, amount: BigNumberish, overrides?: Overrides) => Promise; transferFrom: (sender: string, recipient: string, amount: BigNumberish, overrides?: Overrides) => Promise; constructor(address: string, signer: Signer | Provider, ngZone: NgZone); exist(): Promise; /** Listen on the changes of a balance of an address */ balanceChanges(address: string): import("rxjs").Observable; getMetadata(): Promise; } export declare const ERC20_abi: ({ inputs: never[]; stateMutability: string; type: string; anonymous?: undefined; name?: undefined; outputs?: undefined; } | { anonymous: boolean; inputs: { indexed: boolean; internalType: string; name: string; type: string; }[]; name: string; type: string; stateMutability?: undefined; outputs?: undefined; } | { inputs: { internalType: string; name: string; type: string; }[]; name: string; outputs: { internalType: string; name: string; type: string; }[]; stateMutability: string; type: string; anonymous?: undefined; })[];