UNPKG

@blockchain-api/bitcoin-js

Version:
65 lines (64 loc) 2.72 kB
import { Network } from 'bitcoinjs-lib'; import { UTXO } from '../interfaces/UTXO'; /** * Generate Bitcoin wallet * @param testnet testnet or mainnet version of address * @param mnemonic mnemonic seed to use * @returns wallet */ export declare const generateWallet: (mnemonic: string, path: string, network: Network) => Promise<{ mnemonic: string; accountExtPubkey: string; accountExtPrivatekey: string; bip32ExtPubkey: string; bip32ExtPrivatekey: string; }>; /** * Generate Bitcoin address from mnemonic * @param testnet testnet or mainnet version of address * @param mnemonic mnemonic seed to use * @param i derivation index of address to generate. Up to 2^31 addresses can be generated. * @returns blockchain address */ export declare const generateAddressFromMnemonic: (path: string, mnemonic: string, i: number, network: Network) => Promise<string>; /** * Convert Bitcoin Private Key to Address * @param testnet testnet or mainnet version of address * @param privkey private key to use * @returns blockchain address */ export declare const generateAddressFromPrivatekey: (privkey: string, network: Network) => string; /** * Generate Bitcoin private key from mnemonic seed * @param testnet testnet or mainnet version of address * @param mnemonic mnemonic to generate private key from * @param i derivation index of private key to generate. * @returns blockchain private key to the address */ export declare const generatePrivateKeyFromMnemonic: (mnemonic: string, path: string, i: number, network: Network) => Promise<string>; /** * Generate address from xpub * @param currency type of blockchain * @param testnet testnet or mainnet version of address * @param xpub extended public key to generate address from * @param i derivation index of address to generate. Up to 2^31 addresses can be generated. * @returns blockchain address */ export declare const generateAddressFromXPub: (xpub: string, i: number, network: Network) => string; /** * Check bitcoin address is valid * @param testnet testnet or mainnet version of address * @param address bitcoin address * @returns true || false */ export declare const isValidAddress: (address: string, network: Network) => boolean; /** * Sign bitcoin tx offline * @param testnet testnet or mainnet version of address * @param outputs transaction outputs * @param privateKey sender private key * @param toAddress receiver * @param valueInBtc valut in btc * @returns rawTx */ export declare const signTxOffline: (outputs: UTXO[], privateKey: string, toAddress: string, value: number, network: Network, changeAddress?: string | undefined) => string;