'use strict'; /** * One of {@link module:constants.inv}. * @typedef {Number|String} InvType * @global */ /** * An output script type. * @see {module:constants.scriptTypes} * May sometimes be a string if specified. * @typedef {Number|String} ScriptType * @global */ /** * A subset of {@link ScriptType}, including * pubkeyhash, scripthash, witnesspubkeyhash, * and witnessscripthash. This value * specifically refers to the address prefix. * It is a network-agnostic way of representing * prefixes. May sometimes be a string if * specified. * @typedef {Number|String} AddressType * @global */ /** * A bitfield containing locktime flags. * @typedef {Number} LockFlags * @global */ /** * Base58 string. * @typedef {String} Base58String * @global */ /** * Bech32 string. * @typedef {String} Bech32String * @global */ /** * Serialized address. * @typedef {Base58String|Bech32String} AddressString * @global */ /** * Buffer or hex-string hash. * @typedef {Buffer|String} Hash * @global */ /** * Signature hash type. One of `all`, `single`, `none`, or * one of {@link constants.hashType}. * @typedef {String|Number} SighashType * @global */ /** * A satoshi amount. This is technically a * JS double float, but it is regularly * enforced to be less than 53 bits and * less than MAX_MONEY in various * functions. * @typedef {Number} Amount * @global */ /** * Rate of satoshis per kB. * @typedef {Amount} Rate * @global */ /** * A big number (bn.js) * @typedef {Object} BN * @global */ /** * A bitfield containing script verify flags. * @typedef {Number} VerifyFlags * @global */ /** * One of `main`, `testnet`, `regtest`, `segnet3`, `segnet4`. * @typedef {String} NetworkType * @see {module:network.types} * @global */