ontology-ts-sdk
Version:
Comprehensive TypeScript library for the Ontology blockchain.
78 lines (77 loc) • 2.85 kB
TypeScript
import BigNumber from 'bignumber.js';
import { Transaction } from '../../transaction/transaction';
import { Parameter } from '../abi/parameter';
import { Address } from './../../crypto/address';
export declare const formatBigNumParameter: (amount: string | BigNumber) => Parameter;
export declare class Oep4State {
from: string;
to: string;
amount: string;
constructor(from: Address, to: Address, amount: string);
}
/**
* Transaction builder for oep-4 contracts
*/
export declare class Oep4TxBuilder {
contractAddr: Address;
constructor(contractAddr: Address);
/**
* Init the oep-4 smart contract
* @param gasPrice Gas price
* @param gasLimit Gas limit
* @param payer Payer's address to pay for gas
*/
init(gasPrice: string, gasLimit: string, payer?: Address): Transaction;
/**
* Make transaction for transfer
* @param from Sender's address
* @param to Receiver's address
* @param amount Amountof asset to transfer
* @param gasPrice Gas price
* @param gasLimit Gas limit
* @param payer Payer's address to pay for gas
*/
makeTransferTx(from: Address, to: Address, amount: string | BigNumber, gasPrice: string, gasLimit: string, payer: Address): Transaction;
/**
* Make transaction for multi transfer.
* The transaction needs signatures of each sender in states and the signature of the payer.
* @param states Array of State(sender, receiver, amount)
* @param gasPrice Gas price
* @param gasLimit Gas limit
* @param payer Payer to pay for gas
*/
makeTransferMultiTx(states: Oep4State[], gasPrice: string, gasLimit: string, payer: Address): Transaction;
/**
* Make transaction for approve
* @param owner Owner's address
* @param spender Spender's address
* @param amount Amount
* @param gasPrice Gas price
* @param gasLimit Gas limit
* @param payer Payer to pay for gas
*/
makeApproveTx(owner: Address, spender: Address, amount: string, gasPrice: string, gasLimit: string, payer: Address): Transaction;
makeTransferFromTx(sender: Address, from: Address, to: Address, amount: string, gasPrice: string, gasLimit: string, payer: Address): Transaction;
makeQueryAllowanceTx(owner: Address, spender: Address): Transaction;
/**
* Query the balance
* @param address Address to query balance
*/
queryBalanceOf(address: Address): Transaction;
/**
* Query the total supply of oep-4 contract
*/
queryTotalSupply(): Transaction;
/**
* Query the total supply of oep-4 contract
*/
queryDecimals(): Transaction;
/**
* Query the total supply of oep-4 contract
*/
querySymbol(): Transaction;
/**
* Query the total supply of oep-4 contract
*/
queryName(): Transaction;
}