@bitgo-beta/utxo-staking 1.1.1-beta.44 → 1.1.1-beta.440

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 (39) 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 +29 -0
  5. package/dist/src/babylon/descriptor.d.ts.map +1 -0
  6. package/dist/src/babylon/descriptor.js +78 -0
  7. package/dist/src/babylon/index.d.ts +5 -0
  8. package/dist/src/babylon/index.d.ts.map +1 -0
  9. package/dist/src/babylon/index.js +48 -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/stakingManager.d.ts +6 -0
  16. package/dist/src/babylon/stakingManager.d.ts.map +1 -0
  17. package/dist/src/babylon/stakingManager.js +116 -0
  18. package/dist/src/babylon/stakingParams.d.ts +40 -0
  19. package/dist/src/babylon/stakingParams.d.ts.map +1 -0
  20. package/dist/src/babylon/stakingParams.js +132 -0
  21. package/dist/src/coreDao/descriptor.d.ts +4 -2
  22. package/dist/src/coreDao/descriptor.d.ts.map +1 -1
  23. package/dist/src/coreDao/descriptor.js +11 -3
  24. package/dist/src/coreDao/opReturn.d.ts +1 -0
  25. package/dist/src/coreDao/opReturn.d.ts.map +1 -1
  26. package/dist/src/coreDao/opReturn.js +5 -2
  27. package/dist/src/coreDao/transaction.d.ts +15 -6
  28. package/dist/src/coreDao/transaction.d.ts.map +1 -1
  29. package/dist/src/coreDao/transaction.js +12 -4
  30. package/dist/src/index.d.ts +1 -1
  31. package/dist/src/index.d.ts.map +1 -1
  32. package/dist/src/index.js +26 -7
  33. package/package.json +20 -8
  34. package/.eslintignore +0 -5
  35. package/.mocharc.yml +0 -8
  36. package/CHANGELOG.md +0 -43
  37. package/dist/src/transaction.d.ts +0 -32
  38. package/dist/src/transaction.d.ts.map +0 -1
  39. package/dist/src/transaction.js +0 -54
@@ -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,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"}
@@ -0,0 +1,116 @@
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.mockBabylonProvider = void 0;
37
+ exports.createStakingManager = createStakingManager;
38
+ const bitcoinjslib = __importStar(require("bitcoinjs-lib"));
39
+ const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
40
+ const vendor = __importStar(require("@bitgo-beta/babylonlabs-io-btc-staking-ts"));
41
+ const pop_1 = require("@babylonlabs-io/babylon-proto-ts/dist/generated/babylon/btcstaking/v1/pop");
42
+ const stakingParams_1 = require("./stakingParams");
43
+ /**
44
+ * Subclass of BabylonBtcStakingManager with the sole purpose of forcing
45
+ * a ECDSA signature.
46
+ */
47
+ class BitGoStakingManager extends vendor.BabylonBtcStakingManager {
48
+ constructor(network, stakingParams, btcProvider, babylonProvider) {
49
+ super(network, stakingParams, btcProvider, babylonProvider);
50
+ }
51
+ /**
52
+ * Creates a proof of possession for the staker based on ECDSA signature.
53
+ *
54
+ * This is a parameterized version of the superclass method which infers
55
+ * the signature type from the stakerBtcAddress.
56
+ *
57
+ * @param bech32Address - The staker's bech32 address on the babylon network.
58
+ * @param stakerBtcAddress - The staker's BTC address.
59
+ * @param sigType - The signature type (BIP322 or ECDSA).
60
+ * @returns The proof of possession.
61
+ */
62
+ async createProofOfPossessionWithSigType(bech32Address, stakerBtcAddress, sigType) {
63
+ const signedBabylonAddress = await this.btcProvider.signMessage(bech32Address, sigType === pop_1.BTCSigType.BIP322 ? 'bip322-simple' : 'ecdsa');
64
+ let btcSig;
65
+ if (sigType === pop_1.BTCSigType.BIP322) {
66
+ const bip322Sig = pop_1.BIP322Sig.fromPartial({
67
+ address: stakerBtcAddress,
68
+ sig: Buffer.from(signedBabylonAddress, 'base64'),
69
+ });
70
+ // Encode the BIP322 protobuf message to a Uint8Array
71
+ btcSig = pop_1.BIP322Sig.encode(bip322Sig).finish();
72
+ }
73
+ else {
74
+ // Encode the ECDSA signature to a Uint8Array
75
+ btcSig = Buffer.from(signedBabylonAddress, 'base64');
76
+ }
77
+ return {
78
+ btcSigType: sigType,
79
+ btcSig,
80
+ };
81
+ }
82
+ /**
83
+ * Creates a proof of possession for the staker based on ECDSA signature.
84
+ * @param bech32Address - The staker's bech32 address on the babylon network.
85
+ * @param stakerBtcAddress
86
+ * @returns The proof of possession.
87
+ */
88
+ async createProofOfPossession(bech32Address, stakerBtcAddress) {
89
+ // force the ECDSA signature type
90
+ return this.createProofOfPossessionWithSigType(bech32Address, stakerBtcAddress, pop_1.BTCSigType.ECDSA);
91
+ }
92
+ }
93
+ exports.mockBabylonProvider = {
94
+ signTransaction() {
95
+ throw new Error('Function not implemented.');
96
+ },
97
+ };
98
+ function createStakingManager(network, btcProvider, stakingParams, babylonProvider = exports.mockBabylonProvider) {
99
+ if (utxolib.isValidNetwork(network)) {
100
+ switch (network) {
101
+ case utxolib.networks.bitcoin:
102
+ network = bitcoinjslib.networks.bitcoin;
103
+ break;
104
+ case utxolib.networks.testnet:
105
+ case utxolib.networks.bitcoinTestnet4:
106
+ throw new Error('Unsupported bitcoin testnet network - only signet is supported');
107
+ case utxolib.networks.bitcoinPublicSignet:
108
+ network = bitcoinjslib.networks.testnet;
109
+ break;
110
+ default:
111
+ throw new Error('Unsupported network');
112
+ }
113
+ }
114
+ return new BitGoStakingManager(network, stakingParams ?? (0, stakingParams_1.getStakingParams)(network), btcProvider, babylonProvider);
115
+ }
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ01hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFieWxvbi9zdGFraW5nTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtRkEsb0RBc0JDO0FBekdELDREQUE4QztBQUM5Qyw4REFBZ0Q7QUFDaEQsa0ZBQW9FO0FBQ3BFLG1HQUltRjtBQUVuRixtREFBbUQ7QUFFbkQ7OztHQUdHO0FBQ0gsTUFBTSxtQkFBb0IsU0FBUSxNQUFNLENBQUMsd0JBQXdCO0lBQy9ELFlBQ0UsT0FBNkIsRUFDN0IsYUFBOEMsRUFDOUMsV0FBK0IsRUFDL0IsZUFBdUM7UUFFdkMsS0FBSyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsS0FBSyxDQUFDLGtDQUFrQyxDQUN0QyxhQUFxQixFQUNyQixnQkFBd0IsRUFDeEIsT0FBbUI7UUFFbkIsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUM3RCxhQUFhLEVBQ2IsT0FBTyxLQUFLLGdCQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDMUQsQ0FBQztRQUVGLElBQUksTUFBa0IsQ0FBQztRQUN2QixJQUFJLE9BQU8sS0FBSyxnQkFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2xDLE1BQU0sU0FBUyxHQUFHLGVBQVMsQ0FBQyxXQUFXLENBQUM7Z0JBQ3RDLE9BQU8sRUFBRSxnQkFBZ0I7Z0JBQ3pCLEdBQUcsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFFBQVEsQ0FBQzthQUNqRCxDQUFDLENBQUM7WUFDSCxxREFBcUQ7WUFDckQsTUFBTSxHQUFHLGVBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEQsQ0FBQzthQUFNLENBQUM7WUFDTiw2Q0FBNkM7WUFDN0MsTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVELE9BQU87WUFDTCxVQUFVLEVBQUUsT0FBTztZQUNuQixNQUFNO1NBQ1AsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxhQUFxQixFQUFFLGdCQUF3QjtRQUMzRSxpQ0FBaUM7UUFDakMsT0FBTyxJQUFJLENBQUMsa0NBQWtDLENBQUMsYUFBYSxFQUFFLGdCQUFnQixFQUFFLGdCQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEcsQ0FBQztDQUNGO0FBRVksUUFBQSxtQkFBbUIsR0FBMkI7SUFDekQsZUFBZTtRQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0NBQ0YsQ0FBQztBQUVGLFNBQWdCLG9CQUFvQixDQUNsQyxPQUErQyxFQUMvQyxXQUErQixFQUMvQixhQUErQyxFQUMvQyxlQUFlLEdBQUcsMkJBQW1CO0lBRXJDLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ3BDLFFBQVEsT0FBTyxFQUFFLENBQUM7WUFDaEIsS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU87Z0JBQzNCLE9BQU8sR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztnQkFDeEMsTUFBTTtZQUNSLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFDOUIsS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWU7Z0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztZQUNwRixLQUFLLE9BQU8sQ0FBQyxRQUFRLENBQUMsbUJBQW1CO2dCQUN2QyxPQUFPLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7Z0JBQ3hDLE1BQU07WUFDUjtnQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLElBQUksbUJBQW1CLENBQUMsT0FBTyxFQUFFLGFBQWEsSUFBSSxJQUFBLGdDQUFnQixFQUFDLE9BQU8sQ0FBQyxFQUFFLFdBQVcsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUNwSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYml0Y29pbmpzbGliIGZyb20gJ2JpdGNvaW5qcy1saWInO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgKiBhcyB2ZW5kb3IgZnJvbSAnQGJpdGdvLWJldGEvYmFieWxvbmxhYnMtaW8tYnRjLXN0YWtpbmctdHMnO1xuaW1wb3J0IHtcbiAgQklQMzIyU2lnLFxuICBCVENTaWdUeXBlLFxuICBQcm9vZk9mUG9zc2Vzc2lvbkJUQyxcbn0gZnJvbSAnQGJhYnlsb25sYWJzLWlvL2JhYnlsb24tcHJvdG8tdHMvZGlzdC9nZW5lcmF0ZWQvYmFieWxvbi9idGNzdGFraW5nL3YxL3BvcCc7XG5cbmltcG9ydCB7IGdldFN0YWtpbmdQYXJhbXMgfSBmcm9tICcuL3N0YWtpbmdQYXJhbXMnO1xuXG4vKipcbiAqIFN1YmNsYXNzIG9mIEJhYnlsb25CdGNTdGFraW5nTWFuYWdlciB3aXRoIHRoZSBzb2xlIHB1cnBvc2Ugb2YgZm9yY2luZ1xuICogYSBFQ0RTQSBzaWduYXR1cmUuXG4gKi9cbmNsYXNzIEJpdEdvU3Rha2luZ01hbmFnZXIgZXh0ZW5kcyB2ZW5kb3IuQmFieWxvbkJ0Y1N0YWtpbmdNYW5hZ2VyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgbmV0d29yazogYml0Y29pbmpzbGliLk5ldHdvcmssXG4gICAgc3Rha2luZ1BhcmFtczogdmVuZG9yLlZlcnNpb25lZFN0YWtpbmdQYXJhbXNbXSxcbiAgICBidGNQcm92aWRlcjogdmVuZG9yLkJ0Y1Byb3ZpZGVyLFxuICAgIGJhYnlsb25Qcm92aWRlcjogdmVuZG9yLkJhYnlsb25Qcm92aWRlclxuICApIHtcbiAgICBzdXBlcihuZXR3b3JrLCBzdGFraW5nUGFyYW1zLCBidGNQcm92aWRlciwgYmFieWxvblByb3ZpZGVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgcHJvb2Ygb2YgcG9zc2Vzc2lvbiBmb3IgdGhlIHN0YWtlciBiYXNlZCBvbiBFQ0RTQSBzaWduYXR1cmUuXG4gICAqXG4gICAqIFRoaXMgaXMgYSBwYXJhbWV0ZXJpemVkIHZlcnNpb24gb2YgdGhlIHN1cGVyY2xhc3MgbWV0aG9kIHdoaWNoIGluZmVyc1xuICAgKiB0aGUgc2lnbmF0dXJlIHR5cGUgZnJvbSB0aGUgc3Rha2VyQnRjQWRkcmVzcy5cbiAgICpcbiAgICogQHBhcmFtIGJlY2gzMkFkZHJlc3MgLSBUaGUgc3Rha2VyJ3MgYmVjaDMyIGFkZHJlc3Mgb24gdGhlIGJhYnlsb24gbmV0d29yay5cbiAgICogQHBhcmFtIHN0YWtlckJ0Y0FkZHJlc3MgLSBUaGUgc3Rha2VyJ3MgQlRDIGFkZHJlc3MuXG4gICAqIEBwYXJhbSBzaWdUeXBlIC0gVGhlIHNpZ25hdHVyZSB0eXBlIChCSVAzMjIgb3IgRUNEU0EpLlxuICAgKiBAcmV0dXJucyBUaGUgcHJvb2Ygb2YgcG9zc2Vzc2lvbi5cbiAgICovXG4gIGFzeW5jIGNyZWF0ZVByb29mT2ZQb3NzZXNzaW9uV2l0aFNpZ1R5cGUoXG4gICAgYmVjaDMyQWRkcmVzczogc3RyaW5nLFxuICAgIHN0YWtlckJ0Y0FkZHJlc3M6IHN0cmluZyxcbiAgICBzaWdUeXBlOiBCVENTaWdUeXBlXG4gICk6IFByb21pc2U8UHJvb2ZPZlBvc3Nlc3Npb25CVEM+IHtcbiAgICBjb25zdCBzaWduZWRCYWJ5bG9uQWRkcmVzcyA9IGF3YWl0IHRoaXMuYnRjUHJvdmlkZXIuc2lnbk1lc3NhZ2UoXG4gICAgICBiZWNoMzJBZGRyZXNzLFxuICAgICAgc2lnVHlwZSA9PT0gQlRDU2lnVHlwZS5CSVAzMjIgPyAnYmlwMzIyLXNpbXBsZScgOiAnZWNkc2EnXG4gICAgKTtcblxuICAgIGxldCBidGNTaWc6IFVpbnQ4QXJyYXk7XG4gICAgaWYgKHNpZ1R5cGUgPT09IEJUQ1NpZ1R5cGUuQklQMzIyKSB7XG4gICAgICBjb25zdCBiaXAzMjJTaWcgPSBCSVAzMjJTaWcuZnJvbVBhcnRpYWwoe1xuICAgICAgICBhZGRyZXNzOiBzdGFrZXJCdGNBZGRyZXNzLFxuICAgICAgICBzaWc6IEJ1ZmZlci5mcm9tKHNpZ25lZEJhYnlsb25BZGRyZXNzLCAnYmFzZTY0JyksXG4gICAgICB9KTtcbiAgICAgIC8vIEVuY29kZSB0aGUgQklQMzIyIHByb3RvYnVmIG1lc3NhZ2UgdG8gYSBVaW50OEFycmF5XG4gICAgICBidGNTaWcgPSBCSVAzMjJTaWcuZW5jb2RlKGJpcDMyMlNpZykuZmluaXNoKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEVuY29kZSB0aGUgRUNEU0Egc2lnbmF0dXJlIHRvIGEgVWludDhBcnJheVxuICAgICAgYnRjU2lnID0gQnVmZmVyLmZyb20oc2lnbmVkQmFieWxvbkFkZHJlc3MsICdiYXNlNjQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgYnRjU2lnVHlwZTogc2lnVHlwZSxcbiAgICAgIGJ0Y1NpZyxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBwcm9vZiBvZiBwb3NzZXNzaW9uIGZvciB0aGUgc3Rha2VyIGJhc2VkIG9uIEVDRFNBIHNpZ25hdHVyZS5cbiAgICogQHBhcmFtIGJlY2gzMkFkZHJlc3MgLSBUaGUgc3Rha2VyJ3MgYmVjaDMyIGFkZHJlc3Mgb24gdGhlIGJhYnlsb24gbmV0d29yay5cbiAgICogQHBhcmFtIHN0YWtlckJ0Y0FkZHJlc3NcbiAgICogQHJldHVybnMgVGhlIHByb29mIG9mIHBvc3Nlc3Npb24uXG4gICAqL1xuICBhc3luYyBjcmVhdGVQcm9vZk9mUG9zc2Vzc2lvbihiZWNoMzJBZGRyZXNzOiBzdHJpbmcsIHN0YWtlckJ0Y0FkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8UHJvb2ZPZlBvc3Nlc3Npb25CVEM+IHtcbiAgICAvLyBmb3JjZSB0aGUgRUNEU0Egc2lnbmF0dXJlIHR5cGVcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVQcm9vZk9mUG9zc2Vzc2lvbldpdGhTaWdUeXBlKGJlY2gzMkFkZHJlc3MsIHN0YWtlckJ0Y0FkZHJlc3MsIEJUQ1NpZ1R5cGUuRUNEU0EpO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBtb2NrQmFieWxvblByb3ZpZGVyOiB2ZW5kb3IuQmFieWxvblByb3ZpZGVyID0ge1xuICBzaWduVHJhbnNhY3Rpb24oKTogUHJvbWlzZTxVaW50OEFycmF5PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH0sXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU3Rha2luZ01hbmFnZXIoXG4gIG5ldHdvcms6IGJpdGNvaW5qc2xpYi5OZXR3b3JrIHwgdXR4b2xpYi5OZXR3b3JrLFxuICBidGNQcm92aWRlcjogdmVuZG9yLkJ0Y1Byb3ZpZGVyLFxuICBzdGFraW5nUGFyYW1zPzogdmVuZG9yLlZlcnNpb25lZFN0YWtpbmdQYXJhbXNbXSxcbiAgYmFieWxvblByb3ZpZGVyID0gbW9ja0JhYnlsb25Qcm92aWRlclxuKTogdmVuZG9yLkJhYnlsb25CdGNTdGFraW5nTWFuYWdlciB7XG4gIGlmICh1dHhvbGliLmlzVmFsaWROZXR3b3JrKG5ldHdvcmspKSB7XG4gICAgc3dpdGNoIChuZXR3b3JrKSB7XG4gICAgICBjYXNlIHV0eG9saWIubmV0d29ya3MuYml0Y29pbjpcbiAgICAgICAgbmV0d29yayA9IGJpdGNvaW5qc2xpYi5uZXR3b3Jrcy5iaXRjb2luO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy50ZXN0bmV0OlxuICAgICAgY2FzZSB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW5UZXN0bmV0NDpcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbnN1cHBvcnRlZCBiaXRjb2luIHRlc3RuZXQgbmV0d29yayAtIG9ubHkgc2lnbmV0IGlzIHN1cHBvcnRlZCcpO1xuICAgICAgY2FzZSB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW5QdWJsaWNTaWduZXQ6XG4gICAgICAgIG5ldHdvcmsgPSBiaXRjb2luanNsaWIubmV0d29ya3MudGVzdG5ldDtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIG5ldHdvcmsnKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG5ldyBCaXRHb1N0YWtpbmdNYW5hZ2VyKG5ldHdvcmssIHN0YWtpbmdQYXJhbXMgPz8gZ2V0U3Rha2luZ1BhcmFtcyhuZXR3b3JrKSwgYnRjUHJvdmlkZXIsIGJhYnlsb25Qcm92aWRlcik7XG59XG4iXX0=
@@ -0,0 +1,40 @@
1
+ import * as t from 'io-ts';
2
+ import * as tt from 'io-ts-types';
3
+ import * as utxolib from '@bitgo-beta/utxo-lib';
4
+ import { StakerInfo, StakingInputs, StakingParams, VersionedStakingParams } from '@bitgo-beta/babylonlabs-io-btc-staking-ts';
5
+ export { getBabylonParamByVersion, getBabylonParamByBtcHeight } from '@bitgo-beta/babylonlabs-io-btc-staking-ts';
6
+ import { BabylonDescriptorBuilder } from './descriptor';
7
+ import { BabylonNetworkLike } from './network';
8
+ /** @see https://docs.babylonlabs.io/api/babylon-gRPC/params/ */
9
+ declare const BabylonParamsJSON: t.TypeC<{
10
+ covenant_pks: t.ArrayC<t.StringC>;
11
+ covenant_quorum: t.NumberC;
12
+ min_staking_value_sat: tt.NumberFromStringC;
13
+ max_staking_value_sat: tt.NumberFromStringC;
14
+ min_staking_time_blocks: t.NumberC;
15
+ max_staking_time_blocks: t.NumberC;
16
+ slashing_pk_script: t.StringC;
17
+ min_slashing_tx_fee_sat: tt.NumberFromStringC;
18
+ slashing_rate: t.StringC;
19
+ unbonding_time_blocks: t.NumberC;
20
+ unbonding_fee_sat: tt.NumberFromStringC;
21
+ min_commission_rate: tt.NumberFromStringC;
22
+ delegation_creation_base_gas_fee: tt.NumberFromStringC;
23
+ allow_list_expiration_height: tt.NumberFromStringC;
24
+ btc_activation_height: t.NumberC;
25
+ }>;
26
+ type BabylonParamsJSON = t.TypeOf<typeof BabylonParamsJSON>;
27
+ export declare function toVersionedParams(ps: BabylonParamsJSON[]): VersionedStakingParams[];
28
+ export declare const mainnetStakingParams: readonly VersionedStakingParams[];
29
+ export declare const testnetStakingParams: readonly VersionedStakingParams[];
30
+ export declare function getStakingParams(network: BabylonNetworkLike): VersionedStakingParams[];
31
+ export declare const testnetFinalityProvider0: Buffer<ArrayBuffer>;
32
+ type DescriptorStakingParams = Pick<StakingParams, 'covenantNoCoordPks' | 'covenantQuorum' | 'minStakingTimeBlocks' | 'unbondingTime'>;
33
+ export declare function getDescriptorBuilderForParams(userKey: utxolib.BIP32Interface | utxolib.ECPairInterface | Buffer, finalityProviderKeys: Buffer[], stakingTimelock: number, params: DescriptorStakingParams): BabylonDescriptorBuilder;
34
+ export declare function getDescriptorProviderForStakingParams(stakerBtcInfo: Pick<StakerInfo, 'publicKeyNoCoordHex'>, stakingInput: StakingInputs, stakingParams: DescriptorStakingParams): BabylonDescriptorBuilder;
35
+ export declare function getTestnetDescriptorBuilder(userKey: utxolib.BIP32Interface | utxolib.ECPairInterface | Buffer, { finalityProviderKeys, params, stakingTimelock, }?: {
36
+ finalityProviderKeys?: Buffer[];
37
+ params?: StakingParams;
38
+ stakingTimelock?: number;
39
+ }): BabylonDescriptorBuilder;
40
+ //# sourceMappingURL=stakingParams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakingParams.d.ts","sourceRoot":"","sources":["../../../src/babylon/stakingParams.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAC3B,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAGlC,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAEL,UAAU,EACV,aAAa,EACb,aAAa,EACb,sBAAsB,EACvB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAEjH,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAGxD,OAAO,EAAE,kBAAkB,EAAoB,MAAM,WAAW,CAAC;AAEjE,gEAAgE;AAChE,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;EAgBrB,CAAC;AAEH,KAAK,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,iBAAiB,EAAE,GAAG,sBAAsB,EAAE,CAkBnF;AAeD,eAAO,MAAM,oBAAoB,EAAE,SAAS,sBAAsB,EAEjE,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,SAAS,sBAAsB,EAEjE,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,GAAG,sBAAsB,EAAE,CAStF;AAGD,eAAO,MAAM,wBAAwB,qBAGpC,CAAC;AAEF,KAAK,uBAAuB,GAAG,IAAI,CACjC,aAAa,EACb,oBAAoB,GAAG,gBAAgB,GAAG,sBAAsB,GAAG,eAAe,CACnF,CAAC;AAEF,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC,eAAe,GAAG,MAAM,EAClE,oBAAoB,EAAE,MAAM,EAAE,EAC9B,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,uBAAuB,GAC9B,wBAAwB,CAY1B;AAED,wBAAgB,qCAAqC,CACnD,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,qBAAqB,CAAC,EACtD,YAAY,EAAE,aAAa,EAC3B,aAAa,EAAE,uBAAuB,GACrC,wBAAwB,CAI1B;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC,eAAe,GAAG,MAAM,EAClE,EACE,oBAAiD,EACjD,MAAiE,EACjE,eAA6C,GAC9C,GAAE;IACD,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CACrB,GACL,wBAAwB,CAE1B"}