@bitgo-beta/utxo-staking 1.1.1-beta.34 → 1.1.1-beta.340
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/src/babylon/delegationMessage.d.ts +38 -0
- package/dist/src/babylon/delegationMessage.d.ts.map +1 -0
- package/dist/src/babylon/delegationMessage.js +261 -0
- package/dist/src/babylon/descriptor.d.ts +29 -0
- package/dist/src/babylon/descriptor.d.ts.map +1 -0
- package/dist/src/babylon/descriptor.js +78 -0
- package/dist/src/babylon/index.d.ts +5 -0
- package/dist/src/babylon/index.d.ts.map +1 -0
- package/dist/src/babylon/index.js +48 -0
- package/dist/src/babylon/network.d.ts +7 -0
- package/dist/src/babylon/network.d.ts.map +1 -0
- package/dist/src/babylon/network.js +66 -0
- package/dist/src/babylon/params.mainnet.json +118 -0
- package/dist/src/babylon/params.testnet.json +205 -0
- package/dist/src/babylon/stakingManager.d.ts +6 -0
- package/dist/src/babylon/stakingManager.d.ts.map +1 -0
- package/dist/src/babylon/stakingManager.js +116 -0
- package/dist/src/babylon/stakingParams.d.ts +39 -0
- package/dist/src/babylon/stakingParams.d.ts.map +1 -0
- package/dist/src/babylon/stakingParams.js +131 -0
- package/dist/src/coreDao/descriptor.d.ts +4 -2
- package/dist/src/coreDao/descriptor.d.ts.map +1 -1
- package/dist/src/coreDao/descriptor.js +11 -3
- package/dist/src/coreDao/opReturn.d.ts +1 -0
- package/dist/src/coreDao/opReturn.d.ts.map +1 -1
- package/dist/src/coreDao/opReturn.js +5 -2
- package/dist/src/coreDao/transaction.d.ts +15 -6
- package/dist/src/coreDao/transaction.d.ts.map +1 -1
- package/dist/src/coreDao/transaction.js +12 -4
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +26 -3
- package/dist/src/transaction.d.ts.map +1 -1
- package/dist/src/transaction.js +37 -2
- package/package.json +20 -7
- package/.eslintignore +0 -5
- package/.mocharc.yml +0 -8
- package/CHANGELOG.md +0 -43
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"params": {
|
|
4
|
+
"covenant_pks": [
|
|
5
|
+
"d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
|
|
6
|
+
"4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
|
|
7
|
+
"23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
|
|
8
|
+
"d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
|
|
9
|
+
"8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
|
|
10
|
+
"e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
|
|
11
|
+
"cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
|
|
12
|
+
"f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
|
|
13
|
+
"de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
|
|
14
|
+
],
|
|
15
|
+
"covenant_quorum": 6,
|
|
16
|
+
"min_staking_value_sat": "500000",
|
|
17
|
+
"max_staking_value_sat": "5000000",
|
|
18
|
+
"min_staking_time_blocks": 64000,
|
|
19
|
+
"max_staking_time_blocks": 64000,
|
|
20
|
+
"slashing_pk_script": "agdiYWJ5bG9u",
|
|
21
|
+
"min_slashing_tx_fee_sat": "100000",
|
|
22
|
+
"slashing_rate": "0.001000000000000000",
|
|
23
|
+
"unbonding_time_blocks": 1008,
|
|
24
|
+
"unbonding_fee_sat": "64000",
|
|
25
|
+
"min_commission_rate": "0.030000000000000000",
|
|
26
|
+
"delegation_creation_base_gas_fee": "1095000",
|
|
27
|
+
"allow_list_expiration_height": "139920",
|
|
28
|
+
"btc_activation_height": 857910
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"params": {
|
|
33
|
+
"covenant_pks": [
|
|
34
|
+
"d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
|
|
35
|
+
"4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
|
|
36
|
+
"23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
|
|
37
|
+
"d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
|
|
38
|
+
"8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
|
|
39
|
+
"e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
|
|
40
|
+
"cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
|
|
41
|
+
"f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
|
|
42
|
+
"de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
|
|
43
|
+
],
|
|
44
|
+
"covenant_quorum": 6,
|
|
45
|
+
"min_staking_value_sat": "500000",
|
|
46
|
+
"max_staking_value_sat": "50000000000",
|
|
47
|
+
"min_staking_time_blocks": 64000,
|
|
48
|
+
"max_staking_time_blocks": 64000,
|
|
49
|
+
"slashing_pk_script": "agdiYWJ5bG9u",
|
|
50
|
+
"min_slashing_tx_fee_sat": "100000",
|
|
51
|
+
"slashing_rate": "0.001000000000000000",
|
|
52
|
+
"unbonding_time_blocks": 1008,
|
|
53
|
+
"unbonding_fee_sat": "32000",
|
|
54
|
+
"min_commission_rate": "0.030000000000000000",
|
|
55
|
+
"delegation_creation_base_gas_fee": "1095000",
|
|
56
|
+
"allow_list_expiration_height": "139920",
|
|
57
|
+
"btc_activation_height": 864790
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"params": {
|
|
62
|
+
"covenant_pks": [
|
|
63
|
+
"d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
|
|
64
|
+
"4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
|
|
65
|
+
"23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
|
|
66
|
+
"d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
|
|
67
|
+
"8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
|
|
68
|
+
"e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
|
|
69
|
+
"cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204",
|
|
70
|
+
"f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
|
|
71
|
+
"de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c"
|
|
72
|
+
],
|
|
73
|
+
"covenant_quorum": 6,
|
|
74
|
+
"min_staking_value_sat": "500000",
|
|
75
|
+
"max_staking_value_sat": "500000000000",
|
|
76
|
+
"min_staking_time_blocks": 64000,
|
|
77
|
+
"max_staking_time_blocks": 64000,
|
|
78
|
+
"slashing_pk_script": "agdiYWJ5bG9u",
|
|
79
|
+
"min_slashing_tx_fee_sat": "100000",
|
|
80
|
+
"slashing_rate": "0.001000000000000000",
|
|
81
|
+
"unbonding_time_blocks": 1008,
|
|
82
|
+
"unbonding_fee_sat": "32000",
|
|
83
|
+
"min_commission_rate": "0.030000000000000000",
|
|
84
|
+
"delegation_creation_base_gas_fee": "1095000",
|
|
85
|
+
"allow_list_expiration_height": "139920",
|
|
86
|
+
"btc_activation_height": 874088
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"params": {
|
|
91
|
+
"covenant_pks": [
|
|
92
|
+
"d45c70d28f169e1f0c7f4a78e2bc73497afe585b70aa897955989068f3350aaa",
|
|
93
|
+
"4b15848e495a3a62283daaadb3f458a00859fe48e321f0121ebabbdd6698f9fa",
|
|
94
|
+
"23b29f89b45f4af41588dcaf0ca572ada32872a88224f311373917f1b37d08d1",
|
|
95
|
+
"d3c79b99ac4d265c2f97ac11e3232c07a598b020cf56c6f055472c893c0967ae",
|
|
96
|
+
"8242640732773249312c47ca7bdb50ca79f15f2ecc32b9c83ceebba44fb74df7",
|
|
97
|
+
"e36200aaa8dce9453567bba108bdc51f7f1174b97a65e4dc4402fc5de779d41c",
|
|
98
|
+
"f178fcce82f95c524b53b077e6180bd2d779a9057fdff4255a0af95af918cee0",
|
|
99
|
+
"de13fc96ea6899acbdc5db3afaa683f62fe35b60ff6eb723dad28a11d2b12f8c",
|
|
100
|
+
"cbdd028cfe32c1c1f2d84bfec71e19f92df509bba7b8ad31ca6c1a134fe09204"
|
|
101
|
+
],
|
|
102
|
+
"covenant_quorum": 6,
|
|
103
|
+
"min_staking_value_sat": "500000",
|
|
104
|
+
"max_staking_value_sat": "500000000000",
|
|
105
|
+
"min_staking_time_blocks": 64000,
|
|
106
|
+
"max_staking_time_blocks": 64000,
|
|
107
|
+
"slashing_pk_script": "agdiYWJ5bG9u",
|
|
108
|
+
"min_slashing_tx_fee_sat": "100000",
|
|
109
|
+
"slashing_rate": "0.001000000000000000",
|
|
110
|
+
"unbonding_time_blocks": 1008,
|
|
111
|
+
"unbonding_fee_sat": "32000",
|
|
112
|
+
"min_commission_rate": "0.030000000000000000",
|
|
113
|
+
"delegation_creation_base_gas_fee": "1095000",
|
|
114
|
+
"allow_list_expiration_height": "139920",
|
|
115
|
+
"btc_activation_height": 891425
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
]
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"params": {
|
|
4
|
+
"covenant_pks": [
|
|
5
|
+
"49766ccd9e3cd94343e2040474a77fb37cdfd30530d05f9f1e96ae1e2102c86e",
|
|
6
|
+
"76d1ae01f8fb6bf30108731c884cddcf57ef6eef2d9d9559e130894e0e40c62c",
|
|
7
|
+
"17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
|
|
8
|
+
"113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
|
|
9
|
+
"79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
|
|
10
|
+
"3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
|
|
11
|
+
"d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
|
|
12
|
+
"40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
|
|
13
|
+
"f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
|
|
14
|
+
],
|
|
15
|
+
"covenant_quorum": 6,
|
|
16
|
+
"min_staking_value_sat": "50000",
|
|
17
|
+
"max_staking_value_sat": "5000000",
|
|
18
|
+
"min_staking_time_blocks": 64000,
|
|
19
|
+
"max_staking_time_blocks": 64000,
|
|
20
|
+
"slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
|
|
21
|
+
"min_slashing_tx_fee_sat": "1000",
|
|
22
|
+
"slashing_rate": "0.100000000000000000",
|
|
23
|
+
"unbonding_time_blocks": 1008,
|
|
24
|
+
"unbonding_fee_sat": "2000",
|
|
25
|
+
"min_commission_rate": "0.030000000000000000",
|
|
26
|
+
"delegation_creation_base_gas_fee": "1000",
|
|
27
|
+
"allow_list_expiration_height": "26120",
|
|
28
|
+
"btc_activation_height": 197535
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"params": {
|
|
33
|
+
"covenant_pks": [
|
|
34
|
+
"09585ab55a971a231c945790a0a81df754e5a07263a5c20829931cc24683bbb7",
|
|
35
|
+
"76d1ae01f8fb6bf30108731c884cddcf57ef6eef2d9d9559e130894e0e40c62c",
|
|
36
|
+
"17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
|
|
37
|
+
"113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
|
|
38
|
+
"79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
|
|
39
|
+
"3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
|
|
40
|
+
"d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
|
|
41
|
+
"40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
|
|
42
|
+
"f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
|
|
43
|
+
],
|
|
44
|
+
"covenant_quorum": 6,
|
|
45
|
+
"min_staking_value_sat": "50000",
|
|
46
|
+
"max_staking_value_sat": "5000000",
|
|
47
|
+
"min_staking_time_blocks": 64000,
|
|
48
|
+
"max_staking_time_blocks": 64000,
|
|
49
|
+
"slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
|
|
50
|
+
"min_slashing_tx_fee_sat": "1000",
|
|
51
|
+
"slashing_rate": "0.100000000000000000",
|
|
52
|
+
"unbonding_time_blocks": 1008,
|
|
53
|
+
"unbonding_fee_sat": "10000",
|
|
54
|
+
"min_commission_rate": "0.030000000000000000",
|
|
55
|
+
"delegation_creation_base_gas_fee": "1000",
|
|
56
|
+
"allow_list_expiration_height": "26120",
|
|
57
|
+
"btc_activation_height": 198665
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"params": {
|
|
62
|
+
"covenant_pks": [
|
|
63
|
+
"fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
|
|
64
|
+
"0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
|
|
65
|
+
"17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
|
|
66
|
+
"113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
|
|
67
|
+
"79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
|
|
68
|
+
"3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
|
|
69
|
+
"d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
|
|
70
|
+
"40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
|
|
71
|
+
"f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
|
|
72
|
+
],
|
|
73
|
+
"covenant_quorum": 6,
|
|
74
|
+
"min_staking_value_sat": "50000",
|
|
75
|
+
"max_staking_value_sat": "5000000",
|
|
76
|
+
"min_staking_time_blocks": 64000,
|
|
77
|
+
"max_staking_time_blocks": 64000,
|
|
78
|
+
"slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
|
|
79
|
+
"min_slashing_tx_fee_sat": "1000",
|
|
80
|
+
"slashing_rate": "0.100000000000000000",
|
|
81
|
+
"unbonding_time_blocks": 1008,
|
|
82
|
+
"unbonding_fee_sat": "10000",
|
|
83
|
+
"min_commission_rate": "0.030000000000000000",
|
|
84
|
+
"delegation_creation_base_gas_fee": "1000",
|
|
85
|
+
"allow_list_expiration_height": "26120",
|
|
86
|
+
"btc_activation_height": 200665
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"params": {
|
|
91
|
+
"covenant_pks": [
|
|
92
|
+
"fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
|
|
93
|
+
"0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
|
|
94
|
+
"17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
|
|
95
|
+
"113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
|
|
96
|
+
"79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
|
|
97
|
+
"3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
|
|
98
|
+
"d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
|
|
99
|
+
"40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
|
|
100
|
+
"f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
|
|
101
|
+
],
|
|
102
|
+
"covenant_quorum": 6,
|
|
103
|
+
"min_staking_value_sat": "50000",
|
|
104
|
+
"max_staking_value_sat": "50000000",
|
|
105
|
+
"min_staking_time_blocks": 64000,
|
|
106
|
+
"max_staking_time_blocks": 64000,
|
|
107
|
+
"slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
|
|
108
|
+
"min_slashing_tx_fee_sat": "1000",
|
|
109
|
+
"slashing_rate": "0.100000000000000000",
|
|
110
|
+
"unbonding_time_blocks": 1008,
|
|
111
|
+
"unbonding_fee_sat": "5000",
|
|
112
|
+
"min_commission_rate": "0.030000000000000000",
|
|
113
|
+
"delegation_creation_base_gas_fee": "1000",
|
|
114
|
+
"allow_list_expiration_height": "26120",
|
|
115
|
+
"btc_activation_height": 215968
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"params": {
|
|
120
|
+
"covenant_pks": [
|
|
121
|
+
"fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
|
|
122
|
+
"0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
|
|
123
|
+
"17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
|
|
124
|
+
"113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
|
|
125
|
+
"79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
|
|
126
|
+
"3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
|
|
127
|
+
"d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
|
|
128
|
+
"40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
|
|
129
|
+
"f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
|
|
130
|
+
],
|
|
131
|
+
"covenant_quorum": 6,
|
|
132
|
+
"min_staking_value_sat": "50000",
|
|
133
|
+
"max_staking_value_sat": "50000000",
|
|
134
|
+
"min_staking_time_blocks": 64000,
|
|
135
|
+
"max_staking_time_blocks": 64000,
|
|
136
|
+
"slashing_pk_script": "dqkUAQEBAQEBAQEBAQEBAQEBAQEBAQGIrA==",
|
|
137
|
+
"min_slashing_tx_fee_sat": "1000",
|
|
138
|
+
"slashing_rate": "0.100000000000000000",
|
|
139
|
+
"unbonding_time_blocks": 1008,
|
|
140
|
+
"unbonding_fee_sat": "5000",
|
|
141
|
+
"min_commission_rate": "0.030000000000000000",
|
|
142
|
+
"delegation_creation_base_gas_fee": "1000",
|
|
143
|
+
"allow_list_expiration_height": "26120",
|
|
144
|
+
"btc_activation_height": 220637
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"params": {
|
|
149
|
+
"covenant_pks": [
|
|
150
|
+
"fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
|
|
151
|
+
"0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
|
|
152
|
+
"17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
|
|
153
|
+
"113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
|
|
154
|
+
"79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
|
|
155
|
+
"3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
|
|
156
|
+
"d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
|
|
157
|
+
"40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
|
|
158
|
+
"f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
|
|
159
|
+
],
|
|
160
|
+
"covenant_quorum": 6,
|
|
161
|
+
"min_staking_value_sat": "50000",
|
|
162
|
+
"max_staking_value_sat": "35000000000",
|
|
163
|
+
"min_staking_time_blocks": 10000,
|
|
164
|
+
"max_staking_time_blocks": 64000,
|
|
165
|
+
"slashing_pk_script": "ABRb4SYk0IorQkCV18ByIcM0UNFL8Q==",
|
|
166
|
+
"min_slashing_tx_fee_sat": "5000",
|
|
167
|
+
"slashing_rate": "0.050000000000000000",
|
|
168
|
+
"unbonding_time_blocks": 1008,
|
|
169
|
+
"unbonding_fee_sat": "2000",
|
|
170
|
+
"min_commission_rate": "0.030000000000000000",
|
|
171
|
+
"delegation_creation_base_gas_fee": "1095000",
|
|
172
|
+
"allow_list_expiration_height": "26124",
|
|
173
|
+
"btc_activation_height": 227174
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"params": {
|
|
178
|
+
"covenant_pks": [
|
|
179
|
+
"fa9d882d45f4060bdb8042183828cd87544f1ea997380e586cab77d5fd698737",
|
|
180
|
+
"0aee0509b16db71c999238a4827db945526859b13c95487ab46725357c9a9f25",
|
|
181
|
+
"17921cf156ccb4e73d428f996ed11b245313e37e27c978ac4d2cc21eca4672e4",
|
|
182
|
+
"113c3a32a9d320b72190a04a020a0db3976ef36972673258e9a38a364f3dc3b0",
|
|
183
|
+
"79a71ffd71c503ef2e2f91bccfc8fcda7946f4653cef0d9f3dde20795ef3b9f0",
|
|
184
|
+
"3bb93dfc8b61887d771f3630e9a63e97cbafcfcc78556a474df83a31a0ef899c",
|
|
185
|
+
"d21faf78c6751a0d38e6bd8028b907ff07e9a869a43fc837d6b3f8dff6119a36",
|
|
186
|
+
"40afaf47c4ffa56de86410d8e47baa2bb6f04b604f4ea24323737ddc3fe092df",
|
|
187
|
+
"f5199efae3f28bb82476163a7e458c7ad445d9bffb0682d10d3bdb2cb41f8e8e"
|
|
188
|
+
],
|
|
189
|
+
"covenant_quorum": 6,
|
|
190
|
+
"min_staking_value_sat": "50000",
|
|
191
|
+
"max_staking_value_sat": "35000000000",
|
|
192
|
+
"min_staking_time_blocks": 10000,
|
|
193
|
+
"max_staking_time_blocks": 64000,
|
|
194
|
+
"slashing_pk_script": "ABRb4SYk0IorQkCV18ByIcM0UNFL8Q==",
|
|
195
|
+
"min_slashing_tx_fee_sat": "6000",
|
|
196
|
+
"slashing_rate": "0.050000000000000000",
|
|
197
|
+
"unbonding_time_blocks": 1008,
|
|
198
|
+
"unbonding_fee_sat": "2000",
|
|
199
|
+
"min_commission_rate": "0.030000000000000000",
|
|
200
|
+
"delegation_creation_base_gas_fee": "1095000",
|
|
201
|
+
"allow_list_expiration_height": "26124",
|
|
202
|
+
"btc_activation_height": 235952
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
]
|
|
@@ -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;AA4EpE,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(vendor.SigningStep.PROOF_OF_POSSESSION, 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ01hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFieWxvbi9zdGFraW5nTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvRkEsb0RBc0JDO0FBMUdELDREQUE4QztBQUM5Qyw4REFBZ0Q7QUFDaEQsa0ZBQW9FO0FBQ3BFLG1HQUltRjtBQUVuRixtREFBbUQ7QUFFbkQ7OztHQUdHO0FBQ0gsTUFBTSxtQkFBb0IsU0FBUSxNQUFNLENBQUMsd0JBQXdCO0lBQy9ELFlBQ0UsT0FBNkIsRUFDN0IsYUFBOEMsRUFDOUMsV0FBK0IsRUFDL0IsZUFBdUM7UUFFdkMsS0FBSyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsS0FBSyxDQUFDLGtDQUFrQyxDQUN0QyxhQUFxQixFQUNyQixnQkFBd0IsRUFDeEIsT0FBbUI7UUFFbkIsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUM3RCxNQUFNLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUN0QyxhQUFhLEVBQ2IsT0FBTyxLQUFLLGdCQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDMUQsQ0FBQztRQUVGLElBQUksTUFBa0IsQ0FBQztRQUN2QixJQUFJLE9BQU8sS0FBSyxnQkFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2xDLE1BQU0sU0FBUyxHQUFHLGVBQVMsQ0FBQyxXQUFXLENBQUM7Z0JBQ3RDLE9BQU8sRUFBRSxnQkFBZ0I7Z0JBQ3pCLEdBQUcsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFFBQVEsQ0FBQzthQUNqRCxDQUFDLENBQUM7WUFDSCxxREFBcUQ7WUFDckQsTUFBTSxHQUFHLGVBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDaEQsQ0FBQzthQUFNLENBQUM7WUFDTiw2Q0FBNkM7WUFDN0MsTUFBTSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVELE9BQU87WUFDTCxVQUFVLEVBQUUsT0FBTztZQUNuQixNQUFNO1NBQ1AsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxhQUFxQixFQUFFLGdCQUF3QjtRQUMzRSxpQ0FBaUM7UUFDakMsT0FBTyxJQUFJLENBQUMsa0NBQWtDLENBQUMsYUFBYSxFQUFFLGdCQUFnQixFQUFFLGdCQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEcsQ0FBQztDQUNGO0FBRVksUUFBQSxtQkFBbUIsR0FBMkI7SUFDekQsZUFBZTtRQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0NBQ0YsQ0FBQztBQUVGLFNBQWdCLG9CQUFvQixDQUNsQyxPQUErQyxFQUMvQyxXQUErQixFQUMvQixhQUErQyxFQUMvQyxlQUFlLEdBQUcsMkJBQW1CO0lBRXJDLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ3BDLFFBQVEsT0FBTyxFQUFFLENBQUM7WUFDaEIsS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU87Z0JBQzNCLE9BQU8sR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztnQkFDeEMsTUFBTTtZQUNSLEtBQUssT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFDOUIsS0FBSyxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWU7Z0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztZQUNwRixLQUFLLE9BQU8sQ0FBQyxRQUFRLENBQUMsbUJBQW1CO2dCQUN2QyxPQUFPLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7Z0JBQ3hDLE1BQU07WUFDUjtnQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLElBQUksbUJBQW1CLENBQUMsT0FBTyxFQUFFLGFBQWEsSUFBSSxJQUFBLGdDQUFnQixFQUFDLE9BQU8sQ0FBQyxFQUFFLFdBQVcsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUNwSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYml0Y29pbmpzbGliIGZyb20gJ2JpdGNvaW5qcy1saWInO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgKiBhcyB2ZW5kb3IgZnJvbSAnQGJpdGdvLWJldGEvYmFieWxvbmxhYnMtaW8tYnRjLXN0YWtpbmctdHMnO1xuaW1wb3J0IHtcbiAgQklQMzIyU2lnLFxuICBCVENTaWdUeXBlLFxuICBQcm9vZk9mUG9zc2Vzc2lvbkJUQyxcbn0gZnJvbSAnQGJhYnlsb25sYWJzLWlvL2JhYnlsb24tcHJvdG8tdHMvZGlzdC9nZW5lcmF0ZWQvYmFieWxvbi9idGNzdGFraW5nL3YxL3BvcCc7XG5cbmltcG9ydCB7IGdldFN0YWtpbmdQYXJhbXMgfSBmcm9tICcuL3N0YWtpbmdQYXJhbXMnO1xuXG4vKipcbiAqIFN1YmNsYXNzIG9mIEJhYnlsb25CdGNTdGFraW5nTWFuYWdlciB3aXRoIHRoZSBzb2xlIHB1cnBvc2Ugb2YgZm9yY2luZ1xuICogYSBFQ0RTQSBzaWduYXR1cmUuXG4gKi9cbmNsYXNzIEJpdEdvU3Rha2luZ01hbmFnZXIgZXh0ZW5kcyB2ZW5kb3IuQmFieWxvbkJ0Y1N0YWtpbmdNYW5hZ2VyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgbmV0d29yazogYml0Y29pbmpzbGliLk5ldHdvcmssXG4gICAgc3Rha2luZ1BhcmFtczogdmVuZG9yLlZlcnNpb25lZFN0YWtpbmdQYXJhbXNbXSxcbiAgICBidGNQcm92aWRlcjogdmVuZG9yLkJ0Y1Byb3ZpZGVyLFxuICAgIGJhYnlsb25Qcm92aWRlcjogdmVuZG9yLkJhYnlsb25Qcm92aWRlclxuICApIHtcbiAgICBzdXBlcihuZXR3b3JrLCBzdGFraW5nUGFyYW1zLCBidGNQcm92aWRlciwgYmFieWxvblByb3ZpZGVyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgcHJvb2Ygb2YgcG9zc2Vzc2lvbiBmb3IgdGhlIHN0YWtlciBiYXNlZCBvbiBFQ0RTQSBzaWduYXR1cmUuXG4gICAqXG4gICAqIFRoaXMgaXMgYSBwYXJhbWV0ZXJpemVkIHZlcnNpb24gb2YgdGhlIHN1cGVyY2xhc3MgbWV0aG9kIHdoaWNoIGluZmVyc1xuICAgKiB0aGUgc2lnbmF0dXJlIHR5cGUgZnJvbSB0aGUgc3Rha2VyQnRjQWRkcmVzcy5cbiAgICpcbiAgICogQHBhcmFtIGJlY2gzMkFkZHJlc3MgLSBUaGUgc3Rha2VyJ3MgYmVjaDMyIGFkZHJlc3Mgb24gdGhlIGJhYnlsb24gbmV0d29yay5cbiAgICogQHBhcmFtIHN0YWtlckJ0Y0FkZHJlc3MgLSBUaGUgc3Rha2VyJ3MgQlRDIGFkZHJlc3MuXG4gICAqIEBwYXJhbSBzaWdUeXBlIC0gVGhlIHNpZ25hdHVyZSB0eXBlIChCSVAzMjIgb3IgRUNEU0EpLlxuICAgKiBAcmV0dXJucyBUaGUgcHJvb2Ygb2YgcG9zc2Vzc2lvbi5cbiAgICovXG4gIGFzeW5jIGNyZWF0ZVByb29mT2ZQb3NzZXNzaW9uV2l0aFNpZ1R5cGUoXG4gICAgYmVjaDMyQWRkcmVzczogc3RyaW5nLFxuICAgIHN0YWtlckJ0Y0FkZHJlc3M6IHN0cmluZyxcbiAgICBzaWdUeXBlOiBCVENTaWdUeXBlXG4gICk6IFByb21pc2U8UHJvb2ZPZlBvc3Nlc3Npb25CVEM+IHtcbiAgICBjb25zdCBzaWduZWRCYWJ5bG9uQWRkcmVzcyA9IGF3YWl0IHRoaXMuYnRjUHJvdmlkZXIuc2lnbk1lc3NhZ2UoXG4gICAgICB2ZW5kb3IuU2lnbmluZ1N0ZXAuUFJPT0ZfT0ZfUE9TU0VTU0lPTixcbiAgICAgIGJlY2gzMkFkZHJlc3MsXG4gICAgICBzaWdUeXBlID09PSBCVENTaWdUeXBlLkJJUDMyMiA/ICdiaXAzMjItc2ltcGxlJyA6ICdlY2RzYSdcbiAgICApO1xuXG4gICAgbGV0IGJ0Y1NpZzogVWludDhBcnJheTtcbiAgICBpZiAoc2lnVHlwZSA9PT0gQlRDU2lnVHlwZS5CSVAzMjIpIHtcbiAgICAgIGNvbnN0IGJpcDMyMlNpZyA9IEJJUDMyMlNpZy5mcm9tUGFydGlhbCh7XG4gICAgICAgIGFkZHJlc3M6IHN0YWtlckJ0Y0FkZHJlc3MsXG4gICAgICAgIHNpZzogQnVmZmVyLmZyb20oc2lnbmVkQmFieWxvbkFkZHJlc3MsICdiYXNlNjQnKSxcbiAgICAgIH0pO1xuICAgICAgLy8gRW5jb2RlIHRoZSBCSVAzMjIgcHJvdG9idWYgbWVzc2FnZSB0byBhIFVpbnQ4QXJyYXlcbiAgICAgIGJ0Y1NpZyA9IEJJUDMyMlNpZy5lbmNvZGUoYmlwMzIyU2lnKS5maW5pc2goKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRW5jb2RlIHRoZSBFQ0RTQSBzaWduYXR1cmUgdG8gYSBVaW50OEFycmF5XG4gICAgICBidGNTaWcgPSBCdWZmZXIuZnJvbShzaWduZWRCYWJ5bG9uQWRkcmVzcywgJ2Jhc2U2NCcpO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBidGNTaWdUeXBlOiBzaWdUeXBlLFxuICAgICAgYnRjU2lnLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHByb29mIG9mIHBvc3Nlc3Npb24gZm9yIHRoZSBzdGFrZXIgYmFzZWQgb24gRUNEU0Egc2lnbmF0dXJlLlxuICAgKiBAcGFyYW0gYmVjaDMyQWRkcmVzcyAtIFRoZSBzdGFrZXIncyBiZWNoMzIgYWRkcmVzcyBvbiB0aGUgYmFieWxvbiBuZXR3b3JrLlxuICAgKiBAcGFyYW0gc3Rha2VyQnRjQWRkcmVzc1xuICAgKiBAcmV0dXJucyBUaGUgcHJvb2Ygb2YgcG9zc2Vzc2lvbi5cbiAgICovXG4gIGFzeW5jIGNyZWF0ZVByb29mT2ZQb3NzZXNzaW9uKGJlY2gzMkFkZHJlc3M6IHN0cmluZywgc3Rha2VyQnRjQWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxQcm9vZk9mUG9zc2Vzc2lvbkJUQz4ge1xuICAgIC8vIGZvcmNlIHRoZSBFQ0RTQSBzaWduYXR1cmUgdHlwZVxuICAgIHJldHVybiB0aGlzLmNyZWF0ZVByb29mT2ZQb3NzZXNzaW9uV2l0aFNpZ1R5cGUoYmVjaDMyQWRkcmVzcywgc3Rha2VyQnRjQWRkcmVzcywgQlRDU2lnVHlwZS5FQ0RTQSk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IG1vY2tCYWJ5bG9uUHJvdmlkZXI6IHZlbmRvci5CYWJ5bG9uUHJvdmlkZXIgPSB7XG4gIHNpZ25UcmFuc2FjdGlvbigpOiBQcm9taXNlPFVpbnQ4QXJyYXk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0Z1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfSxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTdGFraW5nTWFuYWdlcihcbiAgbmV0d29yazogYml0Y29pbmpzbGliLk5ldHdvcmsgfCB1dHhvbGliLk5ldHdvcmssXG4gIGJ0Y1Byb3ZpZGVyOiB2ZW5kb3IuQnRjUHJvdmlkZXIsXG4gIHN0YWtpbmdQYXJhbXM/OiB2ZW5kb3IuVmVyc2lvbmVkU3Rha2luZ1BhcmFtc1tdLFxuICBiYWJ5bG9uUHJvdmlkZXIgPSBtb2NrQmFieWxvblByb3ZpZGVyXG4pOiB2ZW5kb3IuQmFieWxvbkJ0Y1N0YWtpbmdNYW5hZ2VyIHtcbiAgaWYgKHV0eG9saWIuaXNWYWxpZE5ldHdvcmsobmV0d29yaykpIHtcbiAgICBzd2l0Y2ggKG5ldHdvcmspIHtcbiAgICAgIGNhc2UgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luOlxuICAgICAgICBuZXR3b3JrID0gYml0Y29pbmpzbGliLm5ldHdvcmtzLmJpdGNvaW47XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSB1dHhvbGliLm5ldHdvcmtzLnRlc3RuZXQ6XG4gICAgICBjYXNlIHV0eG9saWIubmV0d29ya3MuYml0Y29pblRlc3RuZXQ0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1Vuc3VwcG9ydGVkIGJpdGNvaW4gdGVzdG5ldCBuZXR3b3JrIC0gb25seSBzaWduZXQgaXMgc3VwcG9ydGVkJyk7XG4gICAgICBjYXNlIHV0eG9saWIubmV0d29ya3MuYml0Y29pblB1YmxpY1NpZ25ldDpcbiAgICAgICAgbmV0d29yayA9IGJpdGNvaW5qc2xpYi5uZXR3b3Jrcy50ZXN0bmV0O1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5zdXBwb3J0ZWQgbmV0d29yaycpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbmV3IEJpdEdvU3Rha2luZ01hbmFnZXIobmV0d29yaywgc3Rha2luZ1BhcmFtcyA/PyBnZXRTdGFraW5nUGFyYW1zKG5ldHdvcmspLCBidGNQcm92aWRlciwgYmFieWxvblByb3ZpZGVyKTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
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
|
+
declare const BabylonParamsJSON: t.TypeC<{
|
|
9
|
+
covenant_pks: t.ArrayC<t.StringC>;
|
|
10
|
+
covenant_quorum: t.NumberC;
|
|
11
|
+
min_staking_value_sat: tt.NumberFromStringC;
|
|
12
|
+
max_staking_value_sat: tt.NumberFromStringC;
|
|
13
|
+
min_staking_time_blocks: t.NumberC;
|
|
14
|
+
max_staking_time_blocks: t.NumberC;
|
|
15
|
+
slashing_pk_script: t.StringC;
|
|
16
|
+
min_slashing_tx_fee_sat: tt.NumberFromStringC;
|
|
17
|
+
slashing_rate: t.StringC;
|
|
18
|
+
unbonding_time_blocks: t.NumberC;
|
|
19
|
+
unbonding_fee_sat: tt.NumberFromStringC;
|
|
20
|
+
min_commission_rate: tt.NumberFromStringC;
|
|
21
|
+
delegation_creation_base_gas_fee: tt.NumberFromStringC;
|
|
22
|
+
allow_list_expiration_height: tt.NumberFromStringC;
|
|
23
|
+
btc_activation_height: t.NumberC;
|
|
24
|
+
}>;
|
|
25
|
+
type BabylonParamsJSON = t.TypeOf<typeof BabylonParamsJSON>;
|
|
26
|
+
export declare function toVersionedParams(ps: BabylonParamsJSON[]): VersionedStakingParams[];
|
|
27
|
+
export declare const mainnetStakingParams: readonly VersionedStakingParams[];
|
|
28
|
+
export declare const testnetStakingParams: readonly VersionedStakingParams[];
|
|
29
|
+
export declare function getStakingParams(network: BabylonNetworkLike): VersionedStakingParams[];
|
|
30
|
+
export declare const testnetFinalityProvider0: Buffer<ArrayBuffer>;
|
|
31
|
+
type DescriptorStakingParams = Pick<StakingParams, 'covenantNoCoordPks' | 'covenantQuorum' | 'minStakingTimeBlocks' | 'unbondingTime'>;
|
|
32
|
+
export declare function getDescriptorBuilderForParams(userKey: utxolib.BIP32Interface | utxolib.ECPairInterface | Buffer, finalityProviderKeys: Buffer[], stakingTimelock: number, params: DescriptorStakingParams): BabylonDescriptorBuilder;
|
|
33
|
+
export declare function getDescriptorProviderForStakingParams(stakerBtcInfo: Pick<StakerInfo, 'publicKeyNoCoordHex'>, stakingInput: StakingInputs, stakingParams: DescriptorStakingParams): BabylonDescriptorBuilder;
|
|
34
|
+
export declare function getTestnetDescriptorBuilder(userKey: utxolib.BIP32Interface | utxolib.ECPairInterface | Buffer, { finalityProviderKeys, params, stakingTimelock, }?: {
|
|
35
|
+
finalityProviderKeys?: Buffer[];
|
|
36
|
+
params?: StakingParams;
|
|
37
|
+
stakingTimelock?: number;
|
|
38
|
+
}): BabylonDescriptorBuilder;
|
|
39
|
+
//# 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,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"}
|