@bitgo-beta/utxo-staking 1.1.1-beta.46 → 1.1.1-beta.460

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 (48) hide show
  1. package/dist/src/babylon/delegationMessage.d.ts +38 -0
  2. package/dist/src/babylon/delegationMessage.d.ts.map +1 -0
  3. package/dist/src/babylon/delegationMessage.js +259 -0
  4. package/dist/src/babylon/descriptor.d.ts +47 -0
  5. package/dist/src/babylon/descriptor.d.ts.map +1 -0
  6. package/dist/src/babylon/descriptor.js +96 -0
  7. package/dist/src/babylon/index.d.ts +6 -0
  8. package/dist/src/babylon/index.d.ts.map +1 -0
  9. package/dist/src/babylon/index.js +49 -0
  10. package/dist/src/babylon/network.d.ts +7 -0
  11. package/dist/src/babylon/network.d.ts.map +1 -0
  12. package/dist/src/babylon/network.js +66 -0
  13. package/dist/src/babylon/params.mainnet.json +152 -0
  14. package/dist/src/babylon/params.testnet.json +212 -0
  15. package/dist/src/babylon/parseDescriptor.d.ts +12 -0
  16. package/dist/src/babylon/parseDescriptor.d.ts.map +1 -0
  17. package/dist/src/babylon/parseDescriptor.js +70 -0
  18. package/dist/src/babylon/stakingManager.d.ts +6 -0
  19. package/dist/src/babylon/stakingManager.d.ts.map +1 -0
  20. package/dist/src/babylon/stakingManager.js +116 -0
  21. package/dist/src/babylon/stakingParams.d.ts +40 -0
  22. package/dist/src/babylon/stakingParams.d.ts.map +1 -0
  23. package/dist/src/babylon/stakingParams.js +132 -0
  24. package/dist/src/babylon/undelegation/UndelegationResponse.d.ts +24 -0
  25. package/dist/src/babylon/undelegation/UndelegationResponse.d.ts.map +1 -0
  26. package/dist/src/babylon/undelegation/UndelegationResponse.js +55 -0
  27. package/dist/src/babylon/undelegation/index.d.ts +3 -0
  28. package/dist/src/babylon/undelegation/index.d.ts.map +1 -0
  29. package/dist/src/babylon/undelegation/index.js +19 -0
  30. package/dist/src/babylon/undelegation/unbonding.d.ts +16 -0
  31. package/dist/src/babylon/undelegation/unbonding.d.ts.map +1 -0
  32. package/dist/src/babylon/undelegation/unbonding.js +111 -0
  33. package/dist/src/coreDao/descriptor.d.ts +4 -2
  34. package/dist/src/coreDao/descriptor.d.ts.map +1 -1
  35. package/dist/src/coreDao/descriptor.js +11 -3
  36. package/dist/src/coreDao/transaction.d.ts +15 -6
  37. package/dist/src/coreDao/transaction.d.ts.map +1 -1
  38. package/dist/src/coreDao/transaction.js +12 -4
  39. package/dist/src/index.d.ts +1 -1
  40. package/dist/src/index.d.ts.map +1 -1
  41. package/dist/src/index.js +26 -7
  42. package/package.json +21 -8
  43. package/.eslintignore +0 -5
  44. package/.mocharc.yml +0 -8
  45. package/CHANGELOG.md +0 -47
  46. package/dist/src/transaction.d.ts +0 -32
  47. package/dist/src/transaction.d.ts.map +0 -1
  48. package/dist/src/transaction.js +0 -54
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.toBabylonNetwork = toBabylonNetwork;
37
+ exports.toBitcoinJsNetwork = toBitcoinJsNetwork;
38
+ const bitcoinjslib = __importStar(require("bitcoinjs-lib"));
39
+ const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
40
+ function toBabylonNetwork(n) {
41
+ switch (n) {
42
+ case bitcoinjslib.networks.bitcoin:
43
+ case utxolib.networks.bitcoin:
44
+ return 'mainnet';
45
+ case bitcoinjslib.networks.testnet:
46
+ case utxolib.networks.testnet:
47
+ case utxolib.networks.bitcoinPublicSignet:
48
+ return 'testnet';
49
+ case 'mainnet':
50
+ case 'testnet':
51
+ return n;
52
+ default:
53
+ throw new Error('Unsupported network');
54
+ }
55
+ }
56
+ function toBitcoinJsNetwork(n) {
57
+ switch (toBabylonNetwork(n)) {
58
+ case 'mainnet':
59
+ return bitcoinjslib.networks.bitcoin;
60
+ case 'testnet':
61
+ return bitcoinjslib.networks.testnet;
62
+ default:
63
+ throw new Error('Unsupported network');
64
+ }
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYWJ5bG9uL25ldHdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPQSw0Q0FlQztBQUVELGdEQVNDO0FBakNELDREQUE4QztBQUM5Qyw4REFBZ0Q7QUFNaEQsU0FBZ0IsZ0JBQWdCLENBQUMsQ0FBcUI7SUFDcEQsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUNWLEtBQUssWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDbkMsS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU87WUFDM0IsT0FBTyxTQUFTLENBQUM7UUFDbkIsS0FBSyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUNuQyxLQUFLLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO1FBQzlCLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUI7WUFDdkMsT0FBTyxTQUFTLENBQUM7UUFDbkIsS0FBSyxTQUFTLENBQUM7UUFDZixLQUFLLFNBQVM7WUFDWixPQUFPLENBQUMsQ0FBQztRQUNYO1lBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzNDLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBZ0Isa0JBQWtCLENBQUMsQ0FBcUI7SUFDdEQsUUFBUSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzVCLEtBQUssU0FBUztZQUNaLE9BQU8sWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDdkMsS0FBSyxTQUFTO1lBQ1osT0FBTyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUN2QztZQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGJpdGNvaW5qc2xpYiBmcm9tICdiaXRjb2luanMtbGliJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuXG5leHBvcnQgdHlwZSBCYWJ5bG9uTmV0d29yayA9ICdtYWlubmV0JyB8ICd0ZXN0bmV0JztcblxuZXhwb3J0IHR5cGUgQmFieWxvbk5ldHdvcmtMaWtlID0gYml0Y29pbmpzbGliLk5ldHdvcmsgfCB1dHhvbGliLk5ldHdvcmsgfCBCYWJ5bG9uTmV0d29yaztcblxuZXhwb3J0IGZ1bmN0aW9uIHRvQmFieWxvbk5ldHdvcmsobjogQmFieWxvbk5ldHdvcmtMaWtlKTogQmFieWxvbk5ldHdvcmsge1xuICBzd2l0Y2ggKG4pIHtcbiAgICBjYXNlIGJpdGNvaW5qc2xpYi5uZXR3b3Jrcy5iaXRjb2luOlxuICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luOlxuICAgICAgcmV0dXJuICdtYWlubmV0JztcbiAgICBjYXNlIGJpdGNvaW5qc2xpYi5uZXR3b3Jrcy50ZXN0bmV0OlxuICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy50ZXN0bmV0OlxuICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luUHVibGljU2lnbmV0OlxuICAgICAgcmV0dXJuICd0ZXN0bmV0JztcbiAgICBjYXNlICdtYWlubmV0JzpcbiAgICBjYXNlICd0ZXN0bmV0JzpcbiAgICAgIHJldHVybiBuO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIG5ldHdvcmsnKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9CaXRjb2luSnNOZXR3b3JrKG46IEJhYnlsb25OZXR3b3JrTGlrZSk6IGJpdGNvaW5qc2xpYi5OZXR3b3JrIHtcbiAgc3dpdGNoICh0b0JhYnlsb25OZXR3b3JrKG4pKSB7XG4gICAgY2FzZSAnbWFpbm5ldCc6XG4gICAgICByZXR1cm4gYml0Y29pbmpzbGliLm5ldHdvcmtzLmJpdGNvaW47XG4gICAgY2FzZSAndGVzdG5ldCc6XG4gICAgICByZXR1cm4gYml0Y29pbmpzbGliLm5ldHdvcmtzLnRlc3RuZXQ7XG4gICAgZGVmYXVsdDpcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgbmV0d29yaycpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,152 @@
1
+ [
2
+ {
3
+ "version": 0,
4
+ "params": {
5
+ "covenant_pks": [
6
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
7
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
8
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
9
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
10
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
11
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
12
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
13
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
14
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
15
+ ],
16
+ "covenant_quorum": 6,
17
+ "min_staking_value_sat": "500000",
18
+ "max_staking_value_sat": "5000000",
19
+ "min_staking_time_blocks": 64000,
20
+ "max_staking_time_blocks": 64000,
21
+ "slashing_pk_script": "agdiYWJ5bG9u",
22
+ "min_slashing_tx_fee_sat": "100000",
23
+ "slashing_rate": "0.001000000000000000",
24
+ "unbonding_time_blocks": 1008,
25
+ "unbonding_fee_sat": "64000",
26
+ "min_commission_rate": "0.030000000000000000",
27
+ "delegation_creation_base_gas_fee": "1095000",
28
+ "allow_list_expiration_height": "139920",
29
+ "btc_activation_height": 857910
30
+ }
31
+ },
32
+ {
33
+ "version": 1,
34
+ "params": {
35
+ "covenant_pks": [
36
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
37
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
38
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
39
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
40
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
41
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
42
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
43
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
44
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
45
+ ],
46
+ "covenant_quorum": 6,
47
+ "min_staking_value_sat": "500000",
48
+ "max_staking_value_sat": "50000000000",
49
+ "min_staking_time_blocks": 64000,
50
+ "max_staking_time_blocks": 64000,
51
+ "slashing_pk_script": "agdiYWJ5bG9u",
52
+ "min_slashing_tx_fee_sat": "100000",
53
+ "slashing_rate": "0.001000000000000000",
54
+ "unbonding_time_blocks": 1008,
55
+ "unbonding_fee_sat": "32000",
56
+ "min_commission_rate": "0.030000000000000000",
57
+ "delegation_creation_base_gas_fee": "1095000",
58
+ "allow_list_expiration_height": "139920",
59
+ "btc_activation_height": 864790
60
+ }
61
+ },
62
+ {
63
+ "version": 2,
64
+ "params": {
65
+ "covenant_pks": [
66
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
67
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
68
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
69
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
70
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
71
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
72
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
73
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
74
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
75
+ ],
76
+ "covenant_quorum": 6,
77
+ "min_staking_value_sat": "500000",
78
+ "max_staking_value_sat": "500000000000",
79
+ "min_staking_time_blocks": 64000,
80
+ "max_staking_time_blocks": 64000,
81
+ "slashing_pk_script": "agdiYWJ5bG9u",
82
+ "min_slashing_tx_fee_sat": "100000",
83
+ "slashing_rate": "0.001000000000000000",
84
+ "unbonding_time_blocks": 1008,
85
+ "unbonding_fee_sat": "32000",
86
+ "min_commission_rate": "0.030000000000000000",
87
+ "delegation_creation_base_gas_fee": "1095000",
88
+ "allow_list_expiration_height": "139920",
89
+ "btc_activation_height": 874088
90
+ }
91
+ },
92
+ {
93
+ "version": 3,
94
+ "params": {
95
+ "covenant_pks": [
96
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
97
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
98
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
99
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
100
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
101
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
102
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
103
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c",
104
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204"
105
+ ],
106
+ "covenant_quorum": 6,
107
+ "min_staking_value_sat": "500000",
108
+ "max_staking_value_sat": "500000000000",
109
+ "min_staking_time_blocks": 64000,
110
+ "max_staking_time_blocks": 64000,
111
+ "slashing_pk_script": "agdiYWJ5bG9u",
112
+ "min_slashing_tx_fee_sat": "100000",
113
+ "slashing_rate": "0.001000000000000000",
114
+ "unbonding_time_blocks": 1008,
115
+ "unbonding_fee_sat": "32000",
116
+ "min_commission_rate": "0.030000000000000000",
117
+ "delegation_creation_base_gas_fee": "1095000",
118
+ "allow_list_expiration_height": "139920",
119
+ "btc_activation_height": 891425
120
+ }
121
+ },
122
+ {
123
+ "version": 4,
124
+ "params": {
125
+ "covenant_pks": [
126
+ "d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
127
+ "4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
128
+ "23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
129
+ "d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
130
+ "8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
131
+ "e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
132
+ "f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
133
+ "de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c",
134
+ "cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204"
135
+ ],
136
+ "covenant_quorum": 6,
137
+ "min_staking_value_sat": "500000",
138
+ "max_staking_value_sat": "500000000000",
139
+ "min_staking_time_blocks": 64000,
140
+ "max_staking_time_blocks": 64000,
141
+ "slashing_pk_script": "agdiYWJ5bG9u",
142
+ "min_slashing_tx_fee_sat": "100000",
143
+ "slashing_rate": "0.001000000000000000",
144
+ "unbonding_time_blocks": 1008,
145
+ "unbonding_fee_sat": "9600",
146
+ "min_commission_rate": "0.030000000000000000",
147
+ "delegation_creation_base_gas_fee": "1095000",
148
+ "allow_list_expiration_height": "139920",
149
+ "btc_activation_height": 893362
150
+ }
151
+ }
152
+ ]
@@ -0,0 +1,212 @@
1
+ [
2
+ {
3
+ "version": 0,
4
+ "params": {
5
+ "covenant_pks": [
6
+ "49766ccd9e3cd94343e2040474a77fb37cdfd30530d05f9f1e96ae1e2102c86e",
7
+ "76d1ae01f8fb6bf30108731c884cddcf57ef6eef2d9d9559e130894e0e40c62c",
8
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
9
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
10
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
11
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
12
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
13
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
14
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
15
+ ],
16
+ "covenant_quorum": 6,
17
+ "min_staking_value_sat": "50000",
18
+ "max_staking_value_sat": "5000000",
19
+ "min_staking_time_blocks": 64000,
20
+ "max_staking_time_blocks": 64000,
21
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
22
+ "min_slashing_tx_fee_sat": "1000",
23
+ "slashing_rate": "0.100000000000000000",
24
+ "unbonding_time_blocks": 1008,
25
+ "unbonding_fee_sat": "2000",
26
+ "min_commission_rate": "0.030000000000000000",
27
+ "delegation_creation_base_gas_fee": "1000",
28
+ "allow_list_expiration_height": "26120",
29
+ "btc_activation_height": 197535
30
+ }
31
+ },
32
+ {
33
+ "version": 1,
34
+ "params": {
35
+ "covenant_pks": [
36
+ "09585ab55a971a231c945790a0a81df754e5a07263a5c20829931cc24683bbb7",
37
+ "76d1ae01f8fb6bf30108731c884cddcf57ef6eef2d9d9559e130894e0e40c62c",
38
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
39
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
40
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
41
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
42
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
43
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
44
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
45
+ ],
46
+ "covenant_quorum": 6,
47
+ "min_staking_value_sat": "50000",
48
+ "max_staking_value_sat": "5000000",
49
+ "min_staking_time_blocks": 64000,
50
+ "max_staking_time_blocks": 64000,
51
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
52
+ "min_slashing_tx_fee_sat": "1000",
53
+ "slashing_rate": "0.100000000000000000",
54
+ "unbonding_time_blocks": 1008,
55
+ "unbonding_fee_sat": "10000",
56
+ "min_commission_rate": "0.030000000000000000",
57
+ "delegation_creation_base_gas_fee": "1000",
58
+ "allow_list_expiration_height": "26120",
59
+ "btc_activation_height": 198665
60
+ }
61
+ },
62
+ {
63
+ "version": 2,
64
+ "params": {
65
+ "covenant_pks": [
66
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
67
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
68
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
69
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
70
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
71
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
72
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
73
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
74
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
75
+ ],
76
+ "covenant_quorum": 6,
77
+ "min_staking_value_sat": "50000",
78
+ "max_staking_value_sat": "5000000",
79
+ "min_staking_time_blocks": 64000,
80
+ "max_staking_time_blocks": 64000,
81
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
82
+ "min_slashing_tx_fee_sat": "1000",
83
+ "slashing_rate": "0.100000000000000000",
84
+ "unbonding_time_blocks": 1008,
85
+ "unbonding_fee_sat": "10000",
86
+ "min_commission_rate": "0.030000000000000000",
87
+ "delegation_creation_base_gas_fee": "1000",
88
+ "allow_list_expiration_height": "26120",
89
+ "btc_activation_height": 200665
90
+ }
91
+ },
92
+ {
93
+ "version": 3,
94
+ "params": {
95
+ "covenant_pks": [
96
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
97
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
98
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
99
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
100
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
101
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
102
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
103
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
104
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
105
+ ],
106
+ "covenant_quorum": 6,
107
+ "min_staking_value_sat": "50000",
108
+ "max_staking_value_sat": "50000000",
109
+ "min_staking_time_blocks": 64000,
110
+ "max_staking_time_blocks": 64000,
111
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
112
+ "min_slashing_tx_fee_sat": "1000",
113
+ "slashing_rate": "0.100000000000000000",
114
+ "unbonding_time_blocks": 1008,
115
+ "unbonding_fee_sat": "5000",
116
+ "min_commission_rate": "0.030000000000000000",
117
+ "delegation_creation_base_gas_fee": "1000",
118
+ "allow_list_expiration_height": "26120",
119
+ "btc_activation_height": 215968
120
+ }
121
+ },
122
+ {
123
+ "version": 4,
124
+ "params": {
125
+ "covenant_pks": [
126
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
127
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
128
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
129
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
130
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
131
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
132
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
133
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
134
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
135
+ ],
136
+ "covenant_quorum": 6,
137
+ "min_staking_value_sat": "50000",
138
+ "max_staking_value_sat": "50000000",
139
+ "min_staking_time_blocks": 64000,
140
+ "max_staking_time_blocks": 64000,
141
+ "slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
142
+ "min_slashing_tx_fee_sat": "1000",
143
+ "slashing_rate": "0.100000000000000000",
144
+ "unbonding_time_blocks": 1008,
145
+ "unbonding_fee_sat": "5000",
146
+ "min_commission_rate": "0.030000000000000000",
147
+ "delegation_creation_base_gas_fee": "1000",
148
+ "allow_list_expiration_height": "26120",
149
+ "btc_activation_height": 220637
150
+ }
151
+ },
152
+ {
153
+ "version": 5,
154
+ "params": {
155
+ "covenant_pks": [
156
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
157
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
158
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
159
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
160
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
161
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
162
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
163
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
164
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
165
+ ],
166
+ "covenant_quorum": 6,
167
+ "min_staking_value_sat": "50000",
168
+ "max_staking_value_sat": "35000000000",
169
+ "min_staking_time_blocks": 10000,
170
+ "max_staking_time_blocks": 64000,
171
+ "slashing_pk_script": "ABRb4SYk0IorQkCV18ByIcM0UNFL8Q==",
172
+ "min_slashing_tx_fee_sat": "5000",
173
+ "slashing_rate": "0.050000000000000000",
174
+ "unbonding_time_blocks": 1008,
175
+ "unbonding_fee_sat": "2000",
176
+ "min_commission_rate": "0.030000000000000000",
177
+ "delegation_creation_base_gas_fee": "1095000",
178
+ "allow_list_expiration_height": "26124",
179
+ "btc_activation_height": 227174
180
+ }
181
+ },
182
+ {
183
+ "version": 6,
184
+ "params": {
185
+ "covenant_pks": [
186
+ "fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
187
+ "0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
188
+ "17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
189
+ "113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
190
+ "79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
191
+ "3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
192
+ "d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
193
+ "40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
194
+ "f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
195
+ ],
196
+ "covenant_quorum": 6,
197
+ "min_staking_value_sat": "50000",
198
+ "max_staking_value_sat": "35000000000",
199
+ "min_staking_time_blocks": 10000,
200
+ "max_staking_time_blocks": 64000,
201
+ "slashing_pk_script": "ABRb4SYk0IorQkCV18ByIcM0UNFL8Q==",
202
+ "min_slashing_tx_fee_sat": "6000",
203
+ "slashing_rate": "0.050000000000000000",
204
+ "unbonding_time_blocks": 1008,
205
+ "unbonding_fee_sat": "2000",
206
+ "min_commission_rate": "0.030000000000000000",
207
+ "delegation_creation_base_gas_fee": "1095000",
208
+ "allow_list_expiration_height": "26124",
209
+ "btc_activation_height": 235952
210
+ }
211
+ }
212
+ ]
@@ -0,0 +1,12 @@
1
+ import { Descriptor, ast } from '@bitgo/wasm-miniscript';
2
+ type ParsedStakingDescriptor = {
3
+ slashingMiniscriptNode: ast.MiniscriptNode;
4
+ unbondingMiniscriptNode: ast.MiniscriptNode;
5
+ timelockMiniscriptNode: ast.MiniscriptNode;
6
+ };
7
+ /**
8
+ * @return parsed staking descriptor components or null if the descriptor does not match the expected staking pattern.
9
+ */
10
+ export declare function parseStakingDescriptor(descriptor: Descriptor | ast.DescriptorNode): ParsedStakingDescriptor | null;
11
+ export {};
12
+ //# sourceMappingURL=parseDescriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseDescriptor.d.ts","sourceRoot":"","sources":["../../../src/babylon/parseDescriptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAKzD,KAAK,uBAAuB,GAAG;IAC7B,sBAAsB,EAAE,GAAG,CAAC,cAAc,CAAC;IAC3C,uBAAuB,EAAE,GAAG,CAAC,cAAc,CAAC;IAC5C,sBAAsB,EAAE,GAAG,CAAC,cAAc,CAAC;CAC5C,CAAC;AAEF;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,UAAU,GAAG,GAAG,CAAC,cAAc,GAAG,uBAAuB,GAAG,IAAI,CAyElH"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseStakingDescriptor = parseStakingDescriptor;
4
+ const wasm_miniscript_1 = require("@bitgo/wasm-miniscript");
5
+ const descriptor_1 = require("@bitgo-beta/utxo-core/descriptor");
6
+ const descriptor_2 = require("./descriptor");
7
+ /**
8
+ * @return parsed staking descriptor components or null if the descriptor does not match the expected staking pattern.
9
+ */
10
+ function parseStakingDescriptor(descriptor) {
11
+ const pattern = {
12
+ tr: [
13
+ (0, descriptor_2.getUnspendableKey)(),
14
+ [{ $var: 'slashingMiniscriptNode' }, [{ $var: 'unbondingMiniscriptNode' }, { $var: 'timelockMiniscriptNode' }]],
15
+ ],
16
+ };
17
+ const matcher = new descriptor_1.PatternMatcher();
18
+ const descriptorNode = descriptor instanceof wasm_miniscript_1.Descriptor ? wasm_miniscript_1.ast.fromDescriptor(descriptor) : descriptor;
19
+ const result = matcher.match(descriptorNode, pattern);
20
+ if (!result) {
21
+ return null;
22
+ }
23
+ const slashingNode = result.slashingMiniscriptNode;
24
+ const unbondingNode = result.unbondingMiniscriptNode;
25
+ const timelockNode = result.timelockMiniscriptNode;
26
+ // Verify slashing node shape: and_v([and_v([pk, pk/multi_a]), multi_a])
27
+ const slashingPattern = {
28
+ and_v: [
29
+ {
30
+ and_v: [{ 'v:pk': { $var: 'stakerKey1' } }, { $var: 'finalityProviderKeyOrMulti' }],
31
+ },
32
+ { multi_a: { $var: 'covenantMulti' } },
33
+ ],
34
+ };
35
+ const slashingMatch = matcher.match(slashingNode, slashingPattern);
36
+ if (!slashingMatch) {
37
+ throw new Error('Slashing node does not match expected pattern');
38
+ }
39
+ // Verify unbonding node shape: and_v([pk, multi_a])
40
+ const unbondingPattern = {
41
+ and_v: [{ 'v:pk': { $var: 'stakerKey2' } }, { multi_a: { $var: 'covenantMulti2' } }],
42
+ };
43
+ const unbondingMatch = matcher.match(unbondingNode, unbondingPattern);
44
+ if (!unbondingMatch) {
45
+ throw new Error('Unbonding node does not match expected pattern');
46
+ }
47
+ // Verify unbonding timelock node shape: and_v([pk, older])
48
+ const timelockPattern = {
49
+ and_v: [{ 'v:pk': { $var: 'stakerKey3' } }, { older: { $var: 'unbondingTimeLockValue' } }],
50
+ };
51
+ const timelockMatch = matcher.match(timelockNode, timelockPattern);
52
+ if (!timelockMatch) {
53
+ throw new Error('Unbonding timelock node does not match expected pattern');
54
+ }
55
+ // Verify all staker keys are the same
56
+ if (slashingMatch.stakerKey1 !== unbondingMatch.stakerKey2 ||
57
+ unbondingMatch.stakerKey2 !== timelockMatch.stakerKey3) {
58
+ throw new Error('Staker keys must be identical across all nodes');
59
+ }
60
+ // Verify timelock value is a number
61
+ if (typeof timelockMatch.unbondingTimeLockValue !== 'number') {
62
+ throw new Error('Unbonding timelock value must be a number');
63
+ }
64
+ return {
65
+ slashingMiniscriptNode: slashingNode,
66
+ unbondingMiniscriptNode: unbondingNode,
67
+ timelockMiniscriptNode: timelockNode,
68
+ };
69
+ }
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VEZXNjcmlwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhYnlsb24vcGFyc2VEZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBY0Esd0RBeUVDO0FBdkZELDREQUF5RDtBQUN6RCxpRUFBMkU7QUFFM0UsNkNBQWlEO0FBUWpEOztHQUVHO0FBQ0gsU0FBZ0Isc0JBQXNCLENBQUMsVUFBMkM7SUFDaEYsTUFBTSxPQUFPLEdBQVk7UUFDdkIsRUFBRSxFQUFFO1lBQ0YsSUFBQSw4QkFBaUIsR0FBRTtZQUNuQixDQUFDLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSx5QkFBeUIsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLENBQUMsQ0FBQztTQUNoSDtLQUNGLENBQUM7SUFFRixNQUFNLE9BQU8sR0FBRyxJQUFJLDJCQUFjLEVBQUUsQ0FBQztJQUNyQyxNQUFNLGNBQWMsR0FBRyxVQUFVLFlBQVksNEJBQVUsQ0FBQyxDQUFDLENBQUMscUJBQUcsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztJQUN0RyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUV0RCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsc0JBQTRDLENBQUM7SUFDekUsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLHVCQUE2QyxDQUFDO0lBQzNFLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxzQkFBNEMsQ0FBQztJQUV6RSx3RUFBd0U7SUFDeEUsTUFBTSxlQUFlLEdBQVk7UUFDL0IsS0FBSyxFQUFFO1lBQ0w7Z0JBQ0UsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSw0QkFBNEIsRUFBRSxDQUFDO2FBQ3BGO1lBQ0QsRUFBRSxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEVBQUU7U0FDdkM7S0FDRixDQUFDO0lBRUYsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDbkUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsK0NBQStDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsb0RBQW9EO0lBQ3BELE1BQU0sZ0JBQWdCLEdBQVk7UUFDaEMsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLENBQUM7S0FDckYsQ0FBQztJQUVGLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDdEUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsMkRBQTJEO0lBQzNELE1BQU0sZUFBZSxHQUFZO1FBQy9CLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsRUFBRSxDQUFDO0tBQzNGLENBQUM7SUFFRixNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsQ0FBQztJQUNuRSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbkIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsSUFDRSxhQUFhLENBQUMsVUFBVSxLQUFLLGNBQWMsQ0FBQyxVQUFVO1FBQ3RELGNBQWMsQ0FBQyxVQUFVLEtBQUssYUFBYSxDQUFDLFVBQVUsRUFDdEQsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsb0NBQW9DO0lBQ3BDLElBQUksT0FBTyxhQUFhLENBQUMsc0JBQXNCLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDN0QsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxPQUFPO1FBQ0wsc0JBQXNCLEVBQUUsWUFBWTtRQUNwQyx1QkFBdUIsRUFBRSxhQUFhO1FBQ3RDLHNCQUFzQixFQUFFLFlBQVk7S0FDckMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXNjcmlwdG9yLCBhc3QgfSBmcm9tICdAYml0Z28vd2FzbS1taW5pc2NyaXB0JztcbmltcG9ydCB7IFBhdHRlcm5NYXRjaGVyLCBQYXR0ZXJuIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1jb3JlL2Rlc2NyaXB0b3InO1xuXG5pbXBvcnQgeyBnZXRVbnNwZW5kYWJsZUtleSB9IGZyb20gJy4vZGVzY3JpcHRvcic7XG5cbnR5cGUgUGFyc2VkU3Rha2luZ0Rlc2NyaXB0b3IgPSB7XG4gIHNsYXNoaW5nTWluaXNjcmlwdE5vZGU6IGFzdC5NaW5pc2NyaXB0Tm9kZTtcbiAgdW5ib25kaW5nTWluaXNjcmlwdE5vZGU6IGFzdC5NaW5pc2NyaXB0Tm9kZTtcbiAgdGltZWxvY2tNaW5pc2NyaXB0Tm9kZTogYXN0Lk1pbmlzY3JpcHROb2RlO1xufTtcblxuLyoqXG4gKiBAcmV0dXJuIHBhcnNlZCBzdGFraW5nIGRlc2NyaXB0b3IgY29tcG9uZW50cyBvciBudWxsIGlmIHRoZSBkZXNjcmlwdG9yIGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBzdGFraW5nIHBhdHRlcm4uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVN0YWtpbmdEZXNjcmlwdG9yKGRlc2NyaXB0b3I6IERlc2NyaXB0b3IgfCBhc3QuRGVzY3JpcHRvck5vZGUpOiBQYXJzZWRTdGFraW5nRGVzY3JpcHRvciB8IG51bGwge1xuICBjb25zdCBwYXR0ZXJuOiBQYXR0ZXJuID0ge1xuICAgIHRyOiBbXG4gICAgICBnZXRVbnNwZW5kYWJsZUtleSgpLFxuICAgICAgW3sgJHZhcjogJ3NsYXNoaW5nTWluaXNjcmlwdE5vZGUnIH0sIFt7ICR2YXI6ICd1bmJvbmRpbmdNaW5pc2NyaXB0Tm9kZScgfSwgeyAkdmFyOiAndGltZWxvY2tNaW5pc2NyaXB0Tm9kZScgfV1dLFxuICAgIF0sXG4gIH07XG5cbiAgY29uc3QgbWF0Y2hlciA9IG5ldyBQYXR0ZXJuTWF0Y2hlcigpO1xuICBjb25zdCBkZXNjcmlwdG9yTm9kZSA9IGRlc2NyaXB0b3IgaW5zdGFuY2VvZiBEZXNjcmlwdG9yID8gYXN0LmZyb21EZXNjcmlwdG9yKGRlc2NyaXB0b3IpIDogZGVzY3JpcHRvcjtcbiAgY29uc3QgcmVzdWx0ID0gbWF0Y2hlci5tYXRjaChkZXNjcmlwdG9yTm9kZSwgcGF0dGVybik7XG5cbiAgaWYgKCFyZXN1bHQpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IHNsYXNoaW5nTm9kZSA9IHJlc3VsdC5zbGFzaGluZ01pbmlzY3JpcHROb2RlIGFzIGFzdC5NaW5pc2NyaXB0Tm9kZTtcbiAgY29uc3QgdW5ib25kaW5nTm9kZSA9IHJlc3VsdC51bmJvbmRpbmdNaW5pc2NyaXB0Tm9kZSBhcyBhc3QuTWluaXNjcmlwdE5vZGU7XG4gIGNvbnN0IHRpbWVsb2NrTm9kZSA9IHJlc3VsdC50aW1lbG9ja01pbmlzY3JpcHROb2RlIGFzIGFzdC5NaW5pc2NyaXB0Tm9kZTtcblxuICAvLyBWZXJpZnkgc2xhc2hpbmcgbm9kZSBzaGFwZTogYW5kX3YoW2FuZF92KFtwaywgcGsvbXVsdGlfYV0pLCBtdWx0aV9hXSlcbiAgY29uc3Qgc2xhc2hpbmdQYXR0ZXJuOiBQYXR0ZXJuID0ge1xuICAgIGFuZF92OiBbXG4gICAgICB7XG4gICAgICAgIGFuZF92OiBbeyAndjpwayc6IHsgJHZhcjogJ3N0YWtlcktleTEnIH0gfSwgeyAkdmFyOiAnZmluYWxpdHlQcm92aWRlcktleU9yTXVsdGknIH1dLFxuICAgICAgfSxcbiAgICAgIHsgbXVsdGlfYTogeyAkdmFyOiAnY292ZW5hbnRNdWx0aScgfSB9LFxuICAgIF0sXG4gIH07XG5cbiAgY29uc3Qgc2xhc2hpbmdNYXRjaCA9IG1hdGNoZXIubWF0Y2goc2xhc2hpbmdOb2RlLCBzbGFzaGluZ1BhdHRlcm4pO1xuICBpZiAoIXNsYXNoaW5nTWF0Y2gpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1NsYXNoaW5nIG5vZGUgZG9lcyBub3QgbWF0Y2ggZXhwZWN0ZWQgcGF0dGVybicpO1xuICB9XG5cbiAgLy8gVmVyaWZ5IHVuYm9uZGluZyBub2RlIHNoYXBlOiBhbmRfdihbcGssIG11bHRpX2FdKVxuICBjb25zdCB1bmJvbmRpbmdQYXR0ZXJuOiBQYXR0ZXJuID0ge1xuICAgIGFuZF92OiBbeyAndjpwayc6IHsgJHZhcjogJ3N0YWtlcktleTInIH0gfSwgeyBtdWx0aV9hOiB7ICR2YXI6ICdjb3ZlbmFudE11bHRpMicgfSB9XSxcbiAgfTtcblxuICBjb25zdCB1bmJvbmRpbmdNYXRjaCA9IG1hdGNoZXIubWF0Y2godW5ib25kaW5nTm9kZSwgdW5ib25kaW5nUGF0dGVybik7XG4gIGlmICghdW5ib25kaW5nTWF0Y2gpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYm9uZGluZyBub2RlIGRvZXMgbm90IG1hdGNoIGV4cGVjdGVkIHBhdHRlcm4nKTtcbiAgfVxuXG4gIC8vIFZlcmlmeSB1bmJvbmRpbmcgdGltZWxvY2sgbm9kZSBzaGFwZTogYW5kX3YoW3BrLCBvbGRlcl0pXG4gIGNvbnN0IHRpbWVsb2NrUGF0dGVybjogUGF0dGVybiA9IHtcbiAgICBhbmRfdjogW3sgJ3Y6cGsnOiB7ICR2YXI6ICdzdGFrZXJLZXkzJyB9IH0sIHsgb2xkZXI6IHsgJHZhcjogJ3VuYm9uZGluZ1RpbWVMb2NrVmFsdWUnIH0gfV0sXG4gIH07XG5cbiAgY29uc3QgdGltZWxvY2tNYXRjaCA9IG1hdGNoZXIubWF0Y2godGltZWxvY2tOb2RlLCB0aW1lbG9ja1BhdHRlcm4pO1xuICBpZiAoIXRpbWVsb2NrTWF0Y2gpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYm9uZGluZyB0aW1lbG9jayBub2RlIGRvZXMgbm90IG1hdGNoIGV4cGVjdGVkIHBhdHRlcm4nKTtcbiAgfVxuXG4gIC8vIFZlcmlmeSBhbGwgc3Rha2VyIGtleXMgYXJlIHRoZSBzYW1lXG4gIGlmIChcbiAgICBzbGFzaGluZ01hdGNoLnN0YWtlcktleTEgIT09IHVuYm9uZGluZ01hdGNoLnN0YWtlcktleTIgfHxcbiAgICB1bmJvbmRpbmdNYXRjaC5zdGFrZXJLZXkyICE9PSB0aW1lbG9ja01hdGNoLnN0YWtlcktleTNcbiAgKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdTdGFrZXIga2V5cyBtdXN0IGJlIGlkZW50aWNhbCBhY3Jvc3MgYWxsIG5vZGVzJyk7XG4gIH1cblxuICAvLyBWZXJpZnkgdGltZWxvY2sgdmFsdWUgaXMgYSBudW1iZXJcbiAgaWYgKHR5cGVvZiB0aW1lbG9ja01hdGNoLnVuYm9uZGluZ1RpbWVMb2NrVmFsdWUgIT09ICdudW1iZXInKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdVbmJvbmRpbmcgdGltZWxvY2sgdmFsdWUgbXVzdCBiZSBhIG51bWJlcicpO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBzbGFzaGluZ01pbmlzY3JpcHROb2RlOiBzbGFzaGluZ05vZGUsXG4gICAgdW5ib25kaW5nTWluaXNjcmlwdE5vZGU6IHVuYm9uZGluZ05vZGUsXG4gICAgdGltZWxvY2tNaW5pc2NyaXB0Tm9kZTogdGltZWxvY2tOb2RlLFxuICB9O1xufVxuIl19
@@ -0,0 +1,6 @@
1
+ import * as bitcoinjslib from 'bitcoinjs-lib';
2
+ import * as utxolib from '@bitgo-beta/utxo-lib';
3
+ import * as vendor from '@bitgo-beta/babylonlabs-io-btc-staking-ts';
4
+ export declare const mockBabylonProvider: vendor.BabylonProvider;
5
+ export declare function createStakingManager(network: bitcoinjslib.Network | utxolib.Network, btcProvider: vendor.BtcProvider, stakingParams?: vendor.VersionedStakingParams[], babylonProvider?: vendor.BabylonProvider): vendor.BabylonBtcStakingManager;
6
+ //# sourceMappingURL=stakingManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakingManager.d.ts","sourceRoot":"","sources":["../../../src/babylon/stakingManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,YAAY,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,MAAM,MAAM,2CAA2C,CAAC;AA2EpE,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,eAIxC,CAAC;AAEF,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,EAC/C,WAAW,EAAE,MAAM,CAAC,WAAW,EAC/B,aAAa,CAAC,EAAE,MAAM,CAAC,sBAAsB,EAAE,EAC/C,eAAe,yBAAsB,GACpC,MAAM,CAAC,wBAAwB,CAiBjC"}