UNPKG

@ardier16/q-js-sdk

Version:

Typescript Library to interact with Q System Contracts

59 lines (58 loc) 2.57 kB
import { ERC20 } from '../web3-contracts/ERC20'; import { BaseContractInstance } from './BaseContractInstance'; import BN from 'bn.js'; import Web3 from 'web3'; import { QNonPayableTx } from '../types'; import { TransactionReceipt } from 'web3-eth'; import { AbiItem } from 'web3-utils'; /** * ERC20 helper instance to interact with ERC20 contracts. * See [onchain documentation](@system-contracts-repo/@network/ERC20/) for more details. */ export declare class ERC20HelperInstance<T extends ERC20> extends BaseContractInstance<T> { constructor(web3: Web3, abi: AbiItem[], address: string); /** * [External documentation](@system-contracts-repo/@network/ERC20/#name) */ name(): Promise<string>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#symbol) */ symbol(): Promise<string>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#decimals) */ decimals(): Promise<string>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#totalsupply) */ totalSupply(): Promise<string>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#balanceof) */ balanceOf(userAddress: string): Promise<string>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#transfer) */ transfer(receiver: string, amount: number | string | BN, txOptions?: QNonPayableTx): Promise<TransactionReceipt>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#approve) */ approve(spender: string, amount: number | string | BN, txOptions?: QNonPayableTx): Promise<TransactionReceipt>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#transferfrom) */ transferFrom(owner: string, receiver: string, amount: number | string | BN, txOptions?: QNonPayableTx): Promise<TransactionReceipt>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#allowance) */ allowance(tokenOwner: string, spender: string): Promise<string>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#increaseallowance) */ increaseAllowance(spender: string, addedValue: number | string | BN, txOptions?: QNonPayableTx): Promise<TransactionReceipt>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#decreaseallowance) */ decreaseAllowance(spender: string, subtractedValue: number | string | BN, txOptions?: QNonPayableTx): Promise<TransactionReceipt>; }