@babylonlabs-io/ts-sdk 0.20.0 → 0.21.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 (57) hide show
  1. package/README.md +14 -6
  2. package/dist/errors-Cbyg_QQf.cjs +2 -0
  3. package/dist/errors-Cbyg_QQf.cjs.map +1 -0
  4. package/dist/{errors-CHY4WNi-.js → errors-DvIudLXV.js} +344 -338
  5. package/dist/errors-DvIudLXV.js.map +1 -0
  6. package/dist/{index-CFwoGJNQ.js → index-BORWfdUU.js} +140 -115
  7. package/dist/index-BORWfdUU.js.map +1 -0
  8. package/dist/index-DNSV--0P.cjs +2 -0
  9. package/dist/index-DNSV--0P.cjs.map +1 -0
  10. package/dist/index.cjs +1 -1
  11. package/dist/index.js +126 -120
  12. package/dist/index.js.map +1 -1
  13. package/dist/psbtInputFields-05ZrwRzf.cjs +2 -0
  14. package/dist/psbtInputFields-05ZrwRzf.cjs.map +1 -0
  15. package/dist/{psbtInputFields-Dx41_IoI.js → psbtInputFields-r1ss6WLU.js} +93 -85
  16. package/dist/psbtInputFields-r1ss6WLU.js.map +1 -0
  17. package/dist/shared/wallets/index.d.ts +8 -0
  18. package/dist/shared/wallets/index.d.ts.map +1 -1
  19. package/dist/tbv/core/clients/index.cjs +1 -1
  20. package/dist/tbv/core/clients/index.d.ts +3 -2
  21. package/dist/tbv/core/clients/index.d.ts.map +1 -1
  22. package/dist/tbv/core/clients/index.js +1 -1
  23. package/dist/tbv/core/clients/mempool/mempoolApi.d.ts.map +1 -1
  24. package/dist/tbv/core/index.cjs +1 -1
  25. package/dist/tbv/core/index.js +122 -116
  26. package/dist/tbv/core/index.js.map +1 -1
  27. package/dist/tbv/core/managers/PeginManager.d.ts.map +1 -1
  28. package/dist/tbv/core/managers/index.d.ts +15 -62
  29. package/dist/tbv/core/managers/index.d.ts.map +1 -1
  30. package/dist/tbv/core/services/index.d.ts +2 -4
  31. package/dist/tbv/core/services/index.d.ts.map +1 -1
  32. package/dist/tbv/core/utils/index.cjs +1 -1
  33. package/dist/tbv/core/utils/index.d.ts +2 -7
  34. package/dist/tbv/core/utils/index.d.ts.map +1 -1
  35. package/dist/tbv/core/utils/index.js +37 -31
  36. package/dist/tbv/core/utils/index.js.map +1 -1
  37. package/dist/tbv/core/utils/utxo/reservation.d.ts +27 -1
  38. package/dist/tbv/core/utils/utxo/reservation.d.ts.map +1 -1
  39. package/dist/tbv/core/utils/validation.d.ts +35 -0
  40. package/dist/tbv/core/utils/validation.d.ts.map +1 -0
  41. package/dist/tbv/index.cjs +1 -1
  42. package/dist/tbv/index.js +122 -116
  43. package/dist/tbv/index.js.map +1 -1
  44. package/dist/validation-CxqROCno.js +15 -0
  45. package/dist/validation-CxqROCno.js.map +1 -0
  46. package/dist/validation-u8W7Lp2x.cjs +2 -0
  47. package/dist/validation-u8W7Lp2x.cjs.map +1 -0
  48. package/package.json +1 -1
  49. package/dist/errors-BZON3Wmn.cjs +0 -2
  50. package/dist/errors-BZON3Wmn.cjs.map +0 -1
  51. package/dist/errors-CHY4WNi-.js.map +0 -1
  52. package/dist/index-BpXpESWu.cjs +0 -2
  53. package/dist/index-BpXpESWu.cjs.map +0 -1
  54. package/dist/index-CFwoGJNQ.js.map +0 -1
  55. package/dist/psbtInputFields-C-zYR1z7.cjs +0 -2
  56. package/dist/psbtInputFields-C-zYR1z7.cjs.map +0 -1
  57. package/dist/psbtInputFields-Dx41_IoI.js.map +0 -1
@@ -1,136 +1,142 @@
1
1
  import { i as e, g as t, h as o, d as r, a as i, b as l, c as n, e as u, f as P } from "../../challengeAssert-D1lpvuMv.js";
2
- import { computeMinClaimValue as c, deriveVaultId as p } from "@babylonlabs-io/babylon-tbv-rust-wasm";
3
- import { a as g, b as S, c as A, e as E } from "../../payout-DzGsAnhf.js";
4
- import { d as m, a as _, e as b, f as x, g as f, h as I, i as v, b as U, p as C, s as y, t as h, u as O, v as V } from "../../bitcoin-nOOgeRyl.js";
5
- import { C as B, P as D, a as N, c as M, g as H } from "../../signing-DeWVBl7m.js";
6
- import { B as k, C as W, P as K, a as w, m as X, h as G, i as Y, l as J, k as j, p as Z, b as z, s as q, v as Q, g as $, d as aa, c as sa, j as ea, e as ta, f as oa, w as ra } from "../../buildAndBroadcastRefund-DnTQkCgG.js";
7
- import { B as la, D as na, F as ua, L as Pa, M as da, P as ca, a as pa, S as Ta, T as ga, W as Sa, f as Aa, b as Ea, p as Ra, r as ma } from "../../fundPeginTransaction-BLYXxLBv.js";
8
- import { B as ba, U as xa, a as fa, f as Ia, c as va, e as Ua, g as Ca, i as ya, h as ha, s as Oa, b as Va, d as Fa, v as Ba } from "../../psbtInputFields-Dx41_IoI.js";
9
- import { C as Na, P as Ma, b as Ha, c as La, a as ka, d as Wa, f as Ka, e as wa, g as Xa, h as Ga, i as Ya, j as Ja, k as ja, m as Za } from "../../errors-CHY4WNi-.js";
10
- import { A as qa, M as Qa, P as $a, V as as, i as ss, j as es, k as ts, l as os, h as rs, g as is, a as ls, b as ns, c as us, d as Ps, e as ds, f as cs, p as ps, r as Ts } from "../../index-CFwoGJNQ.js";
11
- import { B as Ss, D as As, b as Es, J as Rs, a as ms, d as _s, P as bs, R as xs, c as fs, V as Is } from "../../types-DWjaqVfP.js";
2
+ import { computeMinClaimValue as c, deriveVaultId as T } from "@babylonlabs-io/babylon-tbv-rust-wasm";
3
+ import { a as S, b as E, c as g, e as A } from "../../payout-DzGsAnhf.js";
4
+ import { d as _, a as m, e as b, f as x, g as I, h as f, i as C, b as v, p as U, s as y, t as O, u as h, v as V } from "../../bitcoin-nOOgeRyl.js";
5
+ import { C as F, P as N, a as D, c as M, g as H } from "../../signing-DeWVBl7m.js";
6
+ import { B as W, H as k, K, M as X, T as w } from "../../validation-CxqROCno.js";
7
+ import { B as Y, C as J, P as j, a as Z, m as z, h as q, i as Q, l as $, k as aa, p as sa, b as ea, s as ta, v as oa, g as ra, d as ia, c as la, j as na, e as ua, f as Pa, w as da } from "../../buildAndBroadcastRefund-DnTQkCgG.js";
8
+ import { B as Ta, D as pa, F as Sa, L as Ea, M as ga, P as Aa, a as Ra, S as _a, T as ma, W as ba, f as xa, b as Ia, p as fa, r as Ca } from "../../fundPeginTransaction-BLYXxLBv.js";
9
+ import { B as Ua, U as ya, a as Oa, f as ha, c as Va, e as Ba, g as Fa, i as Na, h as Da, s as Ma, b as Ha, d as La, v as Wa } from "../../psbtInputFields-r1ss6WLU.js";
10
+ import { C as Ka, P as Xa, b as wa, c as Ga, a as Ya, d as Ja, f as ja, e as Za, g as za, h as qa, i as Qa, j as $a, k as as, m as ss } from "../../errors-DvIudLXV.js";
11
+ import { A as ts, M as os, P as rs, V as is, i as ls, j as ns, k as us, l as Ps, h as ds, g as cs, a as Ts, b as ps, c as Ss, d as Es, e as gs, f as As, p as Rs, r as _s } from "../../index-BORWfdUU.js";
12
+ import { B as bs, D as xs, b as Is, J as fs, a as Cs, d as vs, P as Us, R as ys, c as Os, V as hs } from "../../types-DWjaqVfP.js";
12
13
  export {
13
- qa as ApplicationRegistryABI,
14
- k as BIP68NotMatureError,
15
- Ss as BTCVaultRegistryABI,
16
- la as BTC_DUST_SAT,
17
- ba as BitcoinScriptType,
18
- Na as CONTRACT_ERRORS,
19
- W as ClaimerPegoutStatusValue,
20
- B as ContractStatus,
21
- na as DUST_THRESHOLD,
22
- As as DaemonStatus,
23
- ua as FEE_SAFETY_MARGIN,
24
- Es as JSON_RPC_ERROR_CODES,
25
- Rs as JsonRpcClient,
26
- ms as JsonRpcError,
27
- Pa as LOW_RATE_ESTIMATION_ACCURACY_BUFFER,
28
- da as MAX_NON_LEGACY_OUTPUT_SIZE,
29
- Qa as MEMPOOL_API_URLS,
30
- ca as P2TR_INPUT_SIZE,
31
- pa as PEGIN_FIXED_OUTPUTS,
32
- _s as POST_WOTS_STATUSES,
33
- bs as PRE_DEPOSITOR_SIGNATURES_STATES,
34
- K as PayoutManager,
35
- D as PeginAction,
36
- Ma as PeginManager,
37
- $a as ProtocolParamsABI,
38
- xs as RpcErrorCode,
39
- Ta as SPLIT_TX_FEE_SAFETY_MULTIPLIER,
40
- ga as TX_BUFFER_SIZE_OVERHEAD,
41
- xa as UtxoNotAvailableError,
42
- fs as VP_TERMINAL_STATUSES,
43
- Is as VP_TRANSIENT_STATUSES,
44
- as as VaultProviderRpcClient,
45
- ss as ViemProtocolParamsReader,
46
- es as ViemUniversalChallengerReader,
47
- ts as ViemVaultKeeperReader,
48
- os as ViemVaultRegistryReader,
49
- rs as VpResponseValidationError,
50
- Sa as WALLET_RELAY_FEE_RATE_THRESHOLD,
51
- w as activateVault,
52
- fa as assertUtxosAvailable,
53
- X as buildAndBroadcastRefund,
14
+ ts as ApplicationRegistryABI,
15
+ Y as BIP68NotMatureError,
16
+ W as BITCOIN_ADDRESS_RE,
17
+ bs as BTCVaultRegistryABI,
18
+ Ta as BTC_DUST_SAT,
19
+ Ua as BitcoinScriptType,
20
+ Ka as CONTRACT_ERRORS,
21
+ J as ClaimerPegoutStatusValue,
22
+ F as ContractStatus,
23
+ pa as DUST_THRESHOLD,
24
+ xs as DaemonStatus,
25
+ Sa as FEE_SAFETY_MARGIN,
26
+ k as HEX_RE,
27
+ Is as JSON_RPC_ERROR_CODES,
28
+ fs as JsonRpcClient,
29
+ Cs as JsonRpcError,
30
+ K as KNOWN_SCRIPT_PREFIXES,
31
+ Ea as LOW_RATE_ESTIMATION_ACCURACY_BUFFER,
32
+ ga as MAX_NON_LEGACY_OUTPUT_SIZE,
33
+ X as MAX_REASONABLE_FEE_SATS,
34
+ os as MEMPOOL_API_URLS,
35
+ Aa as P2TR_INPUT_SIZE,
36
+ Ra as PEGIN_FIXED_OUTPUTS,
37
+ vs as POST_WOTS_STATUSES,
38
+ Us as PRE_DEPOSITOR_SIGNATURES_STATES,
39
+ j as PayoutManager,
40
+ N as PeginAction,
41
+ Xa as PeginManager,
42
+ rs as ProtocolParamsABI,
43
+ ys as RpcErrorCode,
44
+ _a as SPLIT_TX_FEE_SAFETY_MULTIPLIER,
45
+ w as TXID_RE,
46
+ ma as TX_BUFFER_SIZE_OVERHEAD,
47
+ ya as UtxoNotAvailableError,
48
+ Os as VP_TERMINAL_STATUSES,
49
+ hs as VP_TRANSIENT_STATUSES,
50
+ is as VaultProviderRpcClient,
51
+ ls as ViemProtocolParamsReader,
52
+ ns as ViemUniversalChallengerReader,
53
+ us as ViemVaultKeeperReader,
54
+ Ps as ViemVaultRegistryReader,
55
+ ds as VpResponseValidationError,
56
+ ba as WALLET_RELAY_FEE_RATE_THRESHOLD,
57
+ Z as activateVault,
58
+ Oa as assertUtxosAvailable,
59
+ z as buildAndBroadcastRefund,
54
60
  e as buildChallengeAssertPsbt,
55
61
  t as buildDepositorPayoutPsbt,
56
62
  o as buildNoPayoutPsbt,
57
- g as buildPayoutPsbt,
63
+ S as buildPayoutPsbt,
58
64
  r as buildPeginInputPsbt,
59
65
  i as buildPeginTxFromFundedPrePegin,
60
66
  l as buildPrePeginPsbt,
61
- S as buildRefundPsbt,
62
- Ia as calculateBtcTxHash,
63
- N as canPerformAction,
64
- va as collectReservedUtxoRefs,
65
- G as computeHashlock,
67
+ E as buildRefundPsbt,
68
+ ha as calculateBtcTxHash,
69
+ D as canPerformAction,
70
+ Va as collectReservedUtxoRefs,
71
+ q as computeHashlock,
66
72
  c as computeMinClaimValue,
67
73
  n as computeNumLocalChallengers,
68
- Ha as computeWotsBlockPublicKeysHash,
69
- La as computeWotsPkHash,
70
- A as createPayoutScript,
74
+ wa as computeWotsBlockPublicKeysHash,
75
+ Ga as computeWotsPkHash,
76
+ g as createPayoutScript,
71
77
  M as createTaprootScriptPathSignOptions,
72
- m as deriveNativeSegwitAddress,
73
- _ as deriveTaprootAddress,
74
- p as deriveVaultId,
75
- ka as deriveWotsBlockPublicKeys,
76
- Wa as deriveWotsKeypair,
77
- Ka as deriveWotsPkHash,
78
+ _ as deriveNativeSegwitAddress,
79
+ m as deriveTaprootAddress,
80
+ T as deriveVaultId,
81
+ Ya as deriveWotsBlockPublicKeys,
82
+ Ja as deriveWotsKeypair,
83
+ ja as deriveWotsPkHash,
78
84
  b as ensureHexPrefix,
79
- wa as extractErrorData,
80
- Ua as extractInputsFromTransaction,
81
- E as extractPayoutSignature,
85
+ Za as extractErrorData,
86
+ Ba as extractInputsFromTransaction,
87
+ A as extractPayoutSignature,
82
88
  u as extractPeginInputSignature,
83
89
  P as finalizePeginInputPsbt,
84
90
  x as formatSatoshisToBtc,
85
- Aa as fundPeginTransaction,
86
- is as getAddressTxs,
87
- ls as getAddressUtxos,
88
- Xa as getContractErrorMessage,
89
- Ca as getDustThreshold,
90
- ns as getMempoolApiUrl,
91
- f as getNetwork,
92
- us as getNetworkFees,
91
+ xa as fundPeginTransaction,
92
+ cs as getAddressTxs,
93
+ Ts as getAddressUtxos,
94
+ za as getContractErrorMessage,
95
+ Fa as getDustThreshold,
96
+ ps as getMempoolApiUrl,
97
+ I as getNetwork,
98
+ Ss as getNetworkFees,
93
99
  H as getPeginProtocolState,
94
- ya as getPsbtInputFields,
95
- ha as getScriptType,
96
- Ps as getTxHex,
97
- ds as getTxInfo,
98
- cs as getUtxoInfo,
99
- Ga as handleContractError,
100
- I as hexToUint8Array,
101
- v as isAddressFromPublicKey,
102
- Y as isDepositAmountValid,
103
- Ya as isKnownContractError,
104
- J as isPegoutTerminalStatus,
105
- j as isRecognizedPegoutStatus,
106
- U as isValidHex,
107
- Ja as isWotsMismatchError,
108
- ja as keypairToPublicKey,
109
- Za as mnemonicToWotsSeed,
110
- Ea as parseUnfundedWasmTransaction,
111
- Ra as peginOutputCount,
112
- Z as pollAndSignPayouts,
113
- C as processPublicKeyToXOnly,
114
- ps as pushTx,
115
- ma as rateBasedTxBufferFee,
116
- Ts as resolveProtocolAddresses,
117
- Oa as selectUtxosForDeposit,
118
- Va as selectUtxosForPegin,
119
- Fa as shouldAddChangeOutput,
120
- z as signDepositorGraph,
100
+ Na as getPsbtInputFields,
101
+ Da as getScriptType,
102
+ Es as getTxHex,
103
+ gs as getTxInfo,
104
+ As as getUtxoInfo,
105
+ qa as handleContractError,
106
+ f as hexToUint8Array,
107
+ C as isAddressFromPublicKey,
108
+ Q as isDepositAmountValid,
109
+ Qa as isKnownContractError,
110
+ $ as isPegoutTerminalStatus,
111
+ aa as isRecognizedPegoutStatus,
112
+ v as isValidHex,
113
+ $a as isWotsMismatchError,
114
+ as as keypairToPublicKey,
115
+ ss as mnemonicToWotsSeed,
116
+ Ia as parseUnfundedWasmTransaction,
117
+ fa as peginOutputCount,
118
+ sa as pollAndSignPayouts,
119
+ U as processPublicKeyToXOnly,
120
+ Rs as pushTx,
121
+ Ca as rateBasedTxBufferFee,
122
+ _s as resolveProtocolAddresses,
123
+ Ma as selectUtxosForDeposit,
124
+ Ha as selectUtxosForPegin,
125
+ La as shouldAddChangeOutput,
126
+ ea as signDepositorGraph,
121
127
  y as stripHexPrefix,
122
- q as submitWotsPublicKey,
123
- h as toXOnly,
124
- O as uint8ArrayToHex,
125
- Q as validateDepositAmount,
126
- $ as validateMultiVaultDepositInputs,
127
- aa as validateProviderSelection,
128
- sa as validateRemainingCapacity,
129
- ea as validateSecretAgainstHashlock,
130
- Ba as validateUtxosAvailable,
131
- ta as validateVaultAmounts,
132
- oa as validateVaultProviderPubkey,
128
+ ta as submitWotsPublicKey,
129
+ O as toXOnly,
130
+ h as uint8ArrayToHex,
131
+ oa as validateDepositAmount,
132
+ ra as validateMultiVaultDepositInputs,
133
+ ia as validateProviderSelection,
134
+ la as validateRemainingCapacity,
135
+ na as validateSecretAgainstHashlock,
136
+ Wa as validateUtxosAvailable,
137
+ ua as validateVaultAmounts,
138
+ Pa as validateVaultProviderPubkey,
133
139
  V as validateWalletPubkey,
134
- ra as waitForPeginStatus
140
+ da as waitForPeginStatus
135
141
  };
136
142
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"PeginManager.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/managers/PeginManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PeginManager.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/managers/PeginManager.ts"],"names":[],"mappings":"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"}
@@ -1,68 +1,21 @@
1
1
  /**
2
2
  * @packageDocumentation
3
3
  *
4
- * # Manager Layer - Wallet Orchestration (Level 2)
5
- *
6
- * High-level managers that orchestrate complex flows using primitives and utilities.
7
- * These managers accept wallet interfaces and handle the complete operation lifecycle.
8
- *
9
- * ## Architecture
10
- *
11
- * Managers sit between your application and the primitives layer:
12
- *
13
- * ```
14
- * Your Application
15
- *
16
- * Managers (Level 2) This module
17
- *
18
- * Primitives (Level 1) ← Pure functions
19
- * ↓
20
- * WASM (Rust Core) ← Cryptographic operations
21
- * ```
22
- *
23
- * ## When to Use Managers
24
- *
25
- * Use managers when you have:
26
- * - **Frontend apps** with browser wallet integration (UniSat, OKX, etc.)
27
- * - **Quick integration** needs with minimal code
28
- * - **Standard flows** that don't require custom signing logic
29
- *
30
- * Use primitives instead when you need:
31
- * - Backend services with KMS/HSM signing
32
- * - Full control over every operation
33
- * - Custom wallet integrations
34
- *
35
- * ## Available Managers
36
- *
37
- * ### {@link PeginManager}
38
- * Orchestrates the peg-in flow:
39
- * - {@link PeginManager.preparePegin | preparePegin()} - Build Pre-PegIn HTLC and sign PegIn input
40
- * - {@link PeginManager.registerPeginOnChain | registerPeginOnChain()} - Submit to Ethereum
41
- * - {@link PeginManager.signAndBroadcast | signAndBroadcast()} - Broadcast to Bitcoin
42
- *
43
- * ### {@link PayoutManager}
44
- * Signs payout authorization transactions (Step 3 of peg-in).
45
- * - {@link PayoutManager.signPayoutTransaction | signPayoutTransaction()} - Sign payout (uses Assert tx as reference)
46
- *
47
- * ## Complete Peg-in Flow
48
- *
49
- * The 4-step peg-in flow uses both managers:
50
- *
51
- * | Step | Manager | Method |
52
- * |------|---------|--------|
53
- * | 1 | PeginManager | `preparePegin()` |
54
- * | 2 | PeginManager | `registerPeginOnChain()` |
55
- * | 3 | PayoutManager | `signPayoutTransaction()` |
56
- * | 4 | PeginManager | `signAndBroadcast()` |
57
- *
58
- * **Step 3 Details:** The vault provider provides 3 transactions per claimer:
59
- * - `claim_tx` - Claim transaction
60
- * - `assert_tx` - Assert transaction
61
- * - `payout_tx` - Payout transaction
62
- *
63
- * You must sign the Payout transaction (uses assert_tx as input reference) for each claimer.
64
- *
65
- * @see {@link https://github.com/babylonlabs-io/babylon-toolkit/blob/main/packages/babylon-ts-sdk/docs/quickstart/managers.md | Managers Quickstart}
4
+ * Wallet-owning orchestration for the vault lifecycle. A vault goes from creation
5
+ * to `ACTIVE` through five phases — {@link https://github.com/babylonlabs-io/babylon-toolkit/blob/main/packages/babylon-ts-sdk/docs/quickstart/managers.md | Managers Quickstart}
6
+ * walks through them. A vault at `VERIFIED` is not done: the depositor must
7
+ * reveal the HTLC secret via `activateVault()` (services layer) or the vault
8
+ * expires.
9
+ *
10
+ * | # | Phase | SDK entry point | Contract status after |
11
+ * |---|-------|-----------------|-----------------------|
12
+ * | 1 | Prepare Pre-PegIn + PegIn txs | `PeginManager.preparePegin()` | n/a (off-chain) |
13
+ * | 2 | Register on Ethereum | `PeginManager.registerPeginOnChain()` | `PENDING` |
14
+ * | 3 | Broadcast Pre-PegIn on Bitcoin | `PeginManager.signAndBroadcast()` | still `PENDING` until VP observes the tx |
15
+ * | 4 | Sign payout authorisations | `pollAndSignPayouts()` (services, delegates to `PayoutManager`) | `PENDING` → `VERIFIED` |
16
+ * | 5 | Activate by revealing HTLC secret | `activateVault()` (services) | `VERIFIED` → `ACTIVE` |
17
+ *
18
+ * Optional exit after the CSV timelock expires: `buildAndBroadcastRefund()` (services).
66
19
  *
67
20
  * @module managers
68
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/managers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACtD,YAAY,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,MAAM,kDAAkD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/managers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACtD,YAAY,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,MAAM,kDAAkD,CAAC"}
@@ -1,8 +1,6 @@
1
1
  /**
2
- * Deposit Protocol Services
3
- *
4
- * Stateless composable functions for the vault deposit protocol.
5
- * All functions accept narrow interfaces, not concrete client classes.
2
+ * Stateless flow helpers that compose primitives + utils with injected I/O callbacks.
3
+ * Callers own the wallet; services own the orchestration.
6
4
  *
7
5
  * @module services
8
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/services/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/services/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("../../../signing-cl-lowxV.cjs"),t=require("../../../fundPeginTransaction-DxNOeyNI.cjs"),e=require("../../../psbtInputFields-C-zYR1z7.cjs"),s=require("../../../bitcoin-CNnPFU6Y.cjs");exports.createTaprootScriptPathSignOptions=T.createTaprootScriptPathSignOptions;exports.BTC_DUST_SAT=t.BTC_DUST_SAT;exports.DUST_THRESHOLD=t.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=t.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=t.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=t.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=t.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=t.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=t.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=t.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=t.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.fundPeginTransaction=t.fundPeginTransaction;exports.parseUnfundedWasmTransaction=t.parseUnfundedWasmTransaction;exports.peginOutputCount=t.peginOutputCount;exports.rateBasedTxBufferFee=t.rateBasedTxBufferFee;exports.BitcoinScriptType=e.BitcoinScriptType;exports.UtxoNotAvailableError=e.UtxoNotAvailableError;exports.assertUtxosAvailable=e.assertUtxosAvailable;exports.calculateBtcTxHash=e.calculateBtcTxHash;exports.collectReservedUtxoRefs=e.collectReservedUtxoRefs;exports.extractInputsFromTransaction=e.extractInputsFromTransaction;exports.getDustThreshold=e.getDustThreshold;exports.getPsbtInputFields=e.getPsbtInputFields;exports.getScriptType=e.getScriptType;exports.selectUtxosForDeposit=e.selectUtxosForDeposit;exports.selectUtxosForPegin=e.selectUtxosForPegin;exports.shouldAddChangeOutput=e.shouldAddChangeOutput;exports.validateUtxosAvailable=e.validateUtxosAvailable;exports.getNetwork=s.getNetwork;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("../../../signing-cl-lowxV.cjs"),E=require("../../../validation-u8W7Lp2x.cjs"),t=require("../../../fundPeginTransaction-DxNOeyNI.cjs"),e=require("../../../psbtInputFields-05ZrwRzf.cjs"),_=require("../../../bitcoin-CNnPFU6Y.cjs");exports.createTaprootScriptPathSignOptions=T.createTaprootScriptPathSignOptions;exports.BITCOIN_ADDRESS_RE=E.BITCOIN_ADDRESS_RE;exports.HEX_RE=E.HEX_RE;exports.KNOWN_SCRIPT_PREFIXES=E.KNOWN_SCRIPT_PREFIXES;exports.MAX_REASONABLE_FEE_SATS=E.MAX_REASONABLE_FEE_SATS;exports.TXID_RE=E.TXID_RE;exports.BTC_DUST_SAT=t.BTC_DUST_SAT;exports.DUST_THRESHOLD=t.DUST_THRESHOLD;exports.FEE_SAFETY_MARGIN=t.FEE_SAFETY_MARGIN;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=t.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=t.MAX_NON_LEGACY_OUTPUT_SIZE;exports.P2TR_INPUT_SIZE=t.P2TR_INPUT_SIZE;exports.PEGIN_FIXED_OUTPUTS=t.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=t.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=t.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=t.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.fundPeginTransaction=t.fundPeginTransaction;exports.parseUnfundedWasmTransaction=t.parseUnfundedWasmTransaction;exports.peginOutputCount=t.peginOutputCount;exports.rateBasedTxBufferFee=t.rateBasedTxBufferFee;exports.BitcoinScriptType=e.BitcoinScriptType;exports.UtxoNotAvailableError=e.UtxoNotAvailableError;exports.assertUtxosAvailable=e.assertUtxosAvailable;exports.calculateBtcTxHash=e.calculateBtcTxHash;exports.collectReservedUtxoRefs=e.collectReservedUtxoRefs;exports.extractInputsFromTransaction=e.extractInputsFromTransaction;exports.getDustThreshold=e.getDustThreshold;exports.getPsbtInputFields=e.getPsbtInputFields;exports.getScriptType=e.getScriptType;exports.selectUtxosForDeposit=e.selectUtxosForDeposit;exports.selectUtxosForPegin=e.selectUtxosForPegin;exports.shouldAddChangeOutput=e.shouldAddChangeOutput;exports.validateUtxosAvailable=e.validateUtxosAvailable;exports.getNetwork=_.getNetwork;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,11 +1,5 @@
1
1
  /**
2
- * SDK Level 2 Utilities
3
- *
4
- * Transaction building utilities including:
5
- * - Fee calculation constants
6
- * - UTXO selection
7
- * - Transaction funding
8
- * - Bitcoin script utilities
2
+ * Pure helpers for the primitives and services layers. No wallet, no network, no contract state.
9
3
  *
10
4
  * @module utils
11
5
  */
@@ -14,4 +8,5 @@ export * from './utxo';
14
8
  export * from './transaction';
15
9
  export * from './btc';
16
10
  export * from './signing';
11
+ export * from './validation';
17
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC"}
@@ -1,36 +1,42 @@
1
1
  import { c as t } from "../../../signing-DeWVBl7m.js";
2
- import { B as T, D as o, F as r, L as _, M as E, P as i, a as n, S as p, T as U, W as c, f as A, b as S, p as l, r as F } from "../../../fundPeginTransaction-BLYXxLBv.js";
3
- import { B as R, U as u, a as x, f as d, c as P, e as f, g, i as L, h as O, s as B, b as D, d as N, v as h } from "../../../psbtInputFields-Dx41_IoI.js";
4
- import { g as b } from "../../../bitcoin-nOOgeRyl.js";
2
+ import { B as E, H as T, K as _, M as o, T as r } from "../../../validation-CxqROCno.js";
3
+ import { B as A, D as R, F as i, L as p, M as n, P as I, a as U, S as c, T as F, W as l, f as x, b as O, p as P, r as u } from "../../../fundPeginTransaction-BLYXxLBv.js";
4
+ import { B as f, U as B, a as D, f as L, c as N, e as g, g as C, i as H, h as X, s as h, b as m, d as M, v as b } from "../../../psbtInputFields-r1ss6WLU.js";
5
+ import { g as W } from "../../../bitcoin-nOOgeRyl.js";
5
6
  export {
6
- T as BTC_DUST_SAT,
7
- R as BitcoinScriptType,
8
- o as DUST_THRESHOLD,
9
- r as FEE_SAFETY_MARGIN,
10
- _ as LOW_RATE_ESTIMATION_ACCURACY_BUFFER,
11
- E as MAX_NON_LEGACY_OUTPUT_SIZE,
12
- i as P2TR_INPUT_SIZE,
13
- n as PEGIN_FIXED_OUTPUTS,
14
- p as SPLIT_TX_FEE_SAFETY_MULTIPLIER,
15
- U as TX_BUFFER_SIZE_OVERHEAD,
16
- u as UtxoNotAvailableError,
17
- c as WALLET_RELAY_FEE_RATE_THRESHOLD,
18
- x as assertUtxosAvailable,
19
- d as calculateBtcTxHash,
20
- P as collectReservedUtxoRefs,
7
+ E as BITCOIN_ADDRESS_RE,
8
+ A as BTC_DUST_SAT,
9
+ f as BitcoinScriptType,
10
+ R as DUST_THRESHOLD,
11
+ i as FEE_SAFETY_MARGIN,
12
+ T as HEX_RE,
13
+ _ as KNOWN_SCRIPT_PREFIXES,
14
+ p as LOW_RATE_ESTIMATION_ACCURACY_BUFFER,
15
+ n as MAX_NON_LEGACY_OUTPUT_SIZE,
16
+ o as MAX_REASONABLE_FEE_SATS,
17
+ I as P2TR_INPUT_SIZE,
18
+ U as PEGIN_FIXED_OUTPUTS,
19
+ c as SPLIT_TX_FEE_SAFETY_MULTIPLIER,
20
+ r as TXID_RE,
21
+ F as TX_BUFFER_SIZE_OVERHEAD,
22
+ B as UtxoNotAvailableError,
23
+ l as WALLET_RELAY_FEE_RATE_THRESHOLD,
24
+ D as assertUtxosAvailable,
25
+ L as calculateBtcTxHash,
26
+ N as collectReservedUtxoRefs,
21
27
  t as createTaprootScriptPathSignOptions,
22
- f as extractInputsFromTransaction,
23
- A as fundPeginTransaction,
24
- g as getDustThreshold,
25
- b as getNetwork,
26
- L as getPsbtInputFields,
27
- O as getScriptType,
28
- S as parseUnfundedWasmTransaction,
29
- l as peginOutputCount,
30
- F as rateBasedTxBufferFee,
31
- B as selectUtxosForDeposit,
32
- D as selectUtxosForPegin,
33
- N as shouldAddChangeOutput,
34
- h as validateUtxosAvailable
28
+ g as extractInputsFromTransaction,
29
+ x as fundPeginTransaction,
30
+ C as getDustThreshold,
31
+ W as getNetwork,
32
+ H as getPsbtInputFields,
33
+ X as getScriptType,
34
+ O as parseUnfundedWasmTransaction,
35
+ P as peginOutputCount,
36
+ u as rateBasedTxBufferFee,
37
+ h as selectUtxosForDeposit,
38
+ m as selectUtxosForPegin,
39
+ M as shouldAddChangeOutput,
40
+ b as validateUtxosAvailable
35
41
  };
36
42
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -11,6 +11,12 @@ export interface UtxoRef {
11
11
  }
12
12
  /** Narrow structural type for pending pegin data. */
13
13
  export interface PendingPeginLike {
14
+ /**
15
+ * Optional vault id. When present, used to skip pending pegins that are
16
+ * already indexed on-chain so the canonical vault copy wins over a
17
+ * tamperable off-chain entry.
18
+ */
19
+ id?: string;
14
20
  selectedUTXOs?: Array<{
15
21
  txid: string;
16
22
  vout: number;
@@ -19,6 +25,11 @@ export interface PendingPeginLike {
19
25
  }
20
26
  /** Narrow structural type for vault data. */
21
27
  export interface VaultLike {
28
+ /**
29
+ * Optional vault id. When present, enables on-chain correlation with
30
+ * pending pegins sharing the same id.
31
+ */
32
+ id?: string;
22
33
  status: number;
23
34
  unsignedPrePeginTx: string;
24
35
  }
@@ -41,7 +52,22 @@ export interface CollectReservedUtxoRefsParams {
41
52
  pendingPegins?: PendingPeginLike[];
42
53
  }
43
54
  /**
44
- * Collect UTXO refs from in-flight deposits (PENDING/VERIFIED vaults and pending pegins).
55
+ * Collect UTXO refs from in-flight deposits (PENDING/VERIFIED vaults and
56
+ * pending pegins).
57
+ *
58
+ * On-chain vault data is canonical: for any pending pegin whose `id` matches
59
+ * an indexed on-chain vault, the pending-pegin copy is ignored entirely —
60
+ * the `vaults` branch below extracts refs from the indexer-supplied
61
+ * `unsignedPrePeginTx` so tampered off-chain data cannot poison the
62
+ * reservation set once the vault is indexed.
63
+ *
64
+ * For pegins not yet indexed, refs are derived from the stored
65
+ * `unsignedTxHex` only. The `selectedUTXOs` sidecar is NOT used for
66
+ * reservation: if it disagreed with the transaction's inputs (e.g. because
67
+ * the off-chain source was tampered), trusting it would poison the reserved
68
+ * set. The transaction hex must be validated at the source boundary before
69
+ * being handed to this function; parsing and using its inputs is the single
70
+ * source of truth here.
45
71
  */
46
72
  export declare function collectReservedUtxoRefs(params: CollectReservedUtxoRefsParams): UtxoRef[];
47
73
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"reservation.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/utils/utxo/reservation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,+DAA+D;AAC/D,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qDAAqD;AACrD,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,6CAA6C;AAC7C,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,2BAA2B,CAC1C,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;IAEvD,2CAA2C;IAC3C,cAAc,EAAE,CAAC,EAAE,CAAC;IACpB,2EAA2E;IAC3E,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,4DAA4D;IAC5D,cAAc,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACpC;AA6DD;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,6BAA6B,GACpC,OAAO,EAAE,CA2BX;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CACnC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACvD,MAAM,EAAE,2BAA2B,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAuC7C"}
1
+ {"version":3,"file":"reservation.d.ts","sourceRoot":"","sources":["../../../../../src/tbv/core/utils/utxo/reservation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,+DAA+D;AAC/D,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qDAAqD;AACrD,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,aAAa,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,6CAA6C;AAC7C,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,2BAA2B,CAC1C,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE;IAEvD,2CAA2C;IAC3C,cAAc,EAAE,CAAC,EAAE,CAAC;IACpB,2EAA2E;IAC3E,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,4DAA4D;IAC5D,cAAc,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACpC;AA2ED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,6BAA6B,GACpC,OAAO,EAAE,CA8BX;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CACnC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EACvD,MAAM,EAAE,2BAA2B,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAuC7C"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Shared validation constants for Bitcoin-related input sanitization.
3
+ *
4
+ * These are used across mempool API clients, broadcast services, and
5
+ * transaction construction to enforce consistent format checks.
6
+ */
7
+ /** Non-empty string of hexadecimal characters (case-insensitive). */
8
+ export declare const HEX_RE: RegExp;
9
+ /** Bitcoin txid: exactly 64 hex characters (32 bytes). */
10
+ export declare const TXID_RE: RegExp;
11
+ /**
12
+ * Bitcoin address format gate: 25–90 alphanumeric characters.
13
+ * Covers legacy (P2PKH/P2SH), bech32 (P2WPKH/P2WSH), bech32m (P2TR),
14
+ * and regtest addresses (bcrt1... which are 62–64 chars for 32-byte witness programs).
15
+ * Upper bound of 90 provides headroom for future address formats.
16
+ * This is a format gate to prevent path-traversal — not full address validation.
17
+ */
18
+ export declare const BITCOIN_ADDRESS_RE: RegExp;
19
+ /**
20
+ * Known Bitcoin scriptPubKey prefixes:
21
+ * - P2PKH: 76a914...88ac (25 bytes)
22
+ * - P2SH: a914...87 (23 bytes)
23
+ * - P2WPKH: 0014... (22 bytes)
24
+ * - P2WSH: 0020... (34 bytes)
25
+ * - P2TR: 5120... (34 bytes)
26
+ */
27
+ export declare const KNOWN_SCRIPT_PREFIXES: readonly ["76a914", "a914", "0014", "0020", "5120"];
28
+ /**
29
+ * Upper bound on the implied miner fee (0.01 BTC = 1,000,000 sats).
30
+ * Catches inflated input values from a compromised mempool API — if inputs are
31
+ * grossly overstated the implied fee becomes unreasonably large. The April 2024
32
+ * Runes spike saw ~450 sat/vB; at 500 vB that's ~225k sats, well under this cap.
33
+ */
34
+ export declare const MAX_REASONABLE_FEE_SATS = 1000000n;
35
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,qEAAqE;AACrE,eAAO,MAAM,MAAM,QAAmB,CAAC;AAEvC,0DAA0D;AAC1D,eAAO,MAAM,OAAO,QAAsB,CAAC;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,QAAyB,CAAC;AAEzD;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,qDAMxB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,WAAa,CAAC"}