UNPKG

@muirglacier/jellyfish-block

Version:

A collection of TypeScript + JavaScript tools and libraries for DeFi Blockchain developers to build decentralized finance for Bitcoin

25 lines 1.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CBlockHeader = void 0; const jellyfish_buffer_1 = require("@muirglacier/jellyfish-buffer"); /** * Composable BlockHeader, C stands for Composable. * Immutable by design, bi-directional fromBuffer, toBuffer deep composer. */ class CBlockHeader extends jellyfish_buffer_1.ComposableBuffer { composers(bh) { return [ jellyfish_buffer_1.ComposableBuffer.uInt32(() => bh.version, v => bh.version = v), jellyfish_buffer_1.ComposableBuffer.hexBEBufferLE(32, () => bh.hashPrevBlock, v => bh.hashPrevBlock = v), jellyfish_buffer_1.ComposableBuffer.hexBEBufferLE(32, () => bh.hashMerkleRoot, v => bh.hashMerkleRoot = v), jellyfish_buffer_1.ComposableBuffer.uInt32(() => bh.time, v => bh.time = v), jellyfish_buffer_1.ComposableBuffer.uInt32(() => bh.bits, v => bh.bits = v), jellyfish_buffer_1.ComposableBuffer.hexBEBufferLE(32, () => bh.stakeModifier, v => bh.stakeModifier = v), jellyfish_buffer_1.ComposableBuffer.bigNumberUInt64(() => bh.height, v => bh.height = v), jellyfish_buffer_1.ComposableBuffer.bigNumberUInt64(() => bh.mintedBlocks, v => bh.mintedBlocks = v), jellyfish_buffer_1.ComposableBuffer.varUIntHex(() => bh.signature, v => bh.signature = v) ]; } } exports.CBlockHeader = CBlockHeader; //# sourceMappingURL=blockHeader.js.map