@chainvue/verus-sdk 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +5 -0
  2. package/dist/VerusSDK.d.ts +28 -0
  3. package/dist/VerusSDK.d.ts.map +1 -1
  4. package/dist/VerusSDK.js +47 -0
  5. package/dist/VerusSDK.js.map +1 -1
  6. package/dist/bundle.js +552 -43
  7. package/dist/fork/boundary.d.ts +1 -1
  8. package/dist/fork/boundary.d.ts.map +1 -1
  9. package/dist/fork/boundary.js +6 -1
  10. package/dist/fork/boundary.js.map +1 -1
  11. package/dist/identity/index.d.ts +10 -0
  12. package/dist/identity/index.d.ts.map +1 -1
  13. package/dist/identity/index.js +31 -0
  14. package/dist/identity/index.js.map +1 -1
  15. package/dist/index.d.ts +2 -0
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +3 -1
  18. package/dist/index.js.map +1 -1
  19. package/dist/offers/identity.d.ts +193 -0
  20. package/dist/offers/identity.d.ts.map +1 -0
  21. package/dist/offers/identity.js +314 -0
  22. package/dist/offers/identity.js.map +1 -0
  23. package/dist/offers/maker.d.ts +67 -0
  24. package/dist/offers/maker.d.ts.map +1 -0
  25. package/dist/offers/maker.js +132 -0
  26. package/dist/offers/maker.js.map +1 -0
  27. package/dist/offers/public.d.ts +30 -0
  28. package/dist/offers/public.d.ts.map +1 -0
  29. package/dist/offers/public.js +42 -0
  30. package/dist/offers/public.js.map +1 -0
  31. package/dist/offers/sign.d.ts +42 -0
  32. package/dist/offers/sign.d.ts.map +1 -0
  33. package/dist/offers/sign.js +98 -0
  34. package/dist/offers/sign.js.map +1 -0
  35. package/dist/offers/taker.d.ts +33 -0
  36. package/dist/offers/taker.d.ts.map +1 -0
  37. package/dist/offers/taker.js +113 -0
  38. package/dist/offers/taker.js.map +1 -0
  39. package/dist/utxo/index.d.ts +7 -0
  40. package/dist/utxo/index.d.ts.map +1 -1
  41. package/dist/utxo/index.js +1 -0
  42. package/dist/utxo/index.js.map +1 -1
  43. package/package.json +1 -1
@@ -0,0 +1,42 @@
1
+ import type { Network } from '../constants/index.js';
2
+ /** The sighash every offer input is signed with: single output, others open. */
3
+ export declare const SIGHASH_OFFER: number;
4
+ /**
5
+ * Sign one input of an offer transaction with SIGHASH_SINGLE|ANYONECANPAY and
6
+ * install the CryptoCondition fulfillment, leaving the rest of the tx open for a
7
+ * taker to complete.
8
+ *
9
+ * @param unsignedHex the offer tx (input spending the offered CC output, plus
10
+ * the single wanted output at the same index) with an empty
11
+ * scriptSig on `inputIndex`
12
+ * @param prevOutScript the funding output's scriptPubKey (the CC holding the offered asset)
13
+ * @param prevOutValue the funding output's native satoshis (for the sighash)
14
+ */
15
+ export declare function signOfferInput(unsignedHex: string, inputIndex: number, prevOutScript: Buffer, prevOutValue: bigint, wif: string, network: Network): {
16
+ signedTx: string;
17
+ txid: string;
18
+ };
19
+ /** One input the taker contributes to an offer completion. */
20
+ export interface TakerInput {
21
+ index: number;
22
+ /** The scriptPubKey of the UTXO being spent (P2PKH or a CC reserve output). */
23
+ prevOutScript: Buffer;
24
+ value: bigint;
25
+ }
26
+ /**
27
+ * Sign the taker's inputs of an offer completion with SIGHASH_ALL, leaving the
28
+ * maker's SIGHASH_SINGLE|ANYONECANPAY input untouched.
29
+ *
30
+ * Each input is signed manually and its scriptSig set directly: the fork's
31
+ * `TransactionBuilder.build()` rebuilds ALL inputs and cannot preserve a
32
+ * pre-signed CryptoCondition input (it throws "Not enough signatures provided"),
33
+ * so the taker side is assembled at the transaction level. Both plain (P2PKH) and
34
+ * CC (reserve) taker inputs are handled. Because the taker signs the whole
35
+ * transaction (ALL), the maker's already-committed input + output stay valid —
36
+ * SINGLE|ANYONECANPAY does not commit to the inputs and outputs the taker added.
37
+ */
38
+ export declare function signTakerInputs(txHex: string, takerInputs: TakerInput[], wif: string, network: Network): {
39
+ signedTx: string;
40
+ txid: string;
41
+ };
42
+ //# sourceMappingURL=sign.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sign.d.ts","sourceRoot":"","sources":["../../src/offers/sign.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAIrD,gFAAgF;AAChF,eAAO,MAAM,aAAa,QAAwC,CAAC;AAEnE;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,OAAO,GACf;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CA6BpC;AAED,8DAA8D;AAC9D,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,+EAA+E;IAC/E,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,UAAU,EAAE,EACzB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,OAAO,GACf;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CA4BpC"}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SIGHASH_OFFER = void 0;
4
+ exports.signOfferInput = signOfferInput;
5
+ exports.signTakerInputs = signTakerInputs;
6
+ /**
7
+ * Signing an offer input.
8
+ *
9
+ * A Verus marketplace offer is one half of an atomic swap: the maker spends the
10
+ * output holding the OFFERED asset and, in the same input, commits with
11
+ * SIGHASH_SINGLE | SIGHASH_ANYONECANPAY (0x83) to exactly one output — the WANTED
12
+ * asset paid to the maker. That sighash lets a taker later ADD their own inputs
13
+ * (the wanted asset) and outputs (receiving the offered asset) and sign their
14
+ * side, without invalidating the maker's signature. The two halves merge into one
15
+ * atomic transaction.
16
+ *
17
+ * The offered asset sits in a CryptoCondition output, so the fulfillment is a
18
+ * smart-transaction signature. The fork's `TransactionBuilder.sign` can sign a CC
19
+ * input but HARDCODES the fulfillment's embedded hashType to SIGHASH_ALL, so it
20
+ * can't emit an offer fulfillment. We build the fulfillment explicitly from the
21
+ * fork's exported primitives instead — byte-identical to the daemon's `makeoffer`
22
+ * (verified: `SmartTransactionSignatures(1, 0x83, …).toChunk()` → `018301…`).
23
+ */
24
+ const boundary_js_1 = require("../fork/boundary.js");
25
+ const index_js_1 = require("../signing/index.js");
26
+ const index_js_2 = require("../utils/index.js");
27
+ const index_js_3 = require("../utxo/index.js");
28
+ const errors_js_1 = require("../errors.js");
29
+ const SIGHASH_SINGLE = 0x03;
30
+ const SIGHASH_ANYONECANPAY = 0x80;
31
+ /** The sighash every offer input is signed with: single output, others open. */
32
+ exports.SIGHASH_OFFER = SIGHASH_SINGLE | SIGHASH_ANYONECANPAY; // 0x83
33
+ /**
34
+ * Sign one input of an offer transaction with SIGHASH_SINGLE|ANYONECANPAY and
35
+ * install the CryptoCondition fulfillment, leaving the rest of the tx open for a
36
+ * taker to complete.
37
+ *
38
+ * @param unsignedHex the offer tx (input spending the offered CC output, plus
39
+ * the single wanted output at the same index) with an empty
40
+ * scriptSig on `inputIndex`
41
+ * @param prevOutScript the funding output's scriptPubKey (the CC holding the offered asset)
42
+ * @param prevOutValue the funding output's native satoshis (for the sighash)
43
+ */
44
+ function signOfferInput(unsignedHex, inputIndex, prevOutScript, prevOutValue, wif, network) {
45
+ const verusNetwork = (0, index_js_1.getNetwork)(network === 'testnet');
46
+ const tx = boundary_js_1.Transaction.fromHex(unsignedHex, verusNetwork);
47
+ const input = tx.ins[inputIndex];
48
+ if (!input) {
49
+ throw new errors_js_1.TransactionBuildError(`signOfferInput: no input at index ${inputIndex}`);
50
+ }
51
+ const keyPair = boundary_js_1.ECPair.fromWIF(wif, verusNetwork);
52
+ // isWitness = false: Verus CC inputs are not segwit.
53
+ const sighash = tx.hashForSignatureByNetwork(inputIndex, prevOutScript, (0, index_js_2.toSafeNumber)(prevOutValue), exports.SIGHASH_OFFER, false);
54
+ const signature = keyPair.sign(sighash);
55
+ // The compact signature is [recovery-byte, r(32), s(32)]; the CC fulfillment
56
+ // carries the 64-byte r||s (the recovery byte is dropped).
57
+ const fulfillment = new boundary_js_1.SmartTransactionSignatures(1, exports.SIGHASH_OFFER, [
58
+ new boundary_js_1.SmartTransactionSignature(1, 1, keyPair.getPublicKeyBuffer(), signature.toCompact().slice(1)),
59
+ ]).toChunk();
60
+ // The scriptSig pushes the fulfillment as one data element (OP_PUSHDATA1 …),
61
+ // matching the daemon's `4c67 0183…` — toChunk() is the raw bytes, not the push.
62
+ input.script = boundary_js_1.script.compile([fulfillment]);
63
+ return { signedTx: tx.toHex(), txid: tx.getId() };
64
+ }
65
+ /**
66
+ * Sign the taker's inputs of an offer completion with SIGHASH_ALL, leaving the
67
+ * maker's SIGHASH_SINGLE|ANYONECANPAY input untouched.
68
+ *
69
+ * Each input is signed manually and its scriptSig set directly: the fork's
70
+ * `TransactionBuilder.build()` rebuilds ALL inputs and cannot preserve a
71
+ * pre-signed CryptoCondition input (it throws "Not enough signatures provided"),
72
+ * so the taker side is assembled at the transaction level. Both plain (P2PKH) and
73
+ * CC (reserve) taker inputs are handled. Because the taker signs the whole
74
+ * transaction (ALL), the maker's already-committed input + output stay valid —
75
+ * SINGLE|ANYONECANPAY does not commit to the inputs and outputs the taker added.
76
+ */
77
+ function signTakerInputs(txHex, takerInputs, wif, network) {
78
+ const verusNetwork = (0, index_js_1.getNetwork)(network === 'testnet');
79
+ const tx = boundary_js_1.Transaction.fromHex(txHex, verusNetwork);
80
+ const keyPair = boundary_js_1.ECPair.fromWIF(wif, verusNetwork);
81
+ for (const { index, prevOutScript, value } of takerInputs) {
82
+ const input = tx.ins[index];
83
+ if (!input) {
84
+ throw new errors_js_1.TransactionBuildError(`signTakerInputs: no input at index ${index}`);
85
+ }
86
+ const sighash = tx.hashForSignatureByNetwork(index, prevOutScript, (0, index_js_2.toSafeNumber)(value), boundary_js_1.Transaction.SIGHASH_ALL, false);
87
+ const signature = keyPair.sign(sighash);
88
+ input.script = (0, index_js_3.isSmartTransactionScript)(prevOutScript)
89
+ ? boundary_js_1.script.compile([
90
+ new boundary_js_1.SmartTransactionSignatures(1, boundary_js_1.Transaction.SIGHASH_ALL, [
91
+ new boundary_js_1.SmartTransactionSignature(1, 1, keyPair.getPublicKeyBuffer(), signature.toCompact().slice(1)),
92
+ ]).toChunk(),
93
+ ])
94
+ : boundary_js_1.script.compile([signature.toScriptSignature(boundary_js_1.Transaction.SIGHASH_ALL), keyPair.getPublicKeyBuffer()]);
95
+ }
96
+ return { signedTx: tx.toHex(), txid: tx.getId() };
97
+ }
98
+ //# sourceMappingURL=sign.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sign.js","sourceRoot":"","sources":["../../src/offers/sign.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { Network } from '../constants/index.js';
2
+ import type { Utxo } from '../types/index.js';
3
+ export interface CompleteOfferParams {
4
+ /** The maker's half-signed offer transaction (from buildOffer). */
5
+ offerTx: string;
6
+ /** What the maker offers (the value in the commitment input 0), native or token. */
7
+ offered: {
8
+ currency: string;
9
+ amount: bigint;
10
+ };
11
+ /** What the taker must pay (the maker's wanted output 0), native or token. */
12
+ want: {
13
+ currency: string;
14
+ amount: bigint;
15
+ };
16
+ /** The taker's UTXOs — must hold the wanted currency + native for the fee. */
17
+ takerUtxos: Utxo[];
18
+ /** Where the taker receives the offered asset. */
19
+ takerAddress: string;
20
+ changeAddress: string;
21
+ wif: string;
22
+ }
23
+ export interface CompleteOfferResult {
24
+ swapTx: string;
25
+ txid: string;
26
+ }
27
+ /**
28
+ * Complete an offer: take the maker's half-signed offer, pay the wanted asset,
29
+ * receive the offered asset, and sign the taker's side. The offered and wanted
30
+ * assets may each be the native coin or a token (all four combinations).
31
+ */
32
+ export declare function completeOffer(params: CompleteOfferParams, network: Network): CompleteOfferResult;
33
+ //# sourceMappingURL=taker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taker.d.ts","sourceRoot":"","sources":["../../src/offers/taker.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAClC,mEAAmE;IACnE,OAAO,EAAE,MAAM,CAAC;IAChB,oFAAoF;IACpF,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,8EAA8E;IAC9E,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,8EAA8E;IAC9E,UAAU,EAAE,IAAI,EAAE,CAAC;IACnB,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AASD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,GAAG,mBAAmB,CA4FhG"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.completeOffer = completeOffer;
4
+ /**
5
+ * Completing (taking) a marketplace offer, offline.
6
+ *
7
+ * The taker receives the maker's half-signed offer (`buildOffer` output): input 0
8
+ * spends the offered asset's commitment and output 0 is the WANTED asset paid to
9
+ * the maker, both committed under the maker's SIGHASH_SINGLE|ANYONECANPAY. The
10
+ * taker adds their side and signs it, and the two halves become one atomic swap:
11
+ *
12
+ * - keep the maker's input 0 and output 0 untouched (index 0);
13
+ * - append output 1: the OFFERED asset paid to the taker;
14
+ * - append the taker's inputs (the wanted currency to pay output 0, plus native
15
+ * for the miner fee) and output 2: the taker's change;
16
+ * - sign only the taker's inputs (SIGHASH_ALL) — the maker's 0x83 stays valid.
17
+ *
18
+ * The taker tx does NOT byte-match the daemon (each wallet selects its own UTXOs);
19
+ * correctness is enforced by value conservation and proven by the live round-trip.
20
+ *
21
+ * This covers all four currency combinations: the offered and wanted assets may
22
+ * each be the native coin or a token. The offered asset flows self-contained from
23
+ * input 0 (the commitment) to output 1 (the taker); the taker's own UTXOs fund
24
+ * only the wanted asset (paid to output 0) plus the miner fee.
25
+ */
26
+ const boundary_js_1 = require("../fork/boundary.js");
27
+ const index_js_1 = require("../utxo/index.js");
28
+ const index_js_2 = require("../signing/index.js");
29
+ const index_js_3 = require("../identity/index.js");
30
+ const sign_js_1 = require("./sign.js");
31
+ const index_js_4 = require("../utils/index.js");
32
+ const brands_js_1 = require("../core/brands.js");
33
+ const index_js_5 = require("../constants/index.js");
34
+ const errors_js_1 = require("../errors.js");
35
+ /** A native payment script to an R-address (P2PKH) or i-address (pay-to-identity). */
36
+ function nativePaymentScript(address) {
37
+ return address.startsWith('i')
38
+ ? (0, index_js_3.identityPaymentScript)((0, brands_js_1.parseIAddress)(address, 'address'))
39
+ : (0, index_js_4.addressToScriptPubKey)(address);
40
+ }
41
+ /**
42
+ * Complete an offer: take the maker's half-signed offer, pay the wanted asset,
43
+ * receive the offered asset, and sign the taker's side. The offered and wanted
44
+ * assets may each be the native coin or a token (all four combinations).
45
+ */
46
+ function completeOffer(params, network) {
47
+ const verusNetwork = (0, index_js_2.getNetwork)(network === 'testnet');
48
+ const systemId = index_js_5.NETWORK_CONFIG[network].chainId;
49
+ const offeringNative = params.offered.currency === systemId;
50
+ const wantingNative = params.want.currency === systemId;
51
+ if (params.offered.amount <= 0n || params.want.amount <= 0n) {
52
+ throw new errors_js_1.TransactionBuildError('completeOffer: offered.amount and want.amount must be positive');
53
+ }
54
+ const tx = boundary_js_1.Transaction.fromHex(params.offerTx, verusNetwork);
55
+ if (tx.ins.length !== 1 || tx.outs.length !== 1) {
56
+ throw new errors_js_1.TransactionBuildError('completeOffer: expected a maker offer partial (1 input, 1 output)');
57
+ }
58
+ // The native value on the maker's commitment input (input 0): the offered
59
+ // amount if the offer is native, else 0 (a token commitment carries 0 native).
60
+ const commitmentNative = offeringNative ? params.offered.amount : 0n;
61
+ // Output 1: the OFFERED asset paid to the taker — a plain payment for the
62
+ // native coin, a reserve output (0 native) for a token. The offered asset
63
+ // flows from input 0 to here, self-contained.
64
+ if (offeringNative) {
65
+ tx.addOutput(nativePaymentScript(params.takerAddress), (0, index_js_4.toSafeNumber)(params.offered.amount));
66
+ }
67
+ else {
68
+ const offeredOut = (0, index_js_3.buildTokenChangeOutput)((0, brands_js_1.parseAddress)(params.takerAddress, 'takerAddress'), new Map([[params.offered.currency, params.offered.amount]]));
69
+ tx.addOutput(offeredOut.script, 0);
70
+ }
71
+ // The taker's own UTXOs fund only the WANTED asset (paid to output 0) plus the
72
+ // miner fee. When the wanted asset is a token it is a required currency; when
73
+ // native it is required native on top of the fee. numOutputs=3 (wanted, offered,
74
+ // change); +150 bytes accounts for the maker's input, which selectUtxos can't see.
75
+ const wantedTokenReq = wantingNative
76
+ ? new Map()
77
+ : new Map([[params.want.currency, params.want.amount]]);
78
+ const requiredNative = wantingNative ? params.want.amount : 0n;
79
+ const selection = (0, index_js_1.selectUtxos)(params.takerUtxos, requiredNative, wantedTokenReq, 3, systemId, undefined, true, 150);
80
+ const takerInputs = [];
81
+ for (const u of selection.selected) {
82
+ const idx = tx.addInput(Buffer.from(u.txid, 'hex').reverse(), u.outputIndex, 0xffffffff);
83
+ takerInputs.push({ index: idx, prevOutScript: Buffer.from(u.script, 'hex'), value: u.satoshis });
84
+ }
85
+ // Output 2: taker change — the wanted-currency change (with native change
86
+ // bundled onto the reserve output), or plain native change if no token remains.
87
+ const hasTokenChange = selection.currencyChanges.size > 0;
88
+ if (hasTokenChange || selection.nativeChange > 0n) {
89
+ if (hasTokenChange) {
90
+ const change = (0, index_js_3.buildTokenChangeOutput)((0, brands_js_1.parseAddress)(params.changeAddress, 'changeAddress'), selection.currencyChanges);
91
+ tx.addOutput(change.script, (0, index_js_4.toSafeNumber)(selection.nativeChange));
92
+ }
93
+ else {
94
+ tx.addOutput(nativePaymentScript(params.changeAddress), (0, index_js_4.toSafeNumber)(selection.nativeChange));
95
+ }
96
+ }
97
+ // Token conservation over the taker's own inputs: they provide the wanted token
98
+ // (paid to output 0) plus change. The offered token (input 0 → output 1) does
99
+ // not pass through taker inputs, so it is not asserted here — it is balanced by
100
+ // construction (the commitment carries exactly `offered.amount`).
101
+ (0, index_js_1.assertTokenConservation)(selection.selected, wantedTokenReq, selection.currencyChanges, systemId, 'takeOffer');
102
+ // Native conservation across the whole swap. allNativeIn = the commitment's
103
+ // native (funds the offered-native output when offering native, else 0) + the
104
+ // taker's native inputs (fund the wanted-native output when wanting native, the
105
+ // fee, and native change). This identity reduces to exactly `fee` in every
106
+ // combination.
107
+ const takerNativeIn = selection.selected.reduce((s, u) => s + u.satoshis, 0n);
108
+ const allInputsNative = commitmentNative + takerNativeIn;
109
+ (0, index_js_2.assertNativeConservation)([{ satoshis: allInputsNative }], tx.outs, selection.fee, 'takeOffer');
110
+ const { signedTx, txid } = (0, sign_js_1.signTakerInputs)(tx.toHex(), takerInputs, params.wif, network);
111
+ return { swapTx: signedTx, txid };
112
+ }
113
+ //# sourceMappingURL=taker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taker.js","sourceRoot":"","sources":["../../src/offers/taker.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,13 @@
8
8
  */
9
9
  import type { Utxo, DecodedUtxo, SelectionResult } from '../types/index.js';
10
10
  export type { Utxo, DecodedUtxo, SelectionResult };
11
+ /**
12
+ * True when the script is a Verus smart (CryptoCondition) output. Used to
13
+ * separate "plain script that unpackOutput doesn't model" (fine — native
14
+ * only) from "smart output that failed to decode" (dangerous — the UTXO may
15
+ * carry token value we cannot see).
16
+ */
17
+ export declare function isSmartTransactionScript(script: Buffer): boolean;
11
18
  /**
12
19
  * Decode a UTXO's script to extract currency values
13
20
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utxo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAK5E,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;AA6BnD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW,CA2BpE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,EAC7B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,IAAI,CAwBN;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,MAA2B,EACrC,eAAe,GAAE,OAAe,EAChC,UAAU,GAAE,MAAU,GACrB,MAAM,CASR;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,IAAI,EAAE,EACb,cAAc,EAAE,MAAM,EACtB,kBAAkB,GAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,EACnD,UAAU,GAAE,MAAU,EACtB,QAAQ,GAAE,MAAuC,EACjD,QAAQ,GAAE,MAA2B,EACrC,eAAe,GAAE,OAAe,EAChC,gBAAgB,GAAE,MAAU,GAC3B,eAAe,CAkKjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utxo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAK5E,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;AAWnD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAUhE;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,WAAW,CA2BpE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,EAC7B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,IAAI,CAwBN;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,GAAE,MAA2B,EACrC,eAAe,GAAE,OAAe,EAChC,UAAU,GAAE,MAAU,GACrB,MAAM,CASR;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,IAAI,EAAE,EACb,cAAc,EAAE,MAAM,EACtB,kBAAkB,GAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,EACnD,UAAU,GAAE,MAAU,EACtB,QAAQ,GAAE,MAAuC,EACjD,QAAQ,GAAE,MAA2B,EACrC,eAAe,GAAE,OAAe,EAChC,gBAAgB,GAAE,MAAU,GAC3B,eAAe,CAkKjB"}
@@ -8,6 +8,7 @@
8
8
  * All amounts are bigint satoshis — exact integer arithmetic only.
9
9
  */
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.isSmartTransactionScript = isSmartTransactionScript;
11
12
  exports.decodeUtxo = decodeUtxo;
12
13
  exports.assertTokenConservation = assertTokenConservation;
13
14
  exports.estimateFee = estimateFee;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utxo/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utxo/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AA4BH,4DAUC;AASD,gCA2BC;AAeD,0DA8BC;AAKD,kCAeC;AAKD,kCA2KC;AAzTD,qDAA2E;AAC3E,oDAA2F;AAC3F,4CAA6E;AAC7E,gDAAiD;AAGjD,MAAM,EAAE,YAAY,EAAE,GAAG,sBAAQ,CAAC;AAKlC,wCAAwC;AACxC,MAAM,UAAU,GAAG,GAAG,CAAC;AACvB,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,WAAW,GAAG,EAAE,CAAC;AAEvB,qCAAqC;AACrC,MAAM,OAAO,GAAG,MAAO,CAAC;AAExB;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAC,MAAc;IACrD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,oBAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAChB,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,qBAAO,CAAC,uBAAuB,CAClF,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,UAAU,CAAC,IAAU,EAAE,QAAgB;IACrD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAA,uBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEhD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAE9E,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1C,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;gBAChB,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,wBAAwB,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,iCAAqB,CAC7B,8BAA8B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,KAAM,GAAa,CAAC,OAAO,EAAE,CACzF,CAAC;QACJ,CAAC;QACD,yEAAyE;QACzE,IAAI,IAAI,CAAC,QAAQ,GAAG,EAAE,EAAE,CAAC;YACvB,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,OAAO,EAAE,GAAG,IAAI,EAAE,cAAc,EAAE,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,uBAAuB,CACrC,QAA6B,EAC7B,cAAmC,EACnC,eAAoC,EACpC,QAAgB,EAChB,KAAa;IAEb,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACxC,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YACxD,IAAI,QAAQ,KAAK,QAAQ;gBAAE,SAAS;YACpC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE;QAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,KAAK,QAAQ;YAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7E,KAAK,MAAM,CAAC,IAAI,eAAe,CAAC,IAAI,EAAE;QAAE,IAAI,CAAC,KAAK,QAAQ;YAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAE9E,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9F,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzB,MAAM,IAAI,iCAAqB,CAC7B,GAAG,KAAK,kCAAkC,QAAQ,qBAAqB,OAAO,kBAAkB,QAAQ,EAAE,CAC3G,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CACzB,SAAiB,EACjB,UAAkB,EAClB,WAAmB,6BAAkB,EACrC,kBAA2B,KAAK,EAChC,aAAqB,CAAC;IAEtB,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAC3E,yEAAyE;IACzE,0EAA0E;IAC1E,yEAAyE;IACzE,2CAA2C;IAC3C,MAAM,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IAC3F,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,iCAAiC;IACzF,OAAO,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CACzB,KAAa,EACb,cAAsB,EACtB,qBAA0C,IAAI,GAAG,EAAE,EACnD,aAAqB,CAAC,EACtB,WAAmB,yBAAc,CAAC,OAAO,CAAC,OAAO,EACjD,WAAmB,6BAAkB,EACrC,kBAA2B,KAAK,EAChC,mBAA2B,CAAC;IAE5B,8EAA8E;IAC9E,8EAA8E;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,6DAA6D;IAC7D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,iCAAqB,CAAC,6BAA6B,QAAQ,yBAAyB,CAAC,CAAC;QAClG,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,0EAA0E;IAC1E,+EAA+E;IAC/E,IAAI,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,iCAAqB,CAC7B,qEAAqE,QAAQ,KAAK;YAChF,mDAAmD,CACtD,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE1D,MAAM,SAAS,GAAG,IAAI,GAAG,CAAiB,kBAAkB,CAAC,CAAC;IAC9D,IAAI,eAAe,GAAG,cAAc,CAAC;IAErC,MAAM,QAAQ,GAAkB,EAAE,CAAC;IAEnC,iEAAiE;IACjE,IAAI,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,SAAS;YAEtC,IAAI,iBAAiB,GAAG,KAAK,CAAC;YAC9B,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC3C,IAAI,QAAQ,KAAK,QAAQ;oBAAE,SAAS;gBACpC,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC3D,IAAI,UAAU,GAAG,EAAE,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;oBACnC,iBAAiB,GAAG,IAAI,CAAC;oBACzB,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,iBAAiB,EAAE,CAAC;gBACtB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACrD,oEAAoE;oBACpE,oEAAoE;oBACpE,2CAA2C;oBAC3C,IAAI,QAAQ,KAAK,QAAQ;wBAAE,SAAS;oBACpC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAC7C,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;gBAC3C,CAAC;gBACD,eAAe,IAAI,IAAI,CAAC,QAAQ,CAAC;YACnC,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC3C,IAAI,QAAQ,KAAK,QAAQ,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;gBACzC,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CACnC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EACxD,EAAE,CACH,CAAC;gBACF,MAAM,IAAI,kCAAsB,CAC9B,MAAM,GAAG,cAAc,EAAE,cAAc,EAAE,QAAQ,CAClD,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,+EAA+E;IAC/E,8EAA8E;IAC9E,8EAA8E;IAC9E,MAAM,YAAY,GAAG,CAAC,CAAc,EAAW,EAAE;QAC/C,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;YAClD,IAAI,QAAQ,KAAK,QAAQ,IAAI,MAAM,GAAG,EAAE;gBAAE,OAAO,IAAI,CAAC;QACxD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,OAAO;SACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SACpC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,oBAAoB;QACnD,OAAO,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEL,MAAM,oBAAoB,GAAG,GAAW,EAAE;QACxC,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC3C,IAAI,QAAQ,KAAK,QAAQ,IAAI,MAAM,GAAG,EAAE;gBAAE,CAAC,EAAE,CAAC;QAChD,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;IACF,IAAI,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;IAE/C,IAAI,GAAG,GAAG,WAAW,CACnB,QAAQ,CAAC,MAAM,GAAG,CAAC,EACnB,UAAU,GAAG,CAAC,GAAG,iBAAiB,EAClC,QAAQ,EACR,eAAe,EACf,gBAAgB,CACjB,CAAC;IAEF,OAAO,eAAe,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACxE,MAAM,IAAI,kCAAsB,CAC9B,cAAc,GAAG,GAAG,EAAE,cAAc,EAAE,MAAM,CAC7C,CAAC;QACJ,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,eAAe,IAAI,IAAI,CAAC,QAAQ,CAAC;QAEjC,2EAA2E;QAC3E,8EAA8E;QAC9E,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACrD,IAAI,QAAQ,KAAK,QAAQ,IAAI,MAAM,IAAI,EAAE;gBAAE,SAAS;YACpD,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;QACpE,CAAC;QACD,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;QAE3C,GAAG,GAAG,WAAW,CACf,QAAQ,CAAC,MAAM,EACf,UAAU,GAAG,CAAC,GAAG,iBAAiB,EAClC,QAAQ,EACR,eAAe,EACf,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAED,mBAAmB;IACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACxE,MAAM,kBAAkB,GAAG,aAAa,GAAG,cAAc,GAAG,GAAG,CAAC;IAEhE,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC3C,IAAI,QAAQ,KAAK,QAAQ,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;YACzC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,MAAM,iBAAiB,GACrB,kBAAkB,GAAG,yBAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,MAAM,QAAQ,GACZ,kBAAkB,GAAG,yBAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,kBAAkB,CAAC;IAEvE,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;QAC9E,YAAY,EAAE,iBAAiB;QAC/B,eAAe;QACf,GAAG,EAAE,QAAQ;KACd,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chainvue/verus-sdk",
3
- "version": "0.10.0",
3
+ "version": "0.11.0",
4
4
  "description": "100% offline, fully typed TypeScript SDK for Verus transaction signing",
5
5
  "author": "Robert Lech",
6
6
  "main": "dist/bundle.js",