UNPKG

slpjs

Version:

Simple Ledger Protocol (SLP) JavaScript Library

51 lines (50 loc) 3.9 kB
/// <reference types="node" /> import BigNumber from "bignumber.js"; import { BITBOX } from "bitbox-sdk"; import { AddressDetailsResult, AddressUtxoResult } from "bitcoin-com-rest"; import { IGrpcClient, SlpRequiredBurn } from "grpc-bchrpc"; import { INetwork, logger, SlpAddressUtxoResult, SlpBalancesResult, SlpTransactionDetails, SlpTxnDetailsResult } from "../index"; import { Slp, SlpValidator } from "./slp"; import { TransactionHelpers } from "./transactionhelpers"; export declare class BchdNetwork implements INetwork { BITBOX: BITBOX; slp: Slp; validator: SlpValidator; txnHelpers: TransactionHelpers; logger: logger; client: IGrpcClient; constructor({ BITBOX, validator, logger, client }: { BITBOX: BITBOX; client: IGrpcClient; validator: SlpValidator; logger?: logger; }); getTokenInformation(txid: string, decimalConversion?: boolean): Promise<SlpTransactionDetails>; getTransactionDetails(txid: string): Promise<SlpTxnDetailsResult | undefined>; getUtxos(address: string): Promise<AddressUtxoResult>; getAllSlpBalancesAndUtxos(address: string | string[]): Promise<SlpBalancesResult | Array<{ address: string; result: SlpBalancesResult; }>>; simpleTokenSend(tokenId: string, sendAmounts: BigNumber | BigNumber[], inputUtxos: SlpAddressUtxoResult[], tokenReceiverAddresses: string | string[], changeReceiverAddress: string, requiredNonTokenOutputs?: Array<{ satoshis: number; receiverAddress: string; }>): Promise<string>; simpleBchSend(sendAmounts: BigNumber | BigNumber[], inputUtxos: SlpAddressUtxoResult[], bchReceiverAddresses: string | string[], changeReceiverAddress: string): Promise<string>; simpleTokenGenesis(tokenName: string, tokenTicker: string, tokenAmount: BigNumber, documentUri: string | null, documentHash: Buffer | null, decimals: number, tokenReceiverAddress: string, batonReceiverAddress: string, bchChangeReceiverAddress: string, inputUtxos: SlpAddressUtxoResult[]): Promise<string>; simpleNFT1ParentGenesis(tokenName: string, tokenTicker: string, tokenAmount: BigNumber, documentUri: string | null, documentHash: Buffer | null, tokenReceiverAddress: string, batonReceiverAddress: string, bchChangeReceiverAddress: string, inputUtxos: SlpAddressUtxoResult[], decimals?: number): Promise<string>; simpleNFT1ChildGenesis(nft1GroupId: string, tokenName: string, tokenTicker: string, documentUri: string | null, documentHash: Buffer | null, tokenReceiverAddress: string, bchChangeReceiverAddress: string, inputUtxos: SlpAddressUtxoResult[], allowBurnAnyAmount?: boolean): Promise<string>; simpleTokenMint(tokenId: string, mintAmount: BigNumber, inputUtxos: SlpAddressUtxoResult[], tokenReceiverAddress: string, batonReceiverAddress: string, changeReceiverAddress: string): Promise<string>; simpleTokenBurn(tokenId: string, burnAmount: BigNumber, inputUtxos: SlpAddressUtxoResult[], changeReceiverAddress: string): Promise<string>; getUtxoWithRetry(address: string, retries?: number): Promise<AddressUtxoResult>; getUtxoWithTxDetails(address: string): Promise<SlpAddressUtxoResult[]>; getTransactionDetailsWithRetry(txids: string[], retries?: number): Promise<SlpTxnDetailsResult[] | undefined>; getAddressDetailsWithRetry(address: string, retries?: number): Promise<AddressDetailsResult>; sendTx(hex: string, slpBurns?: SlpRequiredBurn[], suppressWarnings?: boolean): Promise<string>; monitorForPayment(paymentAddress: string, fee: number, onPaymentCB: Function): Promise<void>; processUtxosForSlp(utxos: SlpAddressUtxoResult[]): Promise<SlpBalancesResult>; getRawTransactions(txids: string[]): Promise<string[]>; isValidSlpTxid(txid: string): Promise<boolean>; validateSlpTransactions(txids: string[]): Promise<string[]>; getNftParentId(tokenIdHex: string): Promise<string>; }