@vbyte/btc-dev
Version:
Batteries-included toolset for plebian bitcoin development
29 lines (28 loc) • 838 B
JavaScript
import * as Schema from '../../schema/index.js';
export function assert_tx_template(txdata) {
Schema.tx.tx_template.parse(txdata);
}
export function assert_has_prevouts(vin) {
if (vin.some(txin => txin.prevout === null)) {
throw new Error('transaction missing prevouts');
}
}
export function assert_tx_data(txdata) {
Schema.tx.tx_data.parse(txdata);
}
export function assert_tx_spend_data(txdata) {
assert_tx_data(txdata);
assert_has_prevouts(txdata.vin);
}
export function assert_tx_input(tx_input) {
Schema.tx.tx_input.parse(tx_input);
}
export function assert_tx_output(tx_output) {
Schema.tx.tx_output.parse(tx_output);
}
export function assert_vin_template(vin) {
Schema.tx.vin_template.parse(vin);
}
export function assert_vout_template(vout) {
Schema.tx.vout_template.parse(vout);
}