UNPKG

@q-dev/q-js-sdk

Version:

Typescript Library to interact with Q System Contracts

56 lines (55 loc) 2.48 kB
import type { ContractTransaction, BigNumberish } from 'ethers'; import { ERC20 } from '../ethers-contracts/ERC20'; import { QVault } from '../ethers-contracts/QVault'; import { SystemContractInstance } from './SystemContractInstance'; import { QNonPayableTx } from '../types'; /** * 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 | QVault> extends SystemContractInstance<T> { /** * [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: BigNumberish, txOptions?: QNonPayableTx): Promise<ContractTransaction>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#approve) */ approve(spender: string, amount: BigNumberish, txOptions?: QNonPayableTx): Promise<ContractTransaction>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#transferfrom) */ transferFrom(owner: string, receiver: string, amount: BigNumberish, txOptions?: QNonPayableTx): Promise<ContractTransaction>; /** * [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: BigNumberish, txOptions?: QNonPayableTx): Promise<ContractTransaction>; /** * [External documentation](@system-contracts-repo/@network/ERC20/#decreaseallowance) */ decreaseAllowance(spender: string, subtractedValue: BigNumberish, txOptions?: QNonPayableTx): Promise<ContractTransaction>; }