import { IWallet, TransactionReceipt, Event } from '../wallet'; import { Contract } from '../contract'; import { BigNumber } from 'bignumber.js'; export declare class Erc20 extends Contract { private _decimals; constructor(wallet: IWallet, address?: string, decimals?: number); deploy(params: { name: string; symbol: string; minter?: string; cap?: number | BigNumber; }): Promise; parseApprovalEvent(receipt: TransactionReceipt): Erc20.ApprovalEvent[]; decodeApprovalEvent(event: Event): Erc20.ApprovalEvent; parseTransferEvent(receipt: TransactionReceipt): Erc20.TransferEvent[]; decodeTransferEvent(event: Event): Erc20.TransferEvent; allowance(params: { owner: string; spender: string; }): Promise; approve(params: { spender: string; amount: number | BigNumber; }): Promise; get balance(): Promise; balanceOf(address: string): Promise; get cap(): Promise; get decimals(): Promise; mint(params: { address: string; amount: number | BigNumber; }): Promise; minter(): Promise; get name(): Promise; get symbol(): Promise; get totalSupply(): Promise; transfer(params: { address: string; amount: number | BigNumber; }): Promise; } export declare module Erc20 { interface ApprovalEvent { owner: string; spender: string; value: BigNumber; _event: Event; } interface TransferEvent { from: string; to: string; value: BigNumber; _event: Event; } }