UNPKG

slpjs

Version:

Simple Ledger Protocol (SLP) JavaScript Library

114 lines (113 loc) 5.03 kB
/// <reference types="node" /> import { SlpAddressUtxoResult, Slp } from ".."; import BigNumber from "bignumber.js"; export interface InputSigData { index: number; pubKeyBuf: Buffer; signatureBuf: Buffer; } export interface ScriptSigP2PK { index: number; signatureBuf: Buffer; } export interface ScriptSigP2PKH { index: number; pubKeyBuf: Buffer; signatureBuf: Buffer; } export interface ScriptSigP2SH { index: number; lockingScriptBuf: Buffer; unlockingScriptBufArray: (number | Buffer)[]; } export interface MultisigRedeemData { m: number; address: string; pubKeys: Buffer[]; lockingScript: Buffer; } export declare class TransactionHelpers { slp: Slp; constructor(slp: Slp); simpleTokenSend({ tokenId, sendAmounts, inputUtxos, tokenReceiverAddresses, changeReceiverAddress, requiredNonTokenOutputs, extraFee }: { tokenId: string; sendAmounts: BigNumber | BigNumber[]; inputUtxos: SlpAddressUtxoResult[]; tokenReceiverAddresses: string | string[]; changeReceiverAddress: string; requiredNonTokenOutputs?: Array<{ satoshis: number; receiverAddress: string; }>; extraFee?: number; }): string; simpleBchSend({ sendAmounts, inputUtxos, bchReceiverAddresses, changeReceiverAddress }: { sendAmounts: BigNumber | BigNumber[]; inputUtxos: SlpAddressUtxoResult[]; bchReceiverAddresses: string | string[]; changeReceiverAddress: string; }): string; simpleTokenGenesis({ tokenName, tokenTicker, tokenAmount, documentUri, documentHash, decimals, tokenReceiverAddress, batonReceiverAddress, bchChangeReceiverAddress, inputUtxos }: { tokenName: string; tokenTicker: string; tokenAmount: BigNumber; documentUri: string | null; documentHash: Buffer | null; decimals: number; tokenReceiverAddress: string; batonReceiverAddress: string | null; bchChangeReceiverAddress: string; inputUtxos: SlpAddressUtxoResult[]; }): string; simpleNFT1ParentGenesis({ tokenName, tokenTicker, tokenAmount, documentUri, documentHash, tokenReceiverAddress, batonReceiverAddress, bchChangeReceiverAddress, inputUtxos, decimals }: { tokenName: string; tokenTicker: string; tokenAmount: BigNumber; documentUri: string | null; documentHash: Buffer | null; tokenReceiverAddress: string; batonReceiverAddress: string | null; bchChangeReceiverAddress: string; inputUtxos: SlpAddressUtxoResult[]; decimals?: number; }): string; simpleNFT1ChildGenesis({ nft1GroupId, tokenName, tokenTicker, documentUri, documentHash, tokenReceiverAddress, bchChangeReceiverAddress, inputUtxos, allowBurnAnyAmount }: { nft1GroupId: string; tokenName: string; tokenTicker: string; documentUri: string | null; documentHash: Buffer | null; tokenReceiverAddress: string; bchChangeReceiverAddress: string; inputUtxos: SlpAddressUtxoResult[]; allowBurnAnyAmount?: boolean; }): any; simpleTokenMint({ tokenId, mintAmount, inputUtxos, tokenReceiverAddress, tokenReceiverSatoshis, batonReceiverAddress, changeReceiverAddress, extraFee, disableBchChangeOutput, batonReceiverSatoshis }: { tokenId: string; mintAmount: BigNumber; inputUtxos: SlpAddressUtxoResult[]; tokenReceiverAddress: string; batonReceiverAddress: string; changeReceiverAddress: string; extraFee?: number; disableBchChangeOutput?: boolean; tokenReceiverSatoshis?: BigNumber; batonReceiverSatoshis?: BigNumber; }): string; simpleTokenBurn({ tokenId, burnAmount, inputUtxos, changeReceiverAddress }: { tokenId: string; burnAmount: BigNumber; inputUtxos: SlpAddressUtxoResult[]; changeReceiverAddress: string; }): string; get_transaction_sig_filler(input_index: number, pubKeyBuf: Buffer): InputSigData; get_transaction_sig_p2pkh(txHex: string, wif: string, input_index: number, input_satoshis: number, sigHashType?: number): InputSigData; get_transaction_sig_p2sh(txHex: string, wif: string, input_index: number, input_satoshis: number, redeemScript: Buffer, scriptCode: Buffer, sigHashType?: number): InputSigData; build_P2PKH_scriptSig(sigData: InputSigData): ScriptSigP2PKH; build_P2SH_multisig_redeem_data(m: number, pubKeys: string[] | Buffer[]): MultisigRedeemData; insert_input_values_for_EC_signers(txnHex: string, input_values: number[]): string; build_P2SH_multisig_scriptSig(redeemData: MultisigRedeemData, input_index: number, sigs: InputSigData[]): ScriptSigP2SH; addScriptSigs(unsignedTxnHex: string, scriptSigs: (ScriptSigP2PKH | ScriptSigP2SH | ScriptSigP2PK)[]): string; setTxnLocktime(unsignedTxnHex: string, locktime: number): string; enableInputsCLTV(unsignedTxnHex: string): string; }