@babylonlabs-io/ts-sdk 0.63.0 → 0.64.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.
- package/dist/{PeginManager-ozwQaRwj.js → PeginManager-BBl4xkWz.js} +5 -4
- package/dist/{PeginManager-ozwQaRwj.js.map → PeginManager-BBl4xkWz.js.map} +1 -1
- package/dist/{PeginManager-n__EsW8a.cjs → PeginManager-p-ajwSxG.cjs} +2 -2
- package/dist/{PeginManager-n__EsW8a.cjs.map → PeginManager-p-ajwSxG.cjs.map} +1 -1
- package/dist/{buildAndBroadcastRefund-DpfBZfLw.js → buildAndBroadcastRefund-C2fP3Rva.js} +4 -4
- package/dist/{buildAndBroadcastRefund-DpfBZfLw.js.map → buildAndBroadcastRefund-C2fP3Rva.js.map} +1 -1
- package/dist/{buildAndBroadcastRefund-DsCd90qJ.cjs → buildAndBroadcastRefund-CYtnT0D_.cjs} +2 -2
- package/dist/{buildAndBroadcastRefund-DsCd90qJ.cjs.map → buildAndBroadcastRefund-CYtnT0D_.cjs.map} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +156 -145
- package/dist/{noPayout-oaUVsEjk.js → noPayout-BaZGRLD2.js} +2 -2
- package/dist/{noPayout-oaUVsEjk.js.map → noPayout-BaZGRLD2.js.map} +1 -1
- package/dist/{noPayout-CbxQqBw1.cjs → noPayout-CnQ1WLtr.cjs} +2 -2
- package/dist/{noPayout-CbxQqBw1.cjs.map → noPayout-CnQ1WLtr.cjs.map} +1 -1
- package/dist/reconstructPeginParams-BVA67Iv8.js +400 -0
- package/dist/reconstructPeginParams-BVA67Iv8.js.map +1 -0
- package/dist/reconstructPeginParams-BmUVK7F_.cjs +2 -0
- package/dist/reconstructPeginParams-BmUVK7F_.cjs.map +1 -0
- package/dist/{signPsbtsWithFallback-DC4rUCsy.js → signPsbtsWithFallback-Bb66DfY5.js} +2 -2
- package/dist/{signPsbtsWithFallback-DC4rUCsy.js.map → signPsbtsWithFallback-Bb66DfY5.js.map} +1 -1
- package/dist/{signPsbtsWithFallback-DbOmw8Ou.cjs → signPsbtsWithFallback-PTgWxsG3.cjs} +2 -2
- package/dist/{signPsbtsWithFallback-DbOmw8Ou.cjs.map → signPsbtsWithFallback-PTgWxsG3.cjs.map} +1 -1
- package/dist/tbv/core/index.cjs +1 -1
- package/dist/tbv/core/index.d.ts +3 -0
- package/dist/tbv/core/index.d.ts.map +1 -1
- package/dist/tbv/core/index.js +151 -140
- package/dist/tbv/core/managers/index.cjs +1 -1
- package/dist/tbv/core/managers/index.js +2 -2
- package/dist/tbv/core/primitives/index.cjs +1 -1
- package/dist/tbv/core/primitives/index.js +2 -2
- package/dist/tbv/core/primitives/psbt/assertWasmPeginSizing.d.ts +16 -2
- package/dist/tbv/core/primitives/psbt/assertWasmPeginSizing.d.ts.map +1 -1
- package/dist/tbv/core/recovery/__tests__/deriveHashlocksFromPrePegin.test.d.ts +10 -0
- package/dist/tbv/core/recovery/__tests__/deriveHashlocksFromPrePegin.test.d.ts.map +1 -0
- package/dist/tbv/core/recovery/__tests__/peginSizingIntegrity.test.d.ts +16 -0
- package/dist/tbv/core/recovery/__tests__/peginSizingIntegrity.test.d.ts.map +1 -0
- package/dist/tbv/core/recovery/__tests__/reconstructPeginParams.test.d.ts +14 -0
- package/dist/tbv/core/recovery/__tests__/reconstructPeginParams.test.d.ts.map +1 -0
- package/dist/tbv/core/recovery/deriveHashlocksFromPrePegin.d.ts +37 -0
- package/dist/tbv/core/recovery/deriveHashlocksFromPrePegin.d.ts.map +1 -0
- package/dist/tbv/core/recovery/index.d.ts +18 -0
- package/dist/tbv/core/recovery/index.d.ts.map +1 -0
- package/dist/tbv/core/recovery/peginParamsCandidates.d.ts +98 -0
- package/dist/tbv/core/recovery/peginParamsCandidates.d.ts.map +1 -0
- package/dist/tbv/core/recovery/reconstructPeginParams.d.ts +112 -0
- package/dist/tbv/core/recovery/reconstructPeginParams.d.ts.map +1 -0
- package/dist/tbv/core/recovery/recoveryErrors.d.ts +97 -0
- package/dist/tbv/core/recovery/recoveryErrors.d.ts.map +1 -0
- package/dist/tbv/core/services/index.cjs +1 -1
- package/dist/tbv/core/services/index.js +2 -2
- package/dist/tbv/index.cjs +1 -1
- package/dist/tbv/index.js +151 -140
- package/dist/verifyScriptPathSchnorrSignature-DPAd_qke.cjs +2 -0
- package/dist/verifyScriptPathSchnorrSignature-DPAd_qke.cjs.map +1 -0
- package/dist/{verifyScriptPathSchnorrSignature-XsICweGG.js → verifyScriptPathSchnorrSignature-i-koT139.js} +176 -170
- package/dist/verifyScriptPathSchnorrSignature-i-koT139.js.map +1 -0
- package/package.json +1 -1
- package/dist/errors-BXzrXswV.js +0 -137
- package/dist/errors-BXzrXswV.js.map +0 -1
- package/dist/errors-BzBVottO.cjs +0 -2
- package/dist/errors-BzBVottO.cjs.map +0 -1
- package/dist/verifyScriptPathSchnorrSignature-B8zK1ctE.cjs +0 -2
- package/dist/verifyScriptPathSchnorrSignature-B8zK1ctE.cjs.map +0 -1
- package/dist/verifyScriptPathSchnorrSignature-XsICweGG.js.map +0 -1
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Address } from 'viem';
|
|
2
|
+
/** One versioned offchain-params snapshot, flattened to what a trial needs. */
|
|
3
|
+
export interface OffchainParamsCandidate {
|
|
4
|
+
/** `offchainParamsVersion` stamp this snapshot would restore. */
|
|
5
|
+
version: number;
|
|
6
|
+
/** `VersionedOffchainParams.feeRate`. */
|
|
7
|
+
protocolFeeRate: bigint;
|
|
8
|
+
minPeginFeeRate: bigint;
|
|
9
|
+
councilQuorum: number;
|
|
10
|
+
/** `VersionedOffchainParams.securityCouncilKeys.length`. */
|
|
11
|
+
councilSize: number;
|
|
12
|
+
/** `getTimelockPeginByVersion(version)` — not a field on the params struct. */
|
|
13
|
+
timelockPegin: number;
|
|
14
|
+
timelockAssert: number;
|
|
15
|
+
/** `VersionedOffchainParams.tRefund` — the only scalar here that reaches the HTLC scriptPubKey. */
|
|
16
|
+
timelockRefund: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* One participant key set: a vault provider plus the two rosters at the
|
|
20
|
+
* versions the vault was stamped with.
|
|
21
|
+
*
|
|
22
|
+
* Every key here must be an RFC-006 **operation** key resolved at that
|
|
23
|
+
* participant's own key epoch, and the two roster arrays must be sorted —
|
|
24
|
+
* exactly what `resolveParticipantKeysAtEpochs` produces as
|
|
25
|
+
* `vaultKeeperOperationKeysSorted` / `universalChallengerOperationKeysSorted`.
|
|
26
|
+
* Registration keys are NOT interchangeable: they only coincide with operation
|
|
27
|
+
* keys while nobody has rotated, so passing them yields a wrong script on every
|
|
28
|
+
* candidate and a not-found that wrongly implies the true set was tried.
|
|
29
|
+
*
|
|
30
|
+
* The three epochs are stamped independently by three registries, so a mixed
|
|
31
|
+
* state — the vault provider rotated before this deposit, a challenger after —
|
|
32
|
+
* is ordinary rather than impossible. That is why epochs are resolved per
|
|
33
|
+
* participant from the `PegInSubmitted` log rather than chosen as one
|
|
34
|
+
* all-genesis or all-current policy.
|
|
35
|
+
*/
|
|
36
|
+
export interface ParticipantKeySetCandidate {
|
|
37
|
+
vaultProvider: Address;
|
|
38
|
+
/** x-only operation-key hex (no `0x`) at the vault's `vpKeyEpoch`. */
|
|
39
|
+
vaultProviderBtcPubkey: string;
|
|
40
|
+
appVaultKeepersVersion: number;
|
|
41
|
+
/** Sorted operation keys at the vault's `appKeeperKeyEpoch`. */
|
|
42
|
+
vaultKeeperBtcPubkeys: readonly string[];
|
|
43
|
+
universalChallengersVersion: number;
|
|
44
|
+
/** Sorted operation keys at the vault's `ucKeyEpoch`. */
|
|
45
|
+
universalChallengerBtcPubkeys: readonly string[];
|
|
46
|
+
}
|
|
47
|
+
/** A fully-determined parameter set to trial against the funded Pre-PegIn. */
|
|
48
|
+
export interface PeginParamsCandidate {
|
|
49
|
+
/**
|
|
50
|
+
* Stamped tx-graph version (NOT the chain-active one). Carried so the result
|
|
51
|
+
* describes itself, but constant across a candidate space — see the module
|
|
52
|
+
* note on why it cannot be searched.
|
|
53
|
+
*/
|
|
54
|
+
vaultCoreVersion: number;
|
|
55
|
+
offchainParams: OffchainParamsCandidate;
|
|
56
|
+
participants: ParticipantKeySetCandidate;
|
|
57
|
+
}
|
|
58
|
+
export interface BuildPeginParamsCandidatesInput {
|
|
59
|
+
/**
|
|
60
|
+
* The tx-graph version the stranded deposit was built with. A scalar, not a
|
|
61
|
+
* list: the transaction cannot discriminate it, so this is taken on trust.
|
|
62
|
+
* Read it from the orphaned `PegInSubmitted` log — `activeVaultCoreVersion()`
|
|
63
|
+
* is the current version and is wrong for any deposit that predates a bump.
|
|
64
|
+
*/
|
|
65
|
+
vaultCoreVersion: number;
|
|
66
|
+
offchainParams: readonly OffchainParamsCandidate[];
|
|
67
|
+
participantKeySets: readonly ParticipantKeySetCandidate[];
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Expand the two searchable axes into the flat candidate list
|
|
71
|
+
* `reconstructPeginParams` trials.
|
|
72
|
+
*
|
|
73
|
+
* With the parameters read from the `PegInSubmitted` log this is called with
|
|
74
|
+
* one entry per axis and produces a single candidate to verify. The
|
|
75
|
+
* multi-element form is the fallback search.
|
|
76
|
+
*/
|
|
77
|
+
export declare function buildPeginParamsCandidates(input: BuildPeginParamsCandidatesInput): PeginParamsCandidate[];
|
|
78
|
+
/** Which enumeration a version belongs to. */
|
|
79
|
+
export type CandidateAxis = "offchainParams" | "vaultKeepers" | "universalChallengers";
|
|
80
|
+
/**
|
|
81
|
+
* A version the caller enumerated over but could not resolve into candidate
|
|
82
|
+
* data — dropped by `fetchAllOffchainParams`'s validation, or reported to a
|
|
83
|
+
* roster loop's `onSkippedVersion` observer.
|
|
84
|
+
*
|
|
85
|
+
* Recorded rather than ignored because an unresolved version is UNRESOLVABLE,
|
|
86
|
+
* not absent: it may be the very version that stamped the stranded vault, and
|
|
87
|
+
* a search space missing its answer can still return a confident look-alike.
|
|
88
|
+
*/
|
|
89
|
+
export interface UnresolvedVersion {
|
|
90
|
+
axis: CandidateAxis;
|
|
91
|
+
version: number;
|
|
92
|
+
reason: string;
|
|
93
|
+
}
|
|
94
|
+
/** Compact identity of an unresolved version, for error messages. */
|
|
95
|
+
export declare function describeUnresolvedVersion(unresolved: UnresolvedVersion): string;
|
|
96
|
+
/** Compact identity of a candidate, for error messages and result labels. */
|
|
97
|
+
export declare function describePeginParamsCandidate(candidate: PeginParamsCandidate): string;
|
|
98
|
+
//# sourceMappingURL=peginParamsCandidates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"peginParamsCandidates.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/recovery/peginParamsCandidates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,+EAA+E;AAC/E,MAAM,WAAW,uBAAuB;IACtC,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,mGAAmG;IACnG,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,0BAA0B;IACzC,aAAa,EAAE,OAAO,CAAC;IACvB,sEAAsE;IACtE,sBAAsB,EAAE,MAAM,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,gEAAgE;IAChE,qBAAqB,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,2BAA2B,EAAE,MAAM,CAAC;IACpC,yDAAyD;IACzD,6BAA6B,EAAE,SAAS,MAAM,EAAE,CAAC;CAClD;AAED,8EAA8E;AAC9E,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,uBAAuB,CAAC;IACxC,YAAY,EAAE,0BAA0B,CAAC;CAC1C;AAED,MAAM,WAAW,+BAA+B;IAC9C;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,SAAS,uBAAuB,EAAE,CAAC;IACnD,kBAAkB,EAAE,SAAS,0BAA0B,EAAE,CAAC;CAC3D;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,+BAA+B,GACrC,oBAAoB,EAAE,CA6BxB;AAED,8CAA8C;AAC9C,MAAM,MAAM,aAAa,GACrB,gBAAgB,GAChB,cAAc,GACd,sBAAsB,CAAC;AAE3B;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qEAAqE;AACrE,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,iBAAiB,GAC5B,MAAM,CAER;AAED,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,oBAAoB,GAC9B,MAAM,CASR"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { Network } from '@babylonlabs-io/babylon-tbv-rust-wasm';
|
|
2
|
+
import { DepositTerms } from '../deposit-terms/depositTerms';
|
|
3
|
+
import { PeginParamsCandidate, UnresolvedVersion } from './peginParamsCandidates';
|
|
4
|
+
export interface ReconstructPeginParamsInput {
|
|
5
|
+
/** Hashlocks indexed by `htlcVout`, from `deriveHashlocksFromPrePegin`. */
|
|
6
|
+
hashlocks: readonly string[];
|
|
7
|
+
/** Funded (broadcast) Pre-PegIn transaction hex, `0x` optional. */
|
|
8
|
+
fundedPrePeginTxHex: string;
|
|
9
|
+
/** Depositor x-only BTC pubkey hex, from the connected wallet. */
|
|
10
|
+
depositorBtcPubkey: string;
|
|
11
|
+
/**
|
|
12
|
+
* Funded-transaction fee, `Σin − Σout`. Not derivable from the transaction
|
|
13
|
+
* alone — the input values live in the funding UTXOs — but those are
|
|
14
|
+
* Bitcoin-keyed reads, which a reorg on Ethereum leaves intact.
|
|
15
|
+
*/
|
|
16
|
+
prepeginMaxFee: bigint;
|
|
17
|
+
/**
|
|
18
|
+
* Commission ceiling projected into the returned {@link DepositTerms}. Not a
|
|
19
|
+
* search axis: it never reaches the HTLC scriptPubKey or value, so the
|
|
20
|
+
* transaction carries no evidence of it and the caller must supply the bound
|
|
21
|
+
* it is willing to accept.
|
|
22
|
+
*/
|
|
23
|
+
maxAcceptableCommissionBps: number;
|
|
24
|
+
network: Network;
|
|
25
|
+
/** The space to search, from `buildPeginParamsCandidates`. */
|
|
26
|
+
candidates: readonly PeginParamsCandidate[];
|
|
27
|
+
/**
|
|
28
|
+
* Versions the caller enumerated over but could not resolve. Required, and
|
|
29
|
+
* `[]` is the explicit claim that the enumeration was complete — so a caller
|
|
30
|
+
* cannot arrive at a trusted answer by forgetting to mention its gaps.
|
|
31
|
+
*
|
|
32
|
+
* A non-empty list turns a sole match into a
|
|
33
|
+
* {@link PeginParamsIncompleteSpaceError}: uniqueness only rules out a wrong
|
|
34
|
+
* answer when the right answer was in the space to begin with.
|
|
35
|
+
*/
|
|
36
|
+
unresolvedVersions: readonly UnresolvedVersion[];
|
|
37
|
+
}
|
|
38
|
+
export interface ReconstructPeginParamsResult {
|
|
39
|
+
/** The single candidate whose rebuild matched the funded transaction. */
|
|
40
|
+
candidate: PeginParamsCandidate;
|
|
41
|
+
/**
|
|
42
|
+
* Terms projected from the matched candidate.
|
|
43
|
+
*
|
|
44
|
+
* The transaction pins the participant keys, `timelockRefund`, and each
|
|
45
|
+
* HTLC's scriptPubKey and total value. It does NOT pin how that value splits
|
|
46
|
+
* into `peginAmount`, `depositorClaimValue` and `peginMaxFee` — that split
|
|
47
|
+
* follows from the matched candidate's fee-side parameters, which the
|
|
48
|
+
* transaction carries no evidence of.
|
|
49
|
+
*/
|
|
50
|
+
terms: DepositTerms;
|
|
51
|
+
/**
|
|
52
|
+
* Per-vault `peginAmount`, inverted from the observed HTLC output values.
|
|
53
|
+
* Only as sound as the matched candidate's reserve — see {@link terms}.
|
|
54
|
+
*/
|
|
55
|
+
peginAmounts: readonly bigint[];
|
|
56
|
+
/** The transaction's `SHA256(authAnchor)` commitment, for the refund rebuild. */
|
|
57
|
+
authAnchorHash: string;
|
|
58
|
+
/** Size of the space actually trialled, for the recovery record. */
|
|
59
|
+
candidatesTried: number;
|
|
60
|
+
/**
|
|
61
|
+
* Every candidate that matched and projected identical terms.
|
|
62
|
+
*
|
|
63
|
+
* More than one is normal rather than suspicious: candidates differing only
|
|
64
|
+
* in fields the transaction cannot express — version labels whose
|
|
65
|
+
* script- and value-relevant content is the same — are indistinguishable by
|
|
66
|
+
* construction and describe the same deposit. They are reported rather than
|
|
67
|
+
* refused; refusal is reserved for survivors whose terms actually differ.
|
|
68
|
+
*/
|
|
69
|
+
matchedCandidates: readonly PeginParamsCandidate[];
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Search the candidate space for the parameter set that reproduces the funded
|
|
73
|
+
* Pre-PegIn, and project it back into {@link DepositTerms}.
|
|
74
|
+
*
|
|
75
|
+
* Per candidate: invert each vault's `peginAmount` from the observed HTLC
|
|
76
|
+
* output value via the protocol identity `htlcValue = peginAmount +
|
|
77
|
+
* depositorClaimValue + peginMaxFee + p2aAnchorValue`, then hand the result to
|
|
78
|
+
* `rebuildDepositTermsCore`, which independently recomputes that same sizing
|
|
79
|
+
* and byte-matches both the value and the scriptPubKey of every HTLC output.
|
|
80
|
+
*
|
|
81
|
+
* Because the amount is inverted from the value it is compared against, the
|
|
82
|
+
* VALUE check cannot discriminate between candidates: it holds for any
|
|
83
|
+
* candidate whose reserve leaves a positive amount. The scriptPubKey does all
|
|
84
|
+
* the discriminating, and `getPrePeginHtlcConnectorInfo` accepts exactly one
|
|
85
|
+
* offchain-params scalar — `timelockRefund`. So two offchain versions sharing
|
|
86
|
+
* a `timelockRefund` are indistinguishable however much their fee rates or
|
|
87
|
+
* council parameters differ, and that is precisely the ambiguity this function
|
|
88
|
+
* refuses to guess through. The value check is still run, by the verifier, as
|
|
89
|
+
* the bound that stops a candidate whose reserve exceeds the funded output.
|
|
90
|
+
*
|
|
91
|
+
* Every candidate is trialled; the loop does not stop at the first match,
|
|
92
|
+
* because detecting ambiguity is the point. Matches are then COMPARED rather
|
|
93
|
+
* than counted — several candidates matching is the ordinary case whenever
|
|
94
|
+
* their differences cannot reach the transaction, and refusing on a count
|
|
95
|
+
* alone would reject a deposit whose refund is fully determined.
|
|
96
|
+
*
|
|
97
|
+
* A candidate is only rejected on a Gate-1 byte mismatch, which is the
|
|
98
|
+
* transaction positively disagreeing with it. Any other failure means the
|
|
99
|
+
* candidate was never really evaluated, so it is recorded as unresolved and
|
|
100
|
+
* feeds the same fail-closed path as a version that could not be read —
|
|
101
|
+
* otherwise an incidental error on the TRUE candidate would remove it silently
|
|
102
|
+
* and hand back a look-alike as a trusted unique answer.
|
|
103
|
+
*
|
|
104
|
+
* @throws {UnanchoredPrePeginError} If the transaction carries no single,
|
|
105
|
+
* unambiguous auth-anchor OP_RETURN.
|
|
106
|
+
* @throws {PeginParamsNotFoundError} If no candidate matched.
|
|
107
|
+
* @throws {PeginParamsAmbiguousError} If matches disagree on the projected terms.
|
|
108
|
+
* @throws {PeginParamsIncompleteSpaceError} If a match is found but the space
|
|
109
|
+
* was known to be incomplete, or a candidate failed to evaluate.
|
|
110
|
+
*/
|
|
111
|
+
export declare function reconstructPeginParams(input: ReconstructPeginParamsInput): Promise<ReconstructPeginParamsResult>;
|
|
112
|
+
//# sourceMappingURL=reconstructPeginParams.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconstructPeginParams.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/recovery/reconstructPeginParams.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAIL,KAAK,OAAO,EACb,MAAM,uCAAuC,CAAC;AAG/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAUlE,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AAkBjC,MAAM,WAAW,2BAA2B;IAC1C,2EAA2E;IAC3E,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,mEAAmE;IACnE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kEAAkE;IAClE,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,0BAA0B,EAAE,MAAM,CAAC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,8DAA8D;IAC9D,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAC;IAC5C;;;;;;;;OAQG;IACH,kBAAkB,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,4BAA4B;IAC3C,yEAAyE;IACzE,SAAS,EAAE,oBAAoB,CAAC;IAChC;;;;;;;;OAQG;IACH,KAAK,EAAE,YAAY,CAAC;IACpB;;;OAGG;IACH,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,iFAAiF;IACjF,cAAc,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,iBAAiB,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACpD;AAoGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,4BAA4B,CAAC,CA+LvC"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed failures for Pre-PegIn parameter recovery (#2203).
|
|
3
|
+
*
|
|
4
|
+
* Split by who can act on them. A root mismatch is user-fixable — wrong
|
|
5
|
+
* wallet, wrong account or wrong network — and must be distinguishable from
|
|
6
|
+
* a search that found nothing, which is ours. Without the split both look
|
|
7
|
+
* identical to the caller.
|
|
8
|
+
*
|
|
9
|
+
* @module recovery/recoveryErrors
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* The re-derived vault root does not match the funded Pre-PegIn's auth-anchor
|
|
13
|
+
* OP_RETURN commitment.
|
|
14
|
+
*
|
|
15
|
+
* The root is bound to the wallet seed, the derivation account AND the
|
|
16
|
+
* network (`derive-context-hash.md` §2.1 folds the connected pubkey and the
|
|
17
|
+
* canonical network name into the HKDF `info`), so all three must match the
|
|
18
|
+
* ones that created the deposit.
|
|
19
|
+
*/
|
|
20
|
+
export declare class VaultRootMismatchError extends Error {
|
|
21
|
+
readonly derivedAuthAnchorHash: string;
|
|
22
|
+
readonly onChainAuthAnchorHash: string;
|
|
23
|
+
constructor(derivedAuthAnchorHash: string, onChainAuthAnchorHash: string);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The Pre-PegIn carries no single, unambiguous auth-anchor OP_RETURN.
|
|
27
|
+
*
|
|
28
|
+
* The anchor sits at `vout === htlcCount`, and it is the only structural
|
|
29
|
+
* signal for how many HTLC outputs the transaction funds. Without it the
|
|
30
|
+
* vault count would have to be guessed, so recovery refuses rather than
|
|
31
|
+
* deriving the wrong number of hashlocks.
|
|
32
|
+
*/
|
|
33
|
+
export declare class UnanchoredPrePeginError extends Error {
|
|
34
|
+
constructor(message: string);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* No candidate parameter set reproduces the funded Pre-PegIn's HTLC outputs.
|
|
38
|
+
*
|
|
39
|
+
* Either the true parameters are outside the enumerated space — an operator
|
|
40
|
+
* roster that rotated more than once has no chain-reachable historical read —
|
|
41
|
+
* or the transaction is not one of ours.
|
|
42
|
+
*/
|
|
43
|
+
export declare class PeginParamsNotFoundError extends Error {
|
|
44
|
+
readonly candidatesTried: number;
|
|
45
|
+
/** A bounded sample of per-candidate rejection reasons, for diagnosis. */
|
|
46
|
+
readonly sampleRejections: readonly string[];
|
|
47
|
+
/** Versions that could not be read, the likeliest reason for no match. */
|
|
48
|
+
readonly unresolvedLabels: readonly string[];
|
|
49
|
+
constructor(candidatesTried: number,
|
|
50
|
+
/** A bounded sample of per-candidate rejection reasons, for diagnosis. */
|
|
51
|
+
sampleRejections: readonly string[],
|
|
52
|
+
/** Versions that could not be read, the likeliest reason for no match. */
|
|
53
|
+
unresolvedLabels?: readonly string[]);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* More than one candidate reproduces the funded Pre-PegIn. Fail closed.
|
|
57
|
+
*
|
|
58
|
+
* Every survivor byte-matched the SAME funded outputs, so they agree on each
|
|
59
|
+
* HTLC scriptPubKey and on the total value of each output, and would produce
|
|
60
|
+
* the same refund transaction. What they disagree on is the SPLIT of that
|
|
61
|
+
* value into `peginAmount` and reserve, and the version stamps that determine
|
|
62
|
+
* it — neither of which the transaction carries any evidence of.
|
|
63
|
+
*/
|
|
64
|
+
export declare class PeginParamsAmbiguousError extends Error {
|
|
65
|
+
readonly survivorLabels: readonly string[];
|
|
66
|
+
constructor(survivorLabels: readonly string[]);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Exactly one candidate matched, but the candidate space was known to be
|
|
70
|
+
* incomplete. Fail closed.
|
|
71
|
+
*
|
|
72
|
+
* Uniqueness only detects a wrong answer when the right answer is ALSO in the
|
|
73
|
+
* space. If the true version could not be read, a different version sharing
|
|
74
|
+
* the same `timelockRefund` and participants matches the transaction just as
|
|
75
|
+
* well — the search subtracts that candidate's reserve and the verifier adds
|
|
76
|
+
* the same reserve back, so it survives — and the sole survivor would be
|
|
77
|
+
* returned with the wrong version stamps and the wrong `peginAmount` split.
|
|
78
|
+
*
|
|
79
|
+
* Resolve the versions below and search again rather than trusting the match.
|
|
80
|
+
*/
|
|
81
|
+
export declare class PeginParamsIncompleteSpaceError extends Error {
|
|
82
|
+
readonly matchedLabel: string;
|
|
83
|
+
readonly unresolvedLabels: readonly string[];
|
|
84
|
+
constructor(matchedLabel: string, unresolvedLabels: readonly string[]);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* A WASM sizing call returned a value no valid parameter set can produce.
|
|
88
|
+
*
|
|
89
|
+
* Raised before the value is consumed, and deliberately NOT treated as a
|
|
90
|
+
* candidate rejection: it indicts the binary rather than the candidate, so it
|
|
91
|
+
* escapes the search instead of being counted as one more parameter set that
|
|
92
|
+
* did not match.
|
|
93
|
+
*/
|
|
94
|
+
export declare class PeginSizingIntegrityError extends Error {
|
|
95
|
+
constructor(message: string);
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=recoveryErrors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recoveryErrors.d.ts","sourceRoot":"","sources":["../../../../src/tbv/core/recovery/recoveryErrors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;;;GAQG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAE7C,QAAQ,CAAC,qBAAqB,EAAE,MAAM;IACtC,QAAQ,CAAC,qBAAqB,EAAE,MAAM;gBAD7B,qBAAqB,EAAE,MAAM,EAC7B,qBAAqB,EAAE,MAAM;CAUzC;AAED;;;;;;;GAOG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;GAMG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IAE/C,QAAQ,CAAC,eAAe,EAAE,MAAM;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE;IAC5C,0EAA0E;IAC1E,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE;gBAJnC,eAAe,EAAE,MAAM;IAChC,0EAA0E;IACjE,gBAAgB,EAAE,SAAS,MAAM,EAAE;IAC5C,0EAA0E;IACjE,gBAAgB,GAAE,SAAS,MAAM,EAAO;CAapD;AAED;;;;;;;;GAQG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IACtC,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE;gBAAjC,cAAc,EAAE,SAAS,MAAM,EAAE;CAQvD;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,+BAAgC,SAAQ,KAAK;IAEtD,QAAQ,CAAC,YAAY,EAAE,MAAM;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE;gBADnC,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,SAAS,MAAM,EAAE;CAY/C;AAED;;;;;;;GAOG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,OAAO,EAAE,MAAM;CAI5B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../signPsbtsWithFallback-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../signPsbtsWithFallback-PTgWxsG3.cjs"),t=require("../../../buildAndBroadcastRefund-CYtnT0D_.cjs"),i=require("../../../peginState-eaQ4IO_R.cjs");exports.computeHashlock=e.computeHashlock;exports.validateSecretAgainstHashlock=e.validateSecretAgainstHashlock;exports.BIP68NotMatureError=t.BIP68NotMatureError;exports.ClaimerPegoutStatusValue=t.ClaimerPegoutStatusValue;exports.PEGIN_ETH_CONFIRMATIONS=t.PEGIN_ETH_CONFIRMATIONS;exports.ParticipantKeyDriftError=t.ParticipantKeyDriftError;exports.PeginRegistrationMissingError=t.PeginRegistrationMissingError;exports.PeginRegistrationNotFinalError=t.PeginRegistrationNotFinalError;exports.REFUND_MAX_FEE_FRACTION_DENOMINATOR=t.REFUND_MAX_FEE_FRACTION_DENOMINATOR;exports.REFUND_MAX_FEE_FRACTION_NUMERATOR=t.REFUND_MAX_FEE_FRACTION_NUMERATOR;exports.REFUND_MAX_FEE_RATE_SATS_VB=t.REFUND_MAX_FEE_RATE_SATS_VB;exports.REFUND_VSIZE=t.REFUND_VSIZE;exports.RegisteredVaultVersionMismatchError=t.RegisteredVaultVersionMismatchError;exports.activateVault=t.activateVault;exports.activateVaultAndRedeem=t.activateVaultAndRedeem;exports.assertVaultProviderHintAccepted=t.assertVaultProviderHintAccepted;exports.buildAndBroadcastRefund=t.buildAndBroadcastRefund;exports.estimateRefundFeeSats=t.estimateRefundFeeSats;exports.isDepositAmountValid=t.isDepositAmountValid;exports.isHintAccepted=t.isHintAccepted;exports.isParticipantKeyDriftError=t.isParticipantKeyDriftError;exports.isPeginRegistrationMissingError=t.isPeginRegistrationMissingError;exports.isPeginRegistrationNotFinalError=t.isPeginRegistrationNotFinalError;exports.isPegoutTerminalStatus=t.isPegoutTerminalStatus;exports.isRecognizedPegoutStatus=t.isRecognizedPegoutStatus;exports.isRegisteredVaultVersionMismatchError=t.isRegisteredVaultVersionMismatchError;exports.matchKeyHint=t.matchKeyHint;exports.matchKeySetHint=t.matchKeySetHint;exports.resolveCurrentParticipantKeys=t.resolveCurrentParticipantKeys;exports.resolveParticipantKeysAtEpochs=t.resolveParticipantKeysAtEpochs;exports.runDepositorPresignFlow=t.runDepositorPresignFlow;exports.signDepositorGraph=t.signDepositorGraph;exports.submitWotsPublicKey=t.submitWotsPublicKey;exports.validateDepositAmount=t.validateDepositAmount;exports.validateMultiVaultDepositInputs=t.validateMultiVaultDepositInputs;exports.validateOnChainParticipantKeys=t.validateOnChainParticipantKeys;exports.validateProviderSelection=t.validateProviderSelection;exports.validateRemainingCapacity=t.validateRemainingCapacity;exports.validateVaultAmounts=t.validateVaultAmounts;exports.validateVaultProviderPubkey=t.validateVaultProviderPubkey;exports.verifyRegisteredParticipantKeys=t.verifyRegisteredParticipantKeys;exports.verifyRegisteredVaultVersions=t.verifyRegisteredVaultVersions;exports.waitForPeginRegistrationDepth=t.waitForPeginRegistrationDepth;exports.waitForPeginStatus=t.waitForPeginStatus;exports.ContractStatus=i.ContractStatus;exports.PeginAction=i.PeginAction;exports.canPerformAction=i.canPerformAction;exports.getPeginProtocolState=i.getPeginProtocolState;exports.isActivationDeadlinePassedOnChain=i.isActivationDeadlinePassedOnChain;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as s, v as i } from "../../../signPsbtsWithFallback-
|
|
2
|
-
import { H as r, E as o, P as n, o as c, c as l, d as u, K as g, L as P, M as d, N as E, R, a as p, b as A, y as v, I as m, J as F, g as N, z as V, p as _, i as D, e as y, G as S, F as M, t as h, A as f, B as C, C as I, D as K, r as O, s as T, f as H, h as b, j as U, v as k, k as w, l as x, m as B, n as G, q as X, u as z, w as j, x as q } from "../../../buildAndBroadcastRefund-
|
|
1
|
+
import { c as s, v as i } from "../../../signPsbtsWithFallback-Bb66DfY5.js";
|
|
2
|
+
import { H as r, E as o, P as n, o as c, c as l, d as u, K as g, L as P, M as d, N as E, R, a as p, b as A, y as v, I as m, J as F, g as N, z as V, p as _, i as D, e as y, G as S, F as M, t as h, A as f, B as C, C as I, D as K, r as O, s as T, f as H, h as b, j as U, v as k, k as w, l as x, m as B, n as G, q as X, u as z, w as j, x as q } from "../../../buildAndBroadcastRefund-C2fP3Rva.js";
|
|
3
3
|
import { C as L, P as W, c as Z, g as Q, i as Y } from "../../../peginState-CxDiaKuk.js";
|
|
4
4
|
export {
|
|
5
5
|
r as BIP68NotMatureError,
|
package/dist/tbv/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const R=require("../challengeAssert-BFRE2DM-.cjs"),m=require("../constants-DU5CGcqO.cjs"),n=require("@babylonlabs-io/babylon-tbv-rust-wasm"),l=require("../verifyScriptPathSchnorrSignature-B8zK1ctE.cjs"),A=require("../peginInput-Ci921gTl.cjs"),S=require("../noPayout-CbxQqBw1.cjs"),t=require("../bitcoin-m84N5a8o.cjs"),c=require("../validation-CDbOaDj7.cjs"),O=require("../signing-Bnsro0hE.cjs"),u=require("../PeginManager-n__EsW8a.cjs"),d=require("../signPsbtsWithFallback-DbOmw8Ou.cjs"),_=require("../ProtocolParams.abi-CYZoV2EI.cjs"),C=require("../BTCVaultRegistry.abi-z7d_eP22.cjs"),b=require("../BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs"),p=require("../errors-CGcNP0rV.cjs"),P=require("../parseFundingOutpoints-CIO9Ok1L.cjs"),o=require("../waitForTransactionReceiptSmartAware-AgZ-3WV_.cjs"),i=require("../fundPeginTransaction-BLD8FRL9.cjs"),E=require("../reservation-CDbInVw0.cjs"),a=require("../mempoolApi-CXfr-L6x.cjs"),r=require("../batchPoll-6L5oToGr.cjs"),s=require("../json-rpc-client-BiAmg_ho.cjs"),y=require("../onChainBtcPubkey-C_a2L3kL.cjs"),T=require("../errors-BzBVottO.cjs"),e=require("../buildAndBroadcastRefund-DsCd90qJ.cjs"),g=require("../peginState-eaQ4IO_R.cjs");exports.buildChallengeAssertPsbt=R.buildChallengeAssertPsbt;exports.computeNumLocalChallengers=R.computeNumLocalChallengers;exports.assertValidVaultCoreVersion=m.assertValidVaultCoreVersion;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>n.computeMinClaimValue});Object.defineProperty(exports,"computeMinPeginFee",{enumerable:!0,get:()=>n.computeMinPeginFee});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>n.deriveVaultId});Object.defineProperty(exports,"expandAuthAnchor",{enumerable:!0,get:()=>n.expandAuthAnchor});Object.defineProperty(exports,"expandHashlockSecret",{enumerable:!0,get:()=>n.expandHashlockSecret});Object.defineProperty(exports,"expandWotsSeed",{enumerable:!0,get:()=>n.expandWotsSeed});Object.defineProperty(exports,"peginP2aAnchorOutput",{enumerable:!0,get:()=>n.peginP2aAnchorOutput});Object.defineProperty(exports,"supportedTxGraphVersions",{enumerable:!0,get:()=>n.supportedTxGraphVersions});Object.defineProperty(exports,"validatePeginP2aAnchor",{enumerable:!0,get:()=>n.validatePeginP2aAnchor});exports.PsbtSubstitutionError=l.PsbtSubstitutionError;exports.assertPsbtUnsignedTxMatches=l.assertPsbtUnsignedTxMatches;exports.assertScriptPathSchnorrSignature=l.assertScriptPathSchnorrSignature;exports.buildPayoutPsbt=l.buildPayoutPsbt;exports.buildPeginTxFromFundedPrePegin=l.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=l.buildPrePeginPsbt;exports.createPayoutScript=l.createPayoutScript;exports.extractPayoutSignature=l.extractPayoutSignature;exports.buildPeginInputPsbt=A.buildPeginInputPsbt;exports.extractPeginInputSignature=A.extractPeginInputSignature;exports.finalizePeginInputPsbt=A.finalizePeginInputPsbt;exports.buildNoPayoutPsbt=S.buildNoPayoutPsbt;exports.buildRefundPsbt=S.buildRefundPsbt;exports.canonicalizeBtcPubkey=t.canonicalizeBtcPubkey;exports.deriveBip86ScriptPubKeyHex=t.deriveBip86ScriptPubKeyHex;exports.deriveNativeSegwitAddress=t.deriveNativeSegwitAddress;exports.deriveTaprootAddress=t.deriveTaprootAddress;exports.ensureHexPrefix=t.ensureHexPrefix;exports.formatSatoshisToBtc=t.formatSatoshisToBtc;exports.getNetwork=t.getNetwork;exports.getSortedXOnlyPubkeys=t.getSortedXOnlyPubkeys;exports.hexToUint8Array=t.hexToUint8Array;exports.isAddressFromPublicKey=t.isAddressFromPublicKey;exports.isValidHex=t.isValidHex;exports.processPublicKeyToXOnly=t.processPublicKeyToXOnly;exports.stripHexPrefix=t.stripHexPrefix;exports.toXOnly=t.toXOnly;exports.uint8ArrayToHex=t.uint8ArrayToHex;exports.validateWalletPubkey=t.validateWalletPubkey;exports.BITCOIN_ADDRESS_RE=c.BITCOIN_ADDRESS_RE;exports.HEX_RE=c.HEX_RE;exports.KNOWN_SCRIPT_PREFIXES=c.KNOWN_SCRIPT_PREFIXES;exports.MAX_REASONABLE_FEE_SATS=c.MAX_REASONABLE_FEE_SATS;exports.TXID_RE=c.TXID_RE;exports.combineAbortSignals=c.combineAbortSignals;exports.createTaprootScriptPathSignOptions=O.createTaprootScriptPathSignOptions;exports.COMMISSION_BPS_HEADROOM=u.COMMISSION_BPS_HEADROOM;exports.MAX_ACCEPTABLE_COMMISSION_BPS_CAP=u.MAX_ACCEPTABLE_COMMISSION_BPS_CAP;exports.PeginManager=u.PeginManager;exports.buildDepositTerms=u.buildDepositTerms;exports.capMaxAcceptableCommissionBps=u.capMaxAcceptableCommissionBps;exports.computeWotsBlockPublicKeysHash=u.computeWotsBlockPublicKeysHash;exports.deriveWotsBlocksFromSeed=u.deriveWotsBlocksFromSeed;exports.ensurePrePeginTermsApproval=u.ensurePrePeginTermsApproval;exports.estimateSubmitPeginRequestBatchGas=u.estimateSubmitPeginRequestBatchGas;exports.PayoutManager=d.PayoutManager;exports.computeHashlock=d.computeHashlock;exports.forwardDepositApproval=d.forwardDepositApproval;exports.supportsDepositApproval=d.supportsDepositApproval;exports.validateSecretAgainstHashlock=d.validateSecretAgainstHashlock;exports.ApplicationRegistryABI=_.ApplicationRegistryABI;exports.ProtocolParamsABI=_.ProtocolParamsABI;exports.BTCVaultRegistryABI=C.BTCVaultRegistryABI;exports.BTCVaultRegistryKeyEpochsABI=b.BTCVaultRegistryKeyEpochsABI;exports.CONTRACT_ERRORS=p.CONTRACT_ERRORS;exports.extractErrorData=p.extractErrorData;exports.getContractErrorMessage=p.getContractErrorMessage;exports.handleContractError=p.handleContractError;exports.isKnownContractError=p.isKnownContractError;exports.VAULT_APP_NAME=P.VAULT_APP_NAME;exports.buildFundingOutpointsCommitment=P.buildFundingOutpointsCommitment;exports.buildVaultContext=P.buildVaultContext;exports.deriveVaultRoot=P.deriveVaultRoot;exports.forwardDeriveContextHash=P.forwardDeriveContextHash;exports.parseFundingOutpointsFromTx=P.parseFundingOutpointsFromTx;exports.BitcoinScriptType=o.BitcoinScriptType;exports.applyChangeOutputPolicy=o.applyChangeOutputPolicy;exports.calculateBtcTxHash=o.calculateBtcTxHash;exports.computeChangeOutputFeeSats=o.computeChangeOutputFeeSats;exports.computeMaxDeposit=o.computeMaxDeposit;exports.computePeginBaseFeeSats=o.computePeginBaseFeeSats;exports.getDustThreshold=o.getDustThreshold;exports.getPsbtInputFields=o.getPsbtInputFields;exports.getScriptType=o.getScriptType;exports.selectUtxosForPegin=o.selectUtxosForPegin;exports.shouldAddChangeOutput=o.shouldAddChangeOutput;exports.waitForTransactionReceiptSmartAware=o.waitForTransactionReceiptSmartAware;exports.BTC_DUST_SAT=i.BTC_DUST_SAT;exports.DUST_THRESHOLD=i.DUST_THRESHOLD;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=i.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=i.MAX_NON_LEGACY_OUTPUT_SIZE;exports.MAX_REASONABLE_PEGIN_VBYTES=i.MAX_REASONABLE_PEGIN_VBYTES;exports.P2TR_INPUT_SIZE=i.P2TR_INPUT_SIZE;exports.PEGIN_AUTH_ANCHOR_OUTPUTS=i.PEGIN_AUTH_ANCHOR_OUTPUTS;exports.PEGIN_FIXED_OUTPUTS=i.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=i.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=i.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=i.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.fundPeginTransaction=i.fundPeginTransaction;exports.parseUnfundedWasmTransaction=i.parseUnfundedWasmTransaction;exports.peginOutputCount=i.peginOutputCount;exports.rateBasedTxBufferFee=i.rateBasedTxBufferFee;exports.UtxoNotAvailableError=E.UtxoNotAvailableError;exports.assertUtxosAvailable=E.assertUtxosAvailable;exports.extractInputsFromTransaction=E.extractInputsFromTransaction;exports.findOverlappingPendingVaults=E.findOverlappingPendingVaults;exports.validateUtxosAvailable=E.validateUtxosAvailable;exports.MEMPOOL_API_URLS=a.MEMPOOL_API_URLS;exports.ViemVaultRegistryReader=a.ViemVaultRegistryReader;exports.getAddressTxs=a.getAddressTxs;exports.getAddressUtxos=a.getAddressUtxos;exports.getMempoolApiUrl=a.getMempoolApiUrl;exports.getNetworkFees=a.getNetworkFees;exports.getOutspend=a.getOutspend;exports.getTipHeight=a.getTipHeight;exports.getTxHex=a.getTxHex;exports.getTxInfo=a.getTxInfo;exports.getUtxoInfo=a.getUtxoInfo;exports.pushTx=a.pushTx;exports.validateOffchainParams=a.validateOffchainParams;exports.validatePegInConfiguration=a.validatePegInConfiguration;exports.validateTBVProtocolParams=a.validateTBVProtocolParams;exports.OnChainBtcVaultStatus=r.OnChainBtcVaultStatus;exports.ServerIdentityError=r.ServerIdentityError;exports.VaultProviderRpcClient=r.VaultProviderRpcClient;exports.ViemOperationKeyReader=r.ViemOperationKeyReader;exports.ViemProtocolParamsReader=r.ViemProtocolParamsReader;exports.ViemUniversalChallengerReader=r.ViemUniversalChallengerReader;exports.ViemVaultKeeperReader=r.ViemVaultKeeperReader;exports.VpResponseValidationError=r.VpResponseValidationError;exports.VpTokenRegistry=r.VpTokenRegistry;exports.batchPollByProvider=r.batchPollByProvider;exports.createAuthenticatedVpClient=r.createAuthenticatedVpClient;exports.primeVpTokenRegistry=r.primeVpTokenRegistry;exports.resolveProtocolAddresses=r.resolveProtocolAddresses;exports.validateRequestDepositorClaimerArtifactsResponse=r.validateRequestDepositorClaimerArtifactsResponse;exports.verifyServerIdentity=r.verifyServerIdentity;exports.vpTokenRegistry=r.vpTokenRegistry;exports.AUTH_REJECTED_RPC_CODE=s.AUTH_REJECTED_RPC_CODE;exports.DaemonStatus=s.DaemonStatus;exports.JSON_RPC_ERROR_CODES=s.JSON_RPC_ERROR_CODES;exports.JsonRpcClient=s.JsonRpcClient;exports.JsonRpcError=s.JsonRpcError;exports.POST_WOTS_STATUSES=s.POST_WOTS_STATUSES;exports.PRE_DEPOSITOR_SIGNATURES_STATES=s.PRE_DEPOSITOR_SIGNATURES_STATES;exports.RpcErrorCode=s.RpcErrorCode;exports.VP_BATCH_MAX_SIZE=s.VP_BATCH_MAX_SIZE;exports.VP_TERMINAL_FAILURE_STATUSES=s.VP_TERMINAL_FAILURE_STATUSES;exports.VP_TRANSIENT_STATUSES=s.VP_TRANSIENT_STATUSES;exports.isAuthRejectedError=s.isAuthRejectedError;exports.assertOnChainBtcPubkey=y.assertOnChainBtcPubkey;exports.DEPOSIT_TERMS_REJECTED_ERROR_NAME=T.DEPOSIT_TERMS_REJECTED_ERROR_NAME;exports.DepositTermsRejectedError=T.DepositTermsRejectedError;exports.isDepositTermsRejectedError=T.isDepositTermsRejectedError;exports.isWotsMismatchError=T.isWotsMismatchError;exports.rebuildDepositTermsCore=T.rebuildDepositTermsCore;exports.BIP68NotMatureError=e.BIP68NotMatureError;exports.ClaimerPegoutStatusValue=e.ClaimerPegoutStatusValue;exports.PEGIN_ETH_CONFIRMATIONS=e.PEGIN_ETH_CONFIRMATIONS;exports.ParticipantKeyDriftError=e.ParticipantKeyDriftError;exports.PeginRegistrationMissingError=e.PeginRegistrationMissingError;exports.PeginRegistrationNotFinalError=e.PeginRegistrationNotFinalError;exports.REFUND_MAX_FEE_FRACTION_DENOMINATOR=e.REFUND_MAX_FEE_FRACTION_DENOMINATOR;exports.REFUND_MAX_FEE_FRACTION_NUMERATOR=e.REFUND_MAX_FEE_FRACTION_NUMERATOR;exports.REFUND_MAX_FEE_RATE_SATS_VB=e.REFUND_MAX_FEE_RATE_SATS_VB;exports.REFUND_VSIZE=e.REFUND_VSIZE;exports.RegisteredVaultVersionMismatchError=e.RegisteredVaultVersionMismatchError;exports.activateVault=e.activateVault;exports.activateVaultAndRedeem=e.activateVaultAndRedeem;exports.assertVaultProviderHintAccepted=e.assertVaultProviderHintAccepted;exports.buildAndBroadcastRefund=e.buildAndBroadcastRefund;exports.estimateRefundFeeSats=e.estimateRefundFeeSats;exports.isDepositAmountValid=e.isDepositAmountValid;exports.isHintAccepted=e.isHintAccepted;exports.isParticipantKeyDriftError=e.isParticipantKeyDriftError;exports.isPeginRegistrationMissingError=e.isPeginRegistrationMissingError;exports.isPeginRegistrationNotFinalError=e.isPeginRegistrationNotFinalError;exports.isPegoutTerminalStatus=e.isPegoutTerminalStatus;exports.isRecognizedPegoutStatus=e.isRecognizedPegoutStatus;exports.isRegisteredVaultVersionMismatchError=e.isRegisteredVaultVersionMismatchError;exports.matchKeyHint=e.matchKeyHint;exports.matchKeySetHint=e.matchKeySetHint;exports.resolveCurrentParticipantKeys=e.resolveCurrentParticipantKeys;exports.resolveParticipantKeysAtEpochs=e.resolveParticipantKeysAtEpochs;exports.runDepositorPresignFlow=e.runDepositorPresignFlow;exports.signDepositorGraph=e.signDepositorGraph;exports.submitWotsPublicKey=e.submitWotsPublicKey;exports.validateDepositAmount=e.validateDepositAmount;exports.validateMultiVaultDepositInputs=e.validateMultiVaultDepositInputs;exports.validateOnChainParticipantKeys=e.validateOnChainParticipantKeys;exports.validateProviderSelection=e.validateProviderSelection;exports.validateRemainingCapacity=e.validateRemainingCapacity;exports.validateVaultAmounts=e.validateVaultAmounts;exports.validateVaultProviderPubkey=e.validateVaultProviderPubkey;exports.verifyRegisteredParticipantKeys=e.verifyRegisteredParticipantKeys;exports.verifyRegisteredVaultVersions=e.verifyRegisteredVaultVersions;exports.waitForPeginRegistrationDepth=e.waitForPeginRegistrationDepth;exports.waitForPeginStatus=e.waitForPeginStatus;exports.ContractStatus=g.ContractStatus;exports.PeginAction=g.PeginAction;exports.canPerformAction=g.canPerformAction;exports.getPeginProtocolState=g.getPeginProtocolState;exports.isActivationDeadlinePassedOnChain=g.isActivationDeadlinePassedOnChain;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("../challengeAssert-BFRE2DM-.cjs"),m=require("../constants-DU5CGcqO.cjs"),u=require("@babylonlabs-io/babylon-tbv-rust-wasm"),P=require("../verifyScriptPathSchnorrSignature-DPAd_qke.cjs"),A=require("../peginInput-Ci921gTl.cjs"),R=require("../noPayout-CnQ1WLtr.cjs"),t=require("../bitcoin-m84N5a8o.cjs"),l=require("../validation-CDbOaDj7.cjs"),O=require("../signing-Bnsro0hE.cjs"),c=require("../PeginManager-p-ajwSxG.cjs"),p=require("../signPsbtsWithFallback-PTgWxsG3.cjs"),_=require("../ProtocolParams.abi-CYZoV2EI.cjs"),b=require("../BTCVaultRegistry.abi-z7d_eP22.cjs"),C=require("../BTCVaultRegistryKeyEpochs.abi-_NERAdc5.cjs"),E=require("../errors-CGcNP0rV.cjs"),d=require("../parseFundingOutpoints-CIO9Ok1L.cjs"),s=require("../waitForTransactionReceiptSmartAware-AgZ-3WV_.cjs"),a=require("../fundPeginTransaction-BLD8FRL9.cjs"),g=require("../reservation-CDbInVw0.cjs"),o=require("../mempoolApi-CXfr-L6x.cjs"),r=require("../batchPoll-6L5oToGr.cjs"),n=require("../json-rpc-client-BiAmg_ho.cjs"),y=require("../onChainBtcPubkey-C_a2L3kL.cjs"),i=require("../reconstructPeginParams-BmUVK7F_.cjs"),e=require("../buildAndBroadcastRefund-CYtnT0D_.cjs"),T=require("../peginState-eaQ4IO_R.cjs");exports.buildChallengeAssertPsbt=S.buildChallengeAssertPsbt;exports.computeNumLocalChallengers=S.computeNumLocalChallengers;exports.assertValidVaultCoreVersion=m.assertValidVaultCoreVersion;Object.defineProperty(exports,"computeMinClaimValue",{enumerable:!0,get:()=>u.computeMinClaimValue});Object.defineProperty(exports,"computeMinPeginFee",{enumerable:!0,get:()=>u.computeMinPeginFee});Object.defineProperty(exports,"deriveVaultId",{enumerable:!0,get:()=>u.deriveVaultId});Object.defineProperty(exports,"expandAuthAnchor",{enumerable:!0,get:()=>u.expandAuthAnchor});Object.defineProperty(exports,"expandHashlockSecret",{enumerable:!0,get:()=>u.expandHashlockSecret});Object.defineProperty(exports,"expandWotsSeed",{enumerable:!0,get:()=>u.expandWotsSeed});Object.defineProperty(exports,"peginP2aAnchorOutput",{enumerable:!0,get:()=>u.peginP2aAnchorOutput});Object.defineProperty(exports,"supportedTxGraphVersions",{enumerable:!0,get:()=>u.supportedTxGraphVersions});Object.defineProperty(exports,"validatePeginP2aAnchor",{enumerable:!0,get:()=>u.validatePeginP2aAnchor});exports.PsbtSubstitutionError=P.PsbtSubstitutionError;exports.assertPsbtUnsignedTxMatches=P.assertPsbtUnsignedTxMatches;exports.assertScriptPathSchnorrSignature=P.assertScriptPathSchnorrSignature;exports.buildPayoutPsbt=P.buildPayoutPsbt;exports.buildPeginTxFromFundedPrePegin=P.buildPeginTxFromFundedPrePegin;exports.buildPrePeginPsbt=P.buildPrePeginPsbt;exports.createPayoutScript=P.createPayoutScript;exports.extractPayoutSignature=P.extractPayoutSignature;exports.buildPeginInputPsbt=A.buildPeginInputPsbt;exports.extractPeginInputSignature=A.extractPeginInputSignature;exports.finalizePeginInputPsbt=A.finalizePeginInputPsbt;exports.buildNoPayoutPsbt=R.buildNoPayoutPsbt;exports.buildRefundPsbt=R.buildRefundPsbt;exports.canonicalizeBtcPubkey=t.canonicalizeBtcPubkey;exports.deriveBip86ScriptPubKeyHex=t.deriveBip86ScriptPubKeyHex;exports.deriveNativeSegwitAddress=t.deriveNativeSegwitAddress;exports.deriveTaprootAddress=t.deriveTaprootAddress;exports.ensureHexPrefix=t.ensureHexPrefix;exports.formatSatoshisToBtc=t.formatSatoshisToBtc;exports.getNetwork=t.getNetwork;exports.getSortedXOnlyPubkeys=t.getSortedXOnlyPubkeys;exports.hexToUint8Array=t.hexToUint8Array;exports.isAddressFromPublicKey=t.isAddressFromPublicKey;exports.isValidHex=t.isValidHex;exports.processPublicKeyToXOnly=t.processPublicKeyToXOnly;exports.stripHexPrefix=t.stripHexPrefix;exports.toXOnly=t.toXOnly;exports.uint8ArrayToHex=t.uint8ArrayToHex;exports.validateWalletPubkey=t.validateWalletPubkey;exports.BITCOIN_ADDRESS_RE=l.BITCOIN_ADDRESS_RE;exports.HEX_RE=l.HEX_RE;exports.KNOWN_SCRIPT_PREFIXES=l.KNOWN_SCRIPT_PREFIXES;exports.MAX_REASONABLE_FEE_SATS=l.MAX_REASONABLE_FEE_SATS;exports.TXID_RE=l.TXID_RE;exports.combineAbortSignals=l.combineAbortSignals;exports.createTaprootScriptPathSignOptions=O.createTaprootScriptPathSignOptions;exports.COMMISSION_BPS_HEADROOM=c.COMMISSION_BPS_HEADROOM;exports.MAX_ACCEPTABLE_COMMISSION_BPS_CAP=c.MAX_ACCEPTABLE_COMMISSION_BPS_CAP;exports.PeginManager=c.PeginManager;exports.buildDepositTerms=c.buildDepositTerms;exports.capMaxAcceptableCommissionBps=c.capMaxAcceptableCommissionBps;exports.computeWotsBlockPublicKeysHash=c.computeWotsBlockPublicKeysHash;exports.deriveWotsBlocksFromSeed=c.deriveWotsBlocksFromSeed;exports.ensurePrePeginTermsApproval=c.ensurePrePeginTermsApproval;exports.estimateSubmitPeginRequestBatchGas=c.estimateSubmitPeginRequestBatchGas;exports.PayoutManager=p.PayoutManager;exports.computeHashlock=p.computeHashlock;exports.forwardDepositApproval=p.forwardDepositApproval;exports.supportsDepositApproval=p.supportsDepositApproval;exports.validateSecretAgainstHashlock=p.validateSecretAgainstHashlock;exports.ApplicationRegistryABI=_.ApplicationRegistryABI;exports.ProtocolParamsABI=_.ProtocolParamsABI;exports.BTCVaultRegistryABI=b.BTCVaultRegistryABI;exports.BTCVaultRegistryKeyEpochsABI=C.BTCVaultRegistryKeyEpochsABI;exports.CONTRACT_ERRORS=E.CONTRACT_ERRORS;exports.extractErrorData=E.extractErrorData;exports.getContractErrorMessage=E.getContractErrorMessage;exports.handleContractError=E.handleContractError;exports.isKnownContractError=E.isKnownContractError;exports.VAULT_APP_NAME=d.VAULT_APP_NAME;exports.buildFundingOutpointsCommitment=d.buildFundingOutpointsCommitment;exports.buildVaultContext=d.buildVaultContext;exports.deriveVaultRoot=d.deriveVaultRoot;exports.forwardDeriveContextHash=d.forwardDeriveContextHash;exports.parseFundingOutpointsFromTx=d.parseFundingOutpointsFromTx;exports.BitcoinScriptType=s.BitcoinScriptType;exports.applyChangeOutputPolicy=s.applyChangeOutputPolicy;exports.calculateBtcTxHash=s.calculateBtcTxHash;exports.computeChangeOutputFeeSats=s.computeChangeOutputFeeSats;exports.computeMaxDeposit=s.computeMaxDeposit;exports.computePeginBaseFeeSats=s.computePeginBaseFeeSats;exports.getDustThreshold=s.getDustThreshold;exports.getPsbtInputFields=s.getPsbtInputFields;exports.getScriptType=s.getScriptType;exports.selectUtxosForPegin=s.selectUtxosForPegin;exports.shouldAddChangeOutput=s.shouldAddChangeOutput;exports.waitForTransactionReceiptSmartAware=s.waitForTransactionReceiptSmartAware;exports.BTC_DUST_SAT=a.BTC_DUST_SAT;exports.DUST_THRESHOLD=a.DUST_THRESHOLD;exports.LOW_RATE_ESTIMATION_ACCURACY_BUFFER=a.LOW_RATE_ESTIMATION_ACCURACY_BUFFER;exports.MAX_NON_LEGACY_OUTPUT_SIZE=a.MAX_NON_LEGACY_OUTPUT_SIZE;exports.MAX_REASONABLE_PEGIN_VBYTES=a.MAX_REASONABLE_PEGIN_VBYTES;exports.P2TR_INPUT_SIZE=a.P2TR_INPUT_SIZE;exports.PEGIN_AUTH_ANCHOR_OUTPUTS=a.PEGIN_AUTH_ANCHOR_OUTPUTS;exports.PEGIN_FIXED_OUTPUTS=a.PEGIN_FIXED_OUTPUTS;exports.SPLIT_TX_FEE_SAFETY_MULTIPLIER=a.SPLIT_TX_FEE_SAFETY_MULTIPLIER;exports.TX_BUFFER_SIZE_OVERHEAD=a.TX_BUFFER_SIZE_OVERHEAD;exports.WALLET_RELAY_FEE_RATE_THRESHOLD=a.WALLET_RELAY_FEE_RATE_THRESHOLD;exports.fundPeginTransaction=a.fundPeginTransaction;exports.parseUnfundedWasmTransaction=a.parseUnfundedWasmTransaction;exports.peginOutputCount=a.peginOutputCount;exports.rateBasedTxBufferFee=a.rateBasedTxBufferFee;exports.UtxoNotAvailableError=g.UtxoNotAvailableError;exports.assertUtxosAvailable=g.assertUtxosAvailable;exports.extractInputsFromTransaction=g.extractInputsFromTransaction;exports.findOverlappingPendingVaults=g.findOverlappingPendingVaults;exports.validateUtxosAvailable=g.validateUtxosAvailable;exports.MEMPOOL_API_URLS=o.MEMPOOL_API_URLS;exports.ViemVaultRegistryReader=o.ViemVaultRegistryReader;exports.getAddressTxs=o.getAddressTxs;exports.getAddressUtxos=o.getAddressUtxos;exports.getMempoolApiUrl=o.getMempoolApiUrl;exports.getNetworkFees=o.getNetworkFees;exports.getOutspend=o.getOutspend;exports.getTipHeight=o.getTipHeight;exports.getTxHex=o.getTxHex;exports.getTxInfo=o.getTxInfo;exports.getUtxoInfo=o.getUtxoInfo;exports.pushTx=o.pushTx;exports.validateOffchainParams=o.validateOffchainParams;exports.validatePegInConfiguration=o.validatePegInConfiguration;exports.validateTBVProtocolParams=o.validateTBVProtocolParams;exports.OnChainBtcVaultStatus=r.OnChainBtcVaultStatus;exports.ServerIdentityError=r.ServerIdentityError;exports.VaultProviderRpcClient=r.VaultProviderRpcClient;exports.ViemOperationKeyReader=r.ViemOperationKeyReader;exports.ViemProtocolParamsReader=r.ViemProtocolParamsReader;exports.ViemUniversalChallengerReader=r.ViemUniversalChallengerReader;exports.ViemVaultKeeperReader=r.ViemVaultKeeperReader;exports.VpResponseValidationError=r.VpResponseValidationError;exports.VpTokenRegistry=r.VpTokenRegistry;exports.batchPollByProvider=r.batchPollByProvider;exports.createAuthenticatedVpClient=r.createAuthenticatedVpClient;exports.primeVpTokenRegistry=r.primeVpTokenRegistry;exports.resolveProtocolAddresses=r.resolveProtocolAddresses;exports.validateRequestDepositorClaimerArtifactsResponse=r.validateRequestDepositorClaimerArtifactsResponse;exports.verifyServerIdentity=r.verifyServerIdentity;exports.vpTokenRegistry=r.vpTokenRegistry;exports.AUTH_REJECTED_RPC_CODE=n.AUTH_REJECTED_RPC_CODE;exports.DaemonStatus=n.DaemonStatus;exports.JSON_RPC_ERROR_CODES=n.JSON_RPC_ERROR_CODES;exports.JsonRpcClient=n.JsonRpcClient;exports.JsonRpcError=n.JsonRpcError;exports.POST_WOTS_STATUSES=n.POST_WOTS_STATUSES;exports.PRE_DEPOSITOR_SIGNATURES_STATES=n.PRE_DEPOSITOR_SIGNATURES_STATES;exports.RpcErrorCode=n.RpcErrorCode;exports.VP_BATCH_MAX_SIZE=n.VP_BATCH_MAX_SIZE;exports.VP_TERMINAL_FAILURE_STATUSES=n.VP_TERMINAL_FAILURE_STATUSES;exports.VP_TRANSIENT_STATUSES=n.VP_TRANSIENT_STATUSES;exports.isAuthRejectedError=n.isAuthRejectedError;exports.assertOnChainBtcPubkey=y.assertOnChainBtcPubkey;exports.DEPOSIT_TERMS_REJECTED_ERROR_NAME=i.DEPOSIT_TERMS_REJECTED_ERROR_NAME;exports.DepositTermsRejectedError=i.DepositTermsRejectedError;exports.PeginParamsAmbiguousError=i.PeginParamsAmbiguousError;exports.PeginParamsIncompleteSpaceError=i.PeginParamsIncompleteSpaceError;exports.PeginParamsNotFoundError=i.PeginParamsNotFoundError;exports.PeginSizingIntegrityError=i.PeginSizingIntegrityError;exports.UnanchoredPrePeginError=i.UnanchoredPrePeginError;exports.VaultRootMismatchError=i.VaultRootMismatchError;exports.buildPeginParamsCandidates=i.buildPeginParamsCandidates;exports.deriveHashlocksFromPrePegin=i.deriveHashlocksFromPrePegin;exports.describePeginParamsCandidate=i.describePeginParamsCandidate;exports.describeUnresolvedVersion=i.describeUnresolvedVersion;exports.isDepositTermsRejectedError=i.isDepositTermsRejectedError;exports.isWotsMismatchError=i.isWotsMismatchError;exports.rebuildDepositTermsCore=i.rebuildDepositTermsCore;exports.reconstructPeginParams=i.reconstructPeginParams;exports.BIP68NotMatureError=e.BIP68NotMatureError;exports.ClaimerPegoutStatusValue=e.ClaimerPegoutStatusValue;exports.PEGIN_ETH_CONFIRMATIONS=e.PEGIN_ETH_CONFIRMATIONS;exports.ParticipantKeyDriftError=e.ParticipantKeyDriftError;exports.PeginRegistrationMissingError=e.PeginRegistrationMissingError;exports.PeginRegistrationNotFinalError=e.PeginRegistrationNotFinalError;exports.REFUND_MAX_FEE_FRACTION_DENOMINATOR=e.REFUND_MAX_FEE_FRACTION_DENOMINATOR;exports.REFUND_MAX_FEE_FRACTION_NUMERATOR=e.REFUND_MAX_FEE_FRACTION_NUMERATOR;exports.REFUND_MAX_FEE_RATE_SATS_VB=e.REFUND_MAX_FEE_RATE_SATS_VB;exports.REFUND_VSIZE=e.REFUND_VSIZE;exports.RegisteredVaultVersionMismatchError=e.RegisteredVaultVersionMismatchError;exports.activateVault=e.activateVault;exports.activateVaultAndRedeem=e.activateVaultAndRedeem;exports.assertVaultProviderHintAccepted=e.assertVaultProviderHintAccepted;exports.buildAndBroadcastRefund=e.buildAndBroadcastRefund;exports.estimateRefundFeeSats=e.estimateRefundFeeSats;exports.isDepositAmountValid=e.isDepositAmountValid;exports.isHintAccepted=e.isHintAccepted;exports.isParticipantKeyDriftError=e.isParticipantKeyDriftError;exports.isPeginRegistrationMissingError=e.isPeginRegistrationMissingError;exports.isPeginRegistrationNotFinalError=e.isPeginRegistrationNotFinalError;exports.isPegoutTerminalStatus=e.isPegoutTerminalStatus;exports.isRecognizedPegoutStatus=e.isRecognizedPegoutStatus;exports.isRegisteredVaultVersionMismatchError=e.isRegisteredVaultVersionMismatchError;exports.matchKeyHint=e.matchKeyHint;exports.matchKeySetHint=e.matchKeySetHint;exports.resolveCurrentParticipantKeys=e.resolveCurrentParticipantKeys;exports.resolveParticipantKeysAtEpochs=e.resolveParticipantKeysAtEpochs;exports.runDepositorPresignFlow=e.runDepositorPresignFlow;exports.signDepositorGraph=e.signDepositorGraph;exports.submitWotsPublicKey=e.submitWotsPublicKey;exports.validateDepositAmount=e.validateDepositAmount;exports.validateMultiVaultDepositInputs=e.validateMultiVaultDepositInputs;exports.validateOnChainParticipantKeys=e.validateOnChainParticipantKeys;exports.validateProviderSelection=e.validateProviderSelection;exports.validateRemainingCapacity=e.validateRemainingCapacity;exports.validateVaultAmounts=e.validateVaultAmounts;exports.validateVaultProviderPubkey=e.validateVaultProviderPubkey;exports.verifyRegisteredParticipantKeys=e.verifyRegisteredParticipantKeys;exports.verifyRegisteredVaultVersions=e.verifyRegisteredVaultVersions;exports.waitForPeginRegistrationDepth=e.waitForPeginRegistrationDepth;exports.waitForPeginStatus=e.waitForPeginStatus;exports.ContractStatus=T.ContractStatus;exports.PeginAction=T.PeginAction;exports.canPerformAction=T.canPerformAction;exports.getPeginProtocolState=T.getPeginProtocolState;exports.isActivationDeadlinePassedOnChain=T.isActivationDeadlinePassedOnChain;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|