UNPKG

@2waychain/2wayjs

Version:

API wrapper to access the AIBlock 2 Way Chain

85 lines (84 loc) 3.21 kB
import { IAssetItem, IAssetToken, ICreateTxIn, ICreateTxPayload, IFetchBalanceResponse, IKeypair, IOutPoint, IResult, ITxOut, Script } from '../interfaces'; /** * Constructs a signature used in P2PKH script * * @export * @param {Uint8Array} signableData * @param {Uint8Array} secretKey * @return {*} {string} */ export declare function constructSignature(signableData: Uint8Array, secretKey: Uint8Array): IResult<string>; /** * Constructs signable data from previous OutPoint for P2PKH script * * @export * @param {IOutPoint} outPoint - Previous `OutPoint` * @return {*} {string} */ export declare function constructTxInSignableData(outPoint: IOutPoint | null): string | null; /** * Gets OutPoint formatted as a string * * @export * @param {(IOutPoint | null)} outPoint * @return {*} {(string | null)} */ export declare function getFormattedOutPointString(outPoint: IOutPoint | null): string | null; /** * Generates a new 32 byte DRUID * * @returns {string} */ export declare function generateDRUID(): IResult<string>; /** * Formats script data for "from" address creation * * @export * @return {*} {string} * @param script - `Script` value */ export declare function getFormattedScriptString(script: Script): string; /** * Gets "from" address used in 2 way transaction values * * @export * @param {ICreateTxIn[]} txIns - Transaction inputs * @return {*} {string} */ export declare function constructTxInsAddress(txIns: ICreateTxIn[]): IResult<string>; export declare function constructTxInSignableAssetHash(asset: IAssetToken | IAssetItem): string; /** Construct a signable hash for a transaction using both the inputs and outputs of the transaction * * @param txIn - Transaction input * @param txOuts - Transaction outputs * @returns {string} - Signable hash */ export declare function constructTxInOutSignableHash(txIn: IOutPoint | null, txOuts: ITxOut[]): string; /** * Updates the signatures of the transaction given the available outputs * * @param transaction - Transaction to update * @param fetchBalanceResponse - Response from fetch balance * @param allKeypairs - All keypairs * @returns */ export declare function updateSignatures(transaction: ICreateTxPayload, fetchBalanceResponse: IFetchBalanceResponse, allKeypairs: Map<string, IKeypair>): import("neverthrow").Ok<ICreateTxPayload, never>; /** * Gets the address of the outpoint that matches the transaction hash of the input * * @param fetchBalanceResponse - Response from fetch balance * @param t_hash - Transaction hash * @returns */ export declare function getAddressFromFetchBalanceResponse(fetchBalanceResponse: IFetchBalanceResponse, t_hash: string): string; /** * Construct a Pay-to-Public-Key-Hash script * * @export * @param {string} checkData - Data to check * @param {string} signatureData - Signature * @param {string} publicKeyData - Public key * @param {(number | null)} addressVersion - Address version * @return {*} {IResult<Script>} */ export declare function p2pkh(checkData: string, signatureData: string, publicKeyData: string, addressVersion: number | null): IResult<Script>;