evm-blockchain-tools
Version:
This is a collection of resuseable tools to support development for EVM-powered blockchains
24 lines (23 loc) • 1.25 kB
TypeScript
import { Signer } from "ethers";
import { ContractModel } from "./contract-model";
import { ContractTxOption, Waitable } from "../common/interfaces";
export interface IERC20Model extends ContractModel {
name(): Promise<string>;
symbol(): Promise<string>;
decimals(): Promise<string>;
balanceOf(address: string): Promise<string>;
mint(address: string, amount: string, options?: ContractTxOption): Promise<Waitable>;
burn(amount: string, options?: ContractTxOption): Promise<Waitable>;
burnFrom(address: string, amount: string, options?: ContractTxOption): Promise<Waitable>;
}
export declare class ERC20ContractModel extends ContractModel implements IERC20Model {
constructor(address: string, abi: any, signer: Signer);
transfer(address: string, amount: string, options?: ContractTxOption): Promise<Waitable>;
balanceOf(address: string): Promise<string>;
name(): Promise<string>;
symbol(): Promise<string>;
decimals(): Promise<string>;
mint(address: string, amount: string, options?: ContractTxOption): Promise<Waitable>;
burn(amount: string, options?: ContractTxOption): Promise<Waitable>;
burnFrom(address: string, amount: string, options?: ContractTxOption): Promise<Waitable>;
}