UNPKG

@muirglacier/jellyfish-transaction

Version:

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

45 lines 1.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CTokenBalanceVarInt = exports.CScriptBalances = exports.CTokenBalance = void 0; const jellyfish_buffer_1 = require("@muirglacier/jellyfish-buffer"); const tx_composer_1 = require("../../tx_composer"); /** * Composable TokenBalance, C stands for Composable. * Immutable by design, bi-directional fromBuffer, toBuffer deep composer. */ class CTokenBalance extends jellyfish_buffer_1.ComposableBuffer { composers(tb) { return [ jellyfish_buffer_1.ComposableBuffer.uInt32(() => tb.token, v => tb.token = v), jellyfish_buffer_1.ComposableBuffer.satoshiAsBigNumber(() => tb.amount, v => tb.amount = v) ]; } } exports.CTokenBalance = CTokenBalance; /** * Composable ScriptBalances, C stands for Composable. * Immutable by design, bi-directional fromBuffer, toBuffer deep composer. */ class CScriptBalances extends jellyfish_buffer_1.ComposableBuffer { composers(sb) { return [ jellyfish_buffer_1.ComposableBuffer.single(() => sb.script, v => sb.script = v, v => new tx_composer_1.CScript(v)), jellyfish_buffer_1.ComposableBuffer.varUIntArray(() => sb.balances, v => sb.balances = v, v => new CTokenBalance(v)) ]; } } exports.CScriptBalances = CScriptBalances; /** * Composable TokenBalanceVarInt, C stands for Composable. * Immutable by design, bi-directional fromBuffer, toBuffer deep composer. */ class CTokenBalanceVarInt extends jellyfish_buffer_1.ComposableBuffer { composers(tb) { return [ jellyfish_buffer_1.ComposableBuffer.varUInt(() => tb.token, v => tb.token = v), jellyfish_buffer_1.ComposableBuffer.satoshiAsBigNumber(() => tb.amount, v => tb.amount = v) ]; } } exports.CTokenBalanceVarInt = CTokenBalanceVarInt; //# sourceMappingURL=dftx_balance.js.map