UNPKG

@btc-stamps/tx-builder

Version:

Transaction builder for Bitcoin Stamps and SRC-20 tokens with advanced UTXO selection

26 lines (19 loc) 751 B
/** * Type guards and safe type conversion utilities */ import { Buffer } from 'node:buffer'; export function isBuffer(value: unknown): value is Buffer { return value instanceof Buffer; } export function safeNumber(value: unknown, defaultValue = 0): number { return typeof value === 'number' ? value : defaultValue; } export function isValidBuffer(buffer: unknown): buffer is Buffer { return buffer instanceof Buffer && buffer.length > 0; } export function getOptionalNumber(value: unknown, defaultValue = 0): number { return typeof value === 'number' && !isNaN(value) ? value : defaultValue; } export function getOptionalString(value: unknown, defaultValue = ''): string { return typeof value === 'string' ? value : defaultValue; }