@wireio/stake 0.1.0 → 0.1.2

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 (104) hide show
  1. package/README.md +57 -0
  2. package/lib/stake.browser.js +11836 -4103
  3. package/lib/stake.browser.js.map +1 -1
  4. package/lib/stake.d.ts +374 -556
  5. package/lib/stake.js +12089 -4303
  6. package/lib/stake.js.map +1 -1
  7. package/lib/stake.m.js +11836 -4103
  8. package/lib/stake.m.js.map +1 -1
  9. package/package.json +1 -1
  10. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.dbg.json +4 -0
  11. package/src/assets/ethereum/ABI/liqEth/DepositManager.sol/DepositManager.json +1153 -0
  12. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.dbg.json +4 -0
  13. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IAccounting.json +172 -0
  14. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.dbg.json +4 -0
  15. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositContract.json +39 -0
  16. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.dbg.json +4 -0
  17. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IDepositManager.json +64 -0
  18. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.dbg.json +4 -0
  19. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthBurn.json +24 -0
  20. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthMint.dbg.json +4 -0
  21. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/ILiqEthMint.json +35 -0
  22. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.dbg.json +4 -0
  23. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IRewardsERC20.json +213 -0
  24. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.dbg.json +4 -0
  25. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IStakingModule.json +138 -0
  26. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.dbg.json +4 -0
  27. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IValidatorBalanceVerifier.json +70 -0
  28. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.dbg.json +4 -0
  29. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/IWithdrawalRecord.json +64 -0
  30. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.dbg.json +4 -0
  31. package/src/assets/ethereum/ABI/liqEth/LiqEthCommon.sol/LiqEthCommon.json +10 -0
  32. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.dbg.json +4 -0
  33. package/src/assets/ethereum/ABI/liqEth/RewardsERC20.sol/RewardsERC20.json +749 -0
  34. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.dbg.json +4 -0
  35. package/src/assets/ethereum/ABI/liqEth/RewardsERC20Pausable.sol/RewardsERC20Pausable.json +812 -0
  36. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.dbg.json +4 -0
  37. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/BeaconRoots.json +10 -0
  38. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.dbg.json +4 -0
  39. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/SSZ.json +10 -0
  40. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.dbg.json +4 -0
  41. package/src/assets/ethereum/ABI/liqEth/ValidatorBalanceVerifier.sol/ValidatorBalanceVerifier.json +225 -0
  42. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.dbg.json +4 -0
  43. package/src/assets/ethereum/ABI/liqEth/Yield.sol/BeaconRoots.json +10 -0
  44. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.dbg.json +4 -0
  45. package/src/assets/ethereum/ABI/liqEth/Yield.sol/SSZ.json +10 -0
  46. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.dbg.json +4 -0
  47. package/src/assets/ethereum/ABI/liqEth/Yield.sol/YieldOracle.json +813 -0
  48. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.dbg.json +4 -0
  49. package/src/assets/ethereum/ABI/liqEth/accounting.sol/Accounting.json +651 -0
  50. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.dbg.json +4 -0
  51. package/src/assets/ethereum/ABI/liqEth/liqEth.sol/LiqEthToken.json +1110 -0
  52. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.dbg.json +4 -0
  53. package/src/assets/ethereum/ABI/liqEth/liqEthBurn.sol/LiqEthBurn.json +391 -0
  54. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.dbg.json +4 -0
  55. package/src/assets/ethereum/ABI/liqEth/liqEthMint.sol/LiqEthMint.json +402 -0
  56. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.dbg.json +4 -0
  57. package/src/assets/ethereum/ABI/liqEth/stakingModule.sol/StakingModule.json +1225 -0
  58. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.dbg.json +4 -0
  59. package/src/assets/ethereum/ABI/liqEth/withdrawalQueue.sol/WithdrawalQueue.json +927 -0
  60. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.dbg.json +4 -0
  61. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/Uint64BE.json +10 -0
  62. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.dbg.json +4 -0
  63. package/src/assets/ethereum/ABI/liqEth/withdrawalVault.sol/WithdrawalVault.json +447 -0
  64. package/src/assets/solana/idl/liqsol_core.json +4239 -0
  65. package/src/assets/solana/idl/liqsol_token.json +183 -0
  66. package/src/assets/solana/idl/validator_leaderboard.json +270 -265
  67. package/src/assets/solana/types/liqsol_core.ts +4245 -0
  68. package/src/assets/solana/types/liqsol_token.ts +189 -0
  69. package/src/assets/solana/types/validator_leaderboard.ts +270 -265
  70. package/src/index.ts +1 -3
  71. package/src/networks/ethereum/contract.ts +101 -36
  72. package/src/networks/ethereum/ethereum.ts +141 -45
  73. package/src/networks/ethereum/types.ts +30 -2
  74. package/src/networks/solana/clients/deposit.client.ts +71 -109
  75. package/src/networks/solana/clients/distribution.client.ts +256 -383
  76. package/src/networks/solana/clients/leaderboard.client.ts +38 -133
  77. package/src/networks/solana/constants.ts +214 -130
  78. package/src/networks/solana/program.ts +25 -38
  79. package/src/networks/solana/solana.ts +120 -105
  80. package/src/networks/solana/types.ts +37 -47
  81. package/src/networks/solana/utils.ts +551 -0
  82. package/src/scripts/tsconfig.json +17 -0
  83. package/src/staker/staker.ts +10 -6
  84. package/src/staker/types.ts +14 -9
  85. package/src/assets/solana/idl/deposit.json +0 -296
  86. package/src/assets/solana/idl/distribution.json +0 -768
  87. package/src/assets/solana/idl/liq_sol_token.json +0 -298
  88. package/src/assets/solana/idl/mint_helper.json +0 -110
  89. package/src/assets/solana/idl/read_tracked_balance.json +0 -140
  90. package/src/assets/solana/idl/stake_controller.json +0 -2149
  91. package/src/assets/solana/idl/treasury.json +0 -110
  92. package/src/assets/solana/idl/validator_registry.json +0 -487
  93. package/src/assets/solana/idl/yield_oracle.json +0 -32
  94. package/src/assets/solana/types/deposit.ts +0 -302
  95. package/src/assets/solana/types/distribution.ts +0 -774
  96. package/src/assets/solana/types/liq_sol_token.ts +0 -304
  97. package/src/assets/solana/types/mint_helper.ts +0 -116
  98. package/src/assets/solana/types/read_tracked_balance.ts +0 -146
  99. package/src/assets/solana/types/stake_controller.ts +0 -2155
  100. package/src/assets/solana/types/stake_registry.ts +0 -441
  101. package/src/assets/solana/types/treasury.ts +0 -116
  102. package/src/assets/solana/types/validator_registry.ts +0 -493
  103. package/src/assets/solana/types/yield_oracle.ts +0 -38
  104. package/src/common/utils.ts +0 -9
@@ -1,2155 +0,0 @@
1
- /**
2
- * Program IDL in camelCase format in order to be used in JS/TS.
3
- *
4
- * Note that this is only a type helper and is not the actual IDL. The original
5
- * IDL can be found at `target/idl/stake_controller.json`.
6
- */
7
- export type StakeController = {
8
- "address": "4Ab1SwV6RPUN5Btnf95qvQCyNVR3iHnXjnMYaKsgimTp",
9
- "metadata": {
10
- "name": "stakeController",
11
- "version": "0.1.0",
12
- "spec": "0.1.0"
13
- },
14
- "instructions": [
15
- {
16
- "name": "calculateCompoundGrowth",
17
- "docs": [
18
- "Calculate compound growth for an amount using pay rate history - can be called via CPI"
19
- ],
20
- "discriminator": [
21
- 105,
22
- 2,
23
- 145,
24
- 40,
25
- 175,
26
- 163,
27
- 215,
28
- 99
29
- ],
30
- "accounts": [
31
- {
32
- "name": "payRateHistory",
33
- "docs": [
34
- "The pay rate history account containing historical rates"
35
- ],
36
- "pda": {
37
- "seeds": [
38
- {
39
- "kind": "const",
40
- "value": [
41
- 112,
42
- 97,
43
- 121,
44
- 95,
45
- 114,
46
- 97,
47
- 116,
48
- 101,
49
- 95,
50
- 104,
51
- 105,
52
- 115,
53
- 116,
54
- 111,
55
- 114,
56
- 121
57
- ]
58
- }
59
- ]
60
- }
61
- }
62
- ],
63
- "args": [
64
- {
65
- "name": "initialAmount",
66
- "type": "u64"
67
- },
68
- {
69
- "name": "sinceTimestamp",
70
- "type": "i64"
71
- }
72
- ],
73
- "returns": "u64"
74
- },
75
- {
76
- "name": "closeGlobalStakeInfo",
77
- "docs": [
78
- "Close the global stake info account (for migration)"
79
- ],
80
- "discriminator": [
81
- 110,
82
- 69,
83
- 4,
84
- 217,
85
- 6,
86
- 177,
87
- 230,
88
- 121
89
- ],
90
- "accounts": [
91
- {
92
- "name": "admin",
93
- "writable": true,
94
- "signer": true
95
- },
96
- {
97
- "name": "globalStakeInfo",
98
- "writable": true,
99
- "pda": {
100
- "seeds": [
101
- {
102
- "kind": "const",
103
- "value": [
104
- 103,
105
- 108,
106
- 111,
107
- 98,
108
- 97,
109
- 108,
110
- 95,
111
- 115,
112
- 116,
113
- 97,
114
- 107,
115
- 101,
116
- 95,
117
- 105,
118
- 110,
119
- 102,
120
- 111
121
- ]
122
- }
123
- ]
124
- }
125
- }
126
- ],
127
- "args": []
128
- },
129
- {
130
- "name": "depositToReserve",
131
- "discriminator": [
132
- 8,
133
- 79,
134
- 123,
135
- 129,
136
- 146,
137
- 140,
138
- 178,
139
- 128
140
- ],
141
- "accounts": [
142
- {
143
- "name": "depositor",
144
- "writable": true,
145
- "signer": true
146
- },
147
- {
148
- "name": "reservePool",
149
- "writable": true,
150
- "pda": {
151
- "seeds": [
152
- {
153
- "kind": "const",
154
- "value": [
155
- 114,
156
- 101,
157
- 115,
158
- 101,
159
- 114,
160
- 118,
161
- 101,
162
- 95,
163
- 112,
164
- 111,
165
- 111,
166
- 108
167
- ]
168
- }
169
- ]
170
- }
171
- },
172
- {
173
- "name": "vault",
174
- "pda": {
175
- "seeds": [
176
- {
177
- "kind": "const",
178
- "value": [
179
- 118,
180
- 97,
181
- 117,
182
- 108,
183
- 116
184
- ]
185
- }
186
- ]
187
- }
188
- },
189
- {
190
- "name": "ephemeralStake",
191
- "writable": true
192
- },
193
- {
194
- "name": "controllerState",
195
- "pda": {
196
- "seeds": [
197
- {
198
- "kind": "const",
199
- "value": [
200
- 115,
201
- 116,
202
- 97,
203
- 107,
204
- 101,
205
- 95,
206
- 99,
207
- 111,
208
- 110,
209
- 116,
210
- 114,
211
- 111,
212
- 108,
213
- 108,
214
- 101,
215
- 114
216
- ]
217
- }
218
- ]
219
- }
220
- },
221
- {
222
- "name": "stakeProgram"
223
- },
224
- {
225
- "name": "systemProgram",
226
- "address": "11111111111111111111111111111111"
227
- },
228
- {
229
- "name": "clock",
230
- "address": "SysvarC1ock11111111111111111111111111111111"
231
- },
232
- {
233
- "name": "stakeHistory"
234
- },
235
- {
236
- "name": "rent",
237
- "address": "SysvarRent111111111111111111111111111111111"
238
- }
239
- ],
240
- "args": [
241
- {
242
- "name": "amount",
243
- "type": "u64"
244
- },
245
- {
246
- "name": "seed",
247
- "type": "u32"
248
- }
249
- ]
250
- },
251
- {
252
- "name": "distributeFromReserve",
253
- "discriminator": [
254
- 204,
255
- 157,
256
- 72,
257
- 30,
258
- 26,
259
- 149,
260
- 166,
261
- 166
262
- ],
263
- "accounts": [
264
- {
265
- "name": "reservePool",
266
- "writable": true,
267
- "pda": {
268
- "seeds": [
269
- {
270
- "kind": "const",
271
- "value": [
272
- 114,
273
- 101,
274
- 115,
275
- 101,
276
- 114,
277
- 118,
278
- 101,
279
- 95,
280
- 112,
281
- 111,
282
- 111,
283
- 108
284
- ]
285
- }
286
- ]
287
- }
288
- },
289
- {
290
- "name": "vault",
291
- "pda": {
292
- "seeds": [
293
- {
294
- "kind": "const",
295
- "value": [
296
- 118,
297
- 97,
298
- 117,
299
- 108,
300
- 116
301
- ]
302
- }
303
- ]
304
- }
305
- },
306
- {
307
- "name": "globalStakeInfo",
308
- "writable": true,
309
- "pda": {
310
- "seeds": [
311
- {
312
- "kind": "const",
313
- "value": [
314
- 103,
315
- 108,
316
- 111,
317
- 98,
318
- 97,
319
- 108,
320
- 95,
321
- 115,
322
- 116,
323
- 97,
324
- 107,
325
- 101,
326
- 95,
327
- 105,
328
- 110,
329
- 102,
330
- 111
331
- ]
332
- }
333
- ]
334
- }
335
- },
336
- {
337
- "name": "validatorRegistry",
338
- "writable": true
339
- },
340
- {
341
- "name": "validatorRegistryProgram",
342
- "address": "EgUbYv1coMTXsdRc5HBqTv32SNhTcsRS1nPiUDw5LbQK"
343
- },
344
- {
345
- "name": "stakeProgram"
346
- },
347
- {
348
- "name": "systemProgram",
349
- "address": "11111111111111111111111111111111"
350
- },
351
- {
352
- "name": "clock",
353
- "address": "SysvarC1ock11111111111111111111111111111111"
354
- },
355
- {
356
- "name": "stakeHistory"
357
- },
358
- {
359
- "name": "stakeConfig"
360
- },
361
- {
362
- "name": "rent",
363
- "address": "SysvarRent111111111111111111111111111111111"
364
- }
365
- ],
366
- "args": [
367
- {
368
- "name": "validatorsCount",
369
- "type": "u8"
370
- }
371
- ]
372
- },
373
- {
374
- "name": "getAveragePayRate",
375
- "docs": [
376
- "Gets the average pay rate from the last X entries (default 5), excluding zero values",
377
- "Can be called via CPI or locally for yield calculations"
378
- ],
379
- "discriminator": [
380
- 28,
381
- 24,
382
- 109,
383
- 124,
384
- 61,
385
- 26,
386
- 31,
387
- 242
388
- ],
389
- "accounts": [
390
- {
391
- "name": "payRateHistory",
392
- "pda": {
393
- "seeds": [
394
- {
395
- "kind": "const",
396
- "value": [
397
- 112,
398
- 97,
399
- 121,
400
- 95,
401
- 114,
402
- 97,
403
- 116,
404
- 101,
405
- 95,
406
- 104,
407
- 105,
408
- 115,
409
- 116,
410
- 111,
411
- 114,
412
- 121
413
- ]
414
- }
415
- ]
416
- }
417
- }
418
- ],
419
- "args": [
420
- {
421
- "name": "count",
422
- "type": {
423
- "option": "u8"
424
- }
425
- }
426
- ],
427
- "returns": "u64"
428
- },
429
- {
430
- "name": "incrementTotalFeesDeposited",
431
- "docs": [
432
- "Increment total fees deposited - can be called via CPI"
433
- ],
434
- "discriminator": [
435
- 19,
436
- 133,
437
- 72,
438
- 151,
439
- 103,
440
- 9,
441
- 19,
442
- 202
443
- ],
444
- "accounts": [
445
- {
446
- "name": "globalStakeInfo",
447
- "writable": true,
448
- "pda": {
449
- "seeds": [
450
- {
451
- "kind": "const",
452
- "value": [
453
- 103,
454
- 108,
455
- 111,
456
- 98,
457
- 97,
458
- 108,
459
- 95,
460
- 115,
461
- 116,
462
- 97,
463
- 107,
464
- 101,
465
- 95,
466
- 105,
467
- 110,
468
- 102,
469
- 111
470
- ]
471
- }
472
- ]
473
- }
474
- }
475
- ],
476
- "args": [
477
- {
478
- "name": "amount",
479
- "type": "u64"
480
- }
481
- ]
482
- },
483
- {
484
- "name": "initBucket",
485
- "docs": [
486
- "Initialize the liqSOL bucket by creating its associated token account"
487
- ],
488
- "discriminator": [
489
- 237,
490
- 69,
491
- 61,
492
- 218,
493
- 18,
494
- 60,
495
- 21,
496
- 236
497
- ],
498
- "accounts": [
499
- {
500
- "name": "admin",
501
- "writable": true,
502
- "signer": true
503
- },
504
- {
505
- "name": "bucketAuthority",
506
- "docs": [
507
- "The bucket authority PDA that will own the token account"
508
- ],
509
- "pda": {
510
- "seeds": [
511
- {
512
- "kind": "const",
513
- "value": [
514
- 108,
515
- 105,
516
- 113,
517
- 115,
518
- 111,
519
- 108,
520
- 95,
521
- 98,
522
- 117,
523
- 99,
524
- 107,
525
- 101,
526
- 116
527
- ]
528
- }
529
- ]
530
- }
531
- },
532
- {
533
- "name": "bucketTokenAccount",
534
- "docs": [
535
- "The bucket's associated token account to be created"
536
- ],
537
- "writable": true,
538
- "pda": {
539
- "seeds": [
540
- {
541
- "kind": "account",
542
- "path": "bucketAuthority"
543
- },
544
- {
545
- "kind": "account",
546
- "path": "tokenProgram"
547
- },
548
- {
549
- "kind": "account",
550
- "path": "liqsolMint"
551
- }
552
- ],
553
- "program": {
554
- "kind": "const",
555
- "value": [
556
- 140,
557
- 151,
558
- 37,
559
- 143,
560
- 78,
561
- 36,
562
- 137,
563
- 241,
564
- 187,
565
- 61,
566
- 16,
567
- 41,
568
- 20,
569
- 142,
570
- 13,
571
- 131,
572
- 11,
573
- 90,
574
- 19,
575
- 153,
576
- 218,
577
- 255,
578
- 16,
579
- 132,
580
- 4,
581
- 142,
582
- 123,
583
- 216,
584
- 219,
585
- 233,
586
- 248,
587
- 89
588
- ]
589
- }
590
- }
591
- },
592
- {
593
- "name": "liqsolMint",
594
- "docs": [
595
- "The liqSOL token mint"
596
- ]
597
- },
598
- {
599
- "name": "systemProgram",
600
- "address": "11111111111111111111111111111111"
601
- },
602
- {
603
- "name": "tokenProgram"
604
- },
605
- {
606
- "name": "associatedTokenProgram",
607
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
608
- }
609
- ],
610
- "args": []
611
- },
612
- {
613
- "name": "initialize",
614
- "discriminator": [
615
- 175,
616
- 175,
617
- 109,
618
- 31,
619
- 13,
620
- 152,
621
- 155,
622
- 237
623
- ],
624
- "accounts": [
625
- {
626
- "name": "controllerState",
627
- "writable": true,
628
- "pda": {
629
- "seeds": [
630
- {
631
- "kind": "const",
632
- "value": [
633
- 115,
634
- 116,
635
- 97,
636
- 107,
637
- 101,
638
- 95,
639
- 99,
640
- 111,
641
- 110,
642
- 116,
643
- 114,
644
- 111,
645
- 108,
646
- 108,
647
- 101,
648
- 114
649
- ]
650
- }
651
- ]
652
- }
653
- },
654
- {
655
- "name": "payer",
656
- "writable": true,
657
- "signer": true
658
- },
659
- {
660
- "name": "authority",
661
- "signer": true
662
- },
663
- {
664
- "name": "systemProgram",
665
- "address": "11111111111111111111111111111111"
666
- }
667
- ],
668
- "args": []
669
- },
670
- {
671
- "name": "initializeGlobalStakeInfo",
672
- "discriminator": [
673
- 1,
674
- 203,
675
- 117,
676
- 158,
677
- 152,
678
- 195,
679
- 249,
680
- 110
681
- ],
682
- "accounts": [
683
- {
684
- "name": "admin",
685
- "writable": true,
686
- "signer": true
687
- },
688
- {
689
- "name": "globalStakeInfo",
690
- "writable": true,
691
- "pda": {
692
- "seeds": [
693
- {
694
- "kind": "const",
695
- "value": [
696
- 103,
697
- 108,
698
- 111,
699
- 98,
700
- 97,
701
- 108,
702
- 95,
703
- 115,
704
- 116,
705
- 97,
706
- 107,
707
- 101,
708
- 95,
709
- 105,
710
- 110,
711
- 102,
712
- 111
713
- ]
714
- }
715
- ]
716
- }
717
- },
718
- {
719
- "name": "systemProgram",
720
- "address": "11111111111111111111111111111111"
721
- }
722
- ],
723
- "args": []
724
- },
725
- {
726
- "name": "initializePayCycle",
727
- "discriminator": [
728
- 1,
729
- 184,
730
- 249,
731
- 179,
732
- 11,
733
- 182,
734
- 239,
735
- 224
736
- ],
737
- "accounts": [
738
- {
739
- "name": "admin",
740
- "writable": true,
741
- "signer": true
742
- },
743
- {
744
- "name": "payCycle",
745
- "writable": true,
746
- "pda": {
747
- "seeds": [
748
- {
749
- "kind": "const",
750
- "value": [
751
- 112,
752
- 97,
753
- 121,
754
- 95,
755
- 99,
756
- 121,
757
- 99,
758
- 108,
759
- 101
760
- ]
761
- }
762
- ]
763
- }
764
- },
765
- {
766
- "name": "systemProgram",
767
- "address": "11111111111111111111111111111111"
768
- }
769
- ],
770
- "args": []
771
- },
772
- {
773
- "name": "initializePayRateHistory",
774
- "discriminator": [
775
- 157,
776
- 190,
777
- 74,
778
- 135,
779
- 91,
780
- 232,
781
- 250,
782
- 122
783
- ],
784
- "accounts": [
785
- {
786
- "name": "admin",
787
- "writable": true,
788
- "signer": true
789
- },
790
- {
791
- "name": "payRateHistory",
792
- "writable": true,
793
- "pda": {
794
- "seeds": [
795
- {
796
- "kind": "const",
797
- "value": [
798
- 112,
799
- 97,
800
- 121,
801
- 95,
802
- 114,
803
- 97,
804
- 116,
805
- 101,
806
- 95,
807
- 104,
808
- 105,
809
- 115,
810
- 116,
811
- 111,
812
- 114,
813
- 121
814
- ]
815
- }
816
- ]
817
- }
818
- },
819
- {
820
- "name": "systemProgram",
821
- "address": "11111111111111111111111111111111"
822
- }
823
- ],
824
- "args": []
825
- },
826
- {
827
- "name": "initializeReservePool",
828
- "discriminator": [
829
- 4,
830
- 7,
831
- 171,
832
- 131,
833
- 156,
834
- 172,
835
- 150,
836
- 220
837
- ],
838
- "accounts": [
839
- {
840
- "name": "reservePool",
841
- "writable": true,
842
- "pda": {
843
- "seeds": [
844
- {
845
- "kind": "const",
846
- "value": [
847
- 114,
848
- 101,
849
- 115,
850
- 101,
851
- 114,
852
- 118,
853
- 101,
854
- 95,
855
- 112,
856
- 111,
857
- 111,
858
- 108
859
- ]
860
- }
861
- ]
862
- }
863
- },
864
- {
865
- "name": "vault",
866
- "pda": {
867
- "seeds": [
868
- {
869
- "kind": "const",
870
- "value": [
871
- 118,
872
- 97,
873
- 117,
874
- 108,
875
- 116
876
- ]
877
- }
878
- ]
879
- }
880
- },
881
- {
882
- "name": "payer",
883
- "writable": true,
884
- "signer": true
885
- },
886
- {
887
- "name": "controllerState",
888
- "writable": true,
889
- "pda": {
890
- "seeds": [
891
- {
892
- "kind": "const",
893
- "value": [
894
- 115,
895
- 116,
896
- 97,
897
- 107,
898
- 101,
899
- 95,
900
- 99,
901
- 111,
902
- 110,
903
- 116,
904
- 114,
905
- 111,
906
- 108,
907
- 108,
908
- 101,
909
- 114
910
- ]
911
- }
912
- ]
913
- }
914
- },
915
- {
916
- "name": "stakeProgram",
917
- "address": "Stake11111111111111111111111111111111111111"
918
- },
919
- {
920
- "name": "systemProgram",
921
- "address": "11111111111111111111111111111111"
922
- },
923
- {
924
- "name": "rent",
925
- "address": "SysvarRent111111111111111111111111111111111"
926
- }
927
- ],
928
- "args": []
929
- },
930
- {
931
- "name": "initializeVault",
932
- "discriminator": [
933
- 48,
934
- 191,
935
- 163,
936
- 44,
937
- 71,
938
- 129,
939
- 63,
940
- 164
941
- ],
942
- "accounts": [
943
- {
944
- "name": "vault",
945
- "writable": true,
946
- "pda": {
947
- "seeds": [
948
- {
949
- "kind": "const",
950
- "value": [
951
- 118,
952
- 97,
953
- 117,
954
- 108,
955
- 116
956
- ]
957
- }
958
- ]
959
- }
960
- },
961
- {
962
- "name": "payer",
963
- "writable": true,
964
- "signer": true
965
- },
966
- {
967
- "name": "controllerState",
968
- "writable": true,
969
- "pda": {
970
- "seeds": [
971
- {
972
- "kind": "const",
973
- "value": [
974
- 115,
975
- 116,
976
- 97,
977
- 107,
978
- 101,
979
- 95,
980
- 99,
981
- 111,
982
- 110,
983
- 116,
984
- 114,
985
- 111,
986
- 108,
987
- 108,
988
- 101,
989
- 114
990
- ]
991
- }
992
- ]
993
- }
994
- },
995
- {
996
- "name": "treasuryProgram",
997
- "address": "98srSwC7RPw2BjUQE5oTuQMEhdWJ2GEK8GBLB4Ei2Awm"
998
- },
999
- {
1000
- "name": "treasury",
1001
- "writable": true,
1002
- "pda": {
1003
- "seeds": [
1004
- {
1005
- "kind": "const",
1006
- "value": [
1007
- 116,
1008
- 114,
1009
- 101,
1010
- 97,
1011
- 115,
1012
- 117,
1013
- 114,
1014
- 121
1015
- ]
1016
- }
1017
- ],
1018
- "program": {
1019
- "kind": "account",
1020
- "path": "treasuryProgram"
1021
- }
1022
- }
1023
- },
1024
- {
1025
- "name": "systemProgram",
1026
- "address": "11111111111111111111111111111111"
1027
- }
1028
- ],
1029
- "args": []
1030
- },
1031
- {
1032
- "name": "maintenanceMergeTransients",
1033
- "discriminator": [
1034
- 171,
1035
- 33,
1036
- 27,
1037
- 133,
1038
- 97,
1039
- 62,
1040
- 213,
1041
- 96
1042
- ],
1043
- "accounts": [
1044
- {
1045
- "name": "admin",
1046
- "signer": true
1047
- },
1048
- {
1049
- "name": "vault",
1050
- "writable": true,
1051
- "pda": {
1052
- "seeds": [
1053
- {
1054
- "kind": "const",
1055
- "value": [
1056
- 118,
1057
- 97,
1058
- 117,
1059
- 108,
1060
- 116
1061
- ]
1062
- }
1063
- ]
1064
- }
1065
- },
1066
- {
1067
- "name": "validatorRegistry",
1068
- "writable": true
1069
- },
1070
- {
1071
- "name": "validatorRegistryProgram",
1072
- "address": "EgUbYv1coMTXsdRc5HBqTv32SNhTcsRS1nPiUDw5LbQK"
1073
- },
1074
- {
1075
- "name": "stakeProgram",
1076
- "address": "Stake11111111111111111111111111111111111111"
1077
- },
1078
- {
1079
- "name": "systemProgram",
1080
- "address": "11111111111111111111111111111111"
1081
- },
1082
- {
1083
- "name": "clock",
1084
- "address": "SysvarC1ock11111111111111111111111111111111"
1085
- },
1086
- {
1087
- "name": "stakeHistory"
1088
- },
1089
- {
1090
- "name": "rent",
1091
- "address": "SysvarRent111111111111111111111111111111111"
1092
- },
1093
- {
1094
- "name": "globalStakeInfo",
1095
- "writable": true,
1096
- "pda": {
1097
- "seeds": [
1098
- {
1099
- "kind": "const",
1100
- "value": [
1101
- 103,
1102
- 108,
1103
- 111,
1104
- 98,
1105
- 97,
1106
- 108,
1107
- 95,
1108
- 115,
1109
- 116,
1110
- 97,
1111
- 107,
1112
- 101,
1113
- 95,
1114
- 105,
1115
- 110,
1116
- 102,
1117
- 111
1118
- ]
1119
- }
1120
- ]
1121
- }
1122
- }
1123
- ],
1124
- "args": [
1125
- {
1126
- "name": "voteAccount",
1127
- "type": "pubkey"
1128
- },
1129
- {
1130
- "name": "startEpoch",
1131
- "type": "u64"
1132
- }
1133
- ]
1134
- },
1135
- {
1136
- "name": "processPayCycle",
1137
- "docs": [
1138
- "Processes yield payments based on epoch progression and global stake data",
1139
- "Calculates yield amount proportional to time elapsed and handles epoch transitions"
1140
- ],
1141
- "discriminator": [
1142
- 98,
1143
- 183,
1144
- 240,
1145
- 247,
1146
- 39,
1147
- 248,
1148
- 198,
1149
- 224
1150
- ],
1151
- "accounts": [
1152
- {
1153
- "name": "admin",
1154
- "signer": true
1155
- },
1156
- {
1157
- "name": "payCycle",
1158
- "writable": true,
1159
- "pda": {
1160
- "seeds": [
1161
- {
1162
- "kind": "const",
1163
- "value": [
1164
- 112,
1165
- 97,
1166
- 121,
1167
- 95,
1168
- 99,
1169
- 121,
1170
- 99,
1171
- 108,
1172
- 101
1173
- ]
1174
- }
1175
- ]
1176
- }
1177
- },
1178
- {
1179
- "name": "globalStakeInfo",
1180
- "writable": true,
1181
- "pda": {
1182
- "seeds": [
1183
- {
1184
- "kind": "const",
1185
- "value": [
1186
- 103,
1187
- 108,
1188
- 111,
1189
- 98,
1190
- 97,
1191
- 108,
1192
- 95,
1193
- 115,
1194
- 116,
1195
- 97,
1196
- 107,
1197
- 101,
1198
- 95,
1199
- 105,
1200
- 110,
1201
- 102,
1202
- 111
1203
- ]
1204
- }
1205
- ]
1206
- }
1207
- },
1208
- {
1209
- "name": "payRateHistory",
1210
- "writable": true,
1211
- "pda": {
1212
- "seeds": [
1213
- {
1214
- "kind": "const",
1215
- "value": [
1216
- 112,
1217
- 97,
1218
- 121,
1219
- 95,
1220
- 114,
1221
- 97,
1222
- 116,
1223
- 101,
1224
- 95,
1225
- 104,
1226
- 105,
1227
- 115,
1228
- 116,
1229
- 111,
1230
- 114,
1231
- 121
1232
- ]
1233
- }
1234
- ]
1235
- }
1236
- },
1237
- {
1238
- "name": "distributionState",
1239
- "docs": [
1240
- "The distribution state account from the distribution program"
1241
- ],
1242
- "pda": {
1243
- "seeds": [
1244
- {
1245
- "kind": "const",
1246
- "value": [
1247
- 100,
1248
- 105,
1249
- 115,
1250
- 116,
1251
- 114,
1252
- 105,
1253
- 98,
1254
- 117,
1255
- 116,
1256
- 105,
1257
- 111,
1258
- 110,
1259
- 95,
1260
- 115,
1261
- 116,
1262
- 97,
1263
- 116,
1264
- 101
1265
- ]
1266
- }
1267
- ],
1268
- "program": {
1269
- "kind": "const",
1270
- "value": [
1271
- 102,
1272
- 164,
1273
- 181,
1274
- 150,
1275
- 80,
1276
- 7,
1277
- 111,
1278
- 173,
1279
- 226,
1280
- 222,
1281
- 223,
1282
- 68,
1283
- 20,
1284
- 191,
1285
- 248,
1286
- 95,
1287
- 171,
1288
- 85,
1289
- 102,
1290
- 94,
1291
- 79,
1292
- 176,
1293
- 10,
1294
- 5,
1295
- 127,
1296
- 225,
1297
- 78,
1298
- 61,
1299
- 234,
1300
- 210,
1301
- 47,
1302
- 121
1303
- ]
1304
- }
1305
- }
1306
- },
1307
- {
1308
- "name": "liqsolMint",
1309
- "docs": [
1310
- "The liqSOL token mint (Token-2022 compatible)"
1311
- ],
1312
- "writable": true
1313
- },
1314
- {
1315
- "name": "bucketTokenAccount",
1316
- "docs": [
1317
- "The bucket's token account to receive minted liqSOL"
1318
- ],
1319
- "writable": true
1320
- },
1321
- {
1322
- "name": "programAuthority",
1323
- "docs": [
1324
- "The stake controller authority PDA that will authorize the minting"
1325
- ],
1326
- "writable": true,
1327
- "pda": {
1328
- "seeds": [
1329
- {
1330
- "kind": "const",
1331
- "value": [
1332
- 115,
1333
- 116,
1334
- 97,
1335
- 107,
1336
- 101,
1337
- 95,
1338
- 99,
1339
- 111,
1340
- 110,
1341
- 116,
1342
- 114,
1343
- 111,
1344
- 108,
1345
- 108,
1346
- 101,
1347
- 114
1348
- ]
1349
- }
1350
- ]
1351
- }
1352
- },
1353
- {
1354
- "name": "mintAuthority",
1355
- "docs": [
1356
- "The mint authority PDA from liq-sol-token program"
1357
- ]
1358
- },
1359
- {
1360
- "name": "liqsolProgram",
1361
- "docs": [
1362
- "The liq-sol-token program for minting"
1363
- ],
1364
- "address": "5MRFSLCkXPEzfR6gkcZCVttq9g83mMUHyTZ85Z3TSpvU"
1365
- },
1366
- {
1367
- "name": "tokenProgram",
1368
- "docs": [
1369
- "Token program (Token2022)"
1370
- ]
1371
- },
1372
- {
1373
- "name": "instructions",
1374
- "address": "Sysvar1nstructions1111111111111111111111111"
1375
- }
1376
- ],
1377
- "args": []
1378
- },
1379
- {
1380
- "name": "syncValidatorStakes",
1381
- "discriminator": [
1382
- 40,
1383
- 56,
1384
- 118,
1385
- 52,
1386
- 20,
1387
- 213,
1388
- 229,
1389
- 135
1390
- ],
1391
- "accounts": [
1392
- {
1393
- "name": "admin",
1394
- "signer": true
1395
- },
1396
- {
1397
- "name": "mainValidatorStake",
1398
- "pda": {
1399
- "seeds": [
1400
- {
1401
- "kind": "const",
1402
- "value": [
1403
- 109,
1404
- 97,
1405
- 105,
1406
- 110,
1407
- 95,
1408
- 115,
1409
- 116,
1410
- 97,
1411
- 107,
1412
- 101
1413
- ]
1414
- },
1415
- {
1416
- "kind": "arg",
1417
- "path": "validator"
1418
- }
1419
- ]
1420
- }
1421
- },
1422
- {
1423
- "name": "validatorRegistry",
1424
- "writable": true
1425
- },
1426
- {
1427
- "name": "validatorRegistryProgram"
1428
- },
1429
- {
1430
- "name": "stakeHistory"
1431
- },
1432
- {
1433
- "name": "globalStakeInfo",
1434
- "writable": true,
1435
- "pda": {
1436
- "seeds": [
1437
- {
1438
- "kind": "const",
1439
- "value": [
1440
- 103,
1441
- 108,
1442
- 111,
1443
- 98,
1444
- 97,
1445
- 108,
1446
- 95,
1447
- 115,
1448
- 116,
1449
- 97,
1450
- 107,
1451
- 101,
1452
- 95,
1453
- 105,
1454
- 110,
1455
- 102,
1456
- 111
1457
- ]
1458
- }
1459
- ]
1460
- }
1461
- }
1462
- ],
1463
- "args": [
1464
- {
1465
- "name": "validator",
1466
- "type": "pubkey"
1467
- }
1468
- ]
1469
- },
1470
- {
1471
- "name": "transferFromBucket",
1472
- "docs": [
1473
- "Transfer liqSOL from the bucket to a destination wallet"
1474
- ],
1475
- "discriminator": [
1476
- 3,
1477
- 165,
1478
- 191,
1479
- 199,
1480
- 242,
1481
- 233,
1482
- 248,
1483
- 16
1484
- ],
1485
- "accounts": [
1486
- {
1487
- "name": "admin",
1488
- "signer": true
1489
- },
1490
- {
1491
- "name": "bucketAuthority",
1492
- "docs": [
1493
- "The bucket authority PDA that owns the token account"
1494
- ],
1495
- "pda": {
1496
- "seeds": [
1497
- {
1498
- "kind": "const",
1499
- "value": [
1500
- 108,
1501
- 105,
1502
- 113,
1503
- 115,
1504
- 111,
1505
- 108,
1506
- 95,
1507
- 98,
1508
- 117,
1509
- 99,
1510
- 107,
1511
- 101,
1512
- 116
1513
- ]
1514
- }
1515
- ]
1516
- }
1517
- },
1518
- {
1519
- "name": "bucketTokenAccount",
1520
- "docs": [
1521
- "The bucket's token account holding liqSOL"
1522
- ],
1523
- "writable": true
1524
- },
1525
- {
1526
- "name": "destinationTokenAccount",
1527
- "docs": [
1528
- "Destination token account to send liqSOL to"
1529
- ],
1530
- "writable": true
1531
- },
1532
- {
1533
- "name": "mint",
1534
- "docs": [
1535
- "The liqSOL mint"
1536
- ]
1537
- },
1538
- {
1539
- "name": "tokenProgram"
1540
- }
1541
- ],
1542
- "args": [
1543
- {
1544
- "name": "amount",
1545
- "type": "u64"
1546
- }
1547
- ]
1548
- },
1549
- {
1550
- "name": "updateGlobalStakeInfo",
1551
- "discriminator": [
1552
- 16,
1553
- 246,
1554
- 76,
1555
- 203,
1556
- 160,
1557
- 194,
1558
- 10,
1559
- 93
1560
- ],
1561
- "accounts": [
1562
- {
1563
- "name": "admin",
1564
- "signer": true
1565
- },
1566
- {
1567
- "name": "globalStakeInfo",
1568
- "writable": true,
1569
- "pda": {
1570
- "seeds": [
1571
- {
1572
- "kind": "const",
1573
- "value": [
1574
- 103,
1575
- 108,
1576
- 111,
1577
- 98,
1578
- 97,
1579
- 108,
1580
- 95,
1581
- 115,
1582
- 116,
1583
- 97,
1584
- 107,
1585
- 101,
1586
- 95,
1587
- 105,
1588
- 110,
1589
- 102,
1590
- 111
1591
- ]
1592
- }
1593
- ]
1594
- }
1595
- },
1596
- {
1597
- "name": "validatorRegistry",
1598
- "writable": true
1599
- },
1600
- {
1601
- "name": "payCycle",
1602
- "writable": true,
1603
- "pda": {
1604
- "seeds": [
1605
- {
1606
- "kind": "const",
1607
- "value": [
1608
- 112,
1609
- 97,
1610
- 121,
1611
- 95,
1612
- 99,
1613
- 121,
1614
- 99,
1615
- 108,
1616
- 101
1617
- ]
1618
- }
1619
- ]
1620
- }
1621
- }
1622
- ],
1623
- "args": []
1624
- }
1625
- ],
1626
- "accounts": [
1627
- {
1628
- "name": "globalStakeInfo",
1629
- "discriminator": [
1630
- 149,
1631
- 10,
1632
- 172,
1633
- 51,
1634
- 100,
1635
- 33,
1636
- 71,
1637
- 52
1638
- ]
1639
- },
1640
- {
1641
- "name": "payCycle",
1642
- "discriminator": [
1643
- 119,
1644
- 127,
1645
- 39,
1646
- 70,
1647
- 134,
1648
- 173,
1649
- 90,
1650
- 225
1651
- ]
1652
- },
1653
- {
1654
- "name": "payRateHistory",
1655
- "discriminator": [
1656
- 139,
1657
- 8,
1658
- 65,
1659
- 111,
1660
- 71,
1661
- 41,
1662
- 187,
1663
- 218
1664
- ]
1665
- },
1666
- {
1667
- "name": "stakeControllerState",
1668
- "discriminator": [
1669
- 218,
1670
- 168,
1671
- 114,
1672
- 136,
1673
- 80,
1674
- 186,
1675
- 29,
1676
- 218
1677
- ]
1678
- },
1679
- {
1680
- "name": "validatorRegistry",
1681
- "discriminator": [
1682
- 168,
1683
- 113,
1684
- 195,
1685
- 186,
1686
- 62,
1687
- 121,
1688
- 163,
1689
- 230
1690
- ]
1691
- }
1692
- ],
1693
- "events": [
1694
- {
1695
- "name": "epochResolved",
1696
- "discriminator": [
1697
- 62,
1698
- 81,
1699
- 212,
1700
- 223,
1701
- 209,
1702
- 104,
1703
- 51,
1704
- 65
1705
- ]
1706
- },
1707
- {
1708
- "name": "stakesMerged",
1709
- "discriminator": [
1710
- 3,
1711
- 16,
1712
- 51,
1713
- 153,
1714
- 152,
1715
- 186,
1716
- 19,
1717
- 97
1718
- ]
1719
- }
1720
- ],
1721
- "errors": [
1722
- {
1723
- "code": 6000,
1724
- "name": "destinationAccountDoesNotExist",
1725
- "msg": "Destination stake account does not exist"
1726
- },
1727
- {
1728
- "code": 6001,
1729
- "name": "sourceAccountDoesNotExist",
1730
- "msg": "Source stake account does not exist"
1731
- },
1732
- {
1733
- "code": 6002,
1734
- "name": "invalidDestinationOwner",
1735
- "msg": "Destination account not owned by stake program"
1736
- },
1737
- {
1738
- "code": 6003,
1739
- "name": "invalidSourceOwner",
1740
- "msg": "Source account not owned by stake program"
1741
- },
1742
- {
1743
- "code": 6004,
1744
- "name": "clockBorrowFailed",
1745
- "msg": "Failed to borrow clock data"
1746
- },
1747
- {
1748
- "code": 6005,
1749
- "name": "clockDeserializeFailed",
1750
- "msg": "Failed to deserialize clock"
1751
- },
1752
- {
1753
- "code": 6006,
1754
- "name": "destinationAnalysisFailed",
1755
- "msg": "Failed to analyze destination stake account"
1756
- },
1757
- {
1758
- "code": 6007,
1759
- "name": "sourceAnalysisFailed",
1760
- "msg": "Failed to analyze source stake account"
1761
- },
1762
- {
1763
- "code": 6008,
1764
- "name": "destinationStillActivating",
1765
- "msg": "Destination stake is still activating"
1766
- },
1767
- {
1768
- "code": 6009,
1769
- "name": "destinationDeactivating",
1770
- "msg": "Destination stake is deactivating"
1771
- },
1772
- {
1773
- "code": 6010,
1774
- "name": "sourceStillActivating",
1775
- "msg": "Source stake is still activating"
1776
- },
1777
- {
1778
- "code": 6011,
1779
- "name": "sourceDeactivating",
1780
- "msg": "Source stake is deactivating"
1781
- },
1782
- {
1783
- "code": 6012,
1784
- "name": "destinationBorrowFailed",
1785
- "msg": "Failed to borrow destination account data"
1786
- },
1787
- {
1788
- "code": 6013,
1789
- "name": "destinationParseFailed",
1790
- "msg": "Failed to parse destination stake state"
1791
- },
1792
- {
1793
- "code": 6014,
1794
- "name": "sourceBorrowFailed",
1795
- "msg": "Failed to borrow source account data"
1796
- },
1797
- {
1798
- "code": 6015,
1799
- "name": "sourceParseFailed",
1800
- "msg": "Failed to parse source stake state"
1801
- },
1802
- {
1803
- "code": 6016,
1804
- "name": "differentValidators",
1805
- "msg": "Stakes are delegated to different validators"
1806
- },
1807
- {
1808
- "code": 6017,
1809
- "name": "differentStakers",
1810
- "msg": "Stakes have different staker authorities"
1811
- },
1812
- {
1813
- "code": 6018,
1814
- "name": "differentWithdrawers",
1815
- "msg": "Stakes have different withdrawer authorities"
1816
- },
1817
- {
1818
- "code": 6019,
1819
- "name": "authoritiesNotFound",
1820
- "msg": "Could not extract authorities from accounts"
1821
- },
1822
- {
1823
- "code": 6020,
1824
- "name": "mergeInstructionFailed",
1825
- "msg": "Merge instruction failed"
1826
- },
1827
- {
1828
- "code": 6021,
1829
- "name": "epochRewardsActive",
1830
- "msg": "Epoch rewards distribution is active - stake operations blocked"
1831
- },
1832
- {
1833
- "code": 6022,
1834
- "name": "differentCreditsObserved",
1835
- "msg": "Stakes have different credits_observed - cannot merge until both earn same rewards"
1836
- }
1837
- ],
1838
- "types": [
1839
- {
1840
- "name": "epochResolved",
1841
- "type": {
1842
- "kind": "struct",
1843
- "fields": [
1844
- {
1845
- "name": "validator",
1846
- "type": "pubkey"
1847
- },
1848
- {
1849
- "name": "epoch",
1850
- "type": "u64"
1851
- },
1852
- {
1853
- "name": "totalStakeAmount",
1854
- "type": "u64"
1855
- },
1856
- {
1857
- "name": "maxIndex",
1858
- "type": "u32"
1859
- }
1860
- ]
1861
- }
1862
- },
1863
- {
1864
- "name": "globalStakeInfo",
1865
- "type": {
1866
- "kind": "struct",
1867
- "fields": [
1868
- {
1869
- "name": "currentActiveStake",
1870
- "type": "u64"
1871
- },
1872
- {
1873
- "name": "actualSystemYieldReceived",
1874
- "type": "u64"
1875
- },
1876
- {
1877
- "name": "solSystemPayRate",
1878
- "type": "u64"
1879
- },
1880
- {
1881
- "name": "totalPaidOutThisEpoch",
1882
- "type": "u64"
1883
- },
1884
- {
1885
- "name": "epochPayoutDelta",
1886
- "type": "i64"
1887
- },
1888
- {
1889
- "name": "lastUpdatedEpoch",
1890
- "type": "u64"
1891
- },
1892
- {
1893
- "name": "lastDistributionEpoch",
1894
- "type": {
1895
- "option": "u64"
1896
- }
1897
- },
1898
- {
1899
- "name": "lastDistributionSlot",
1900
- "type": {
1901
- "option": "u64"
1902
- }
1903
- },
1904
- {
1905
- "name": "lastDeactivationEpoch",
1906
- "type": "u64"
1907
- },
1908
- {
1909
- "name": "lastRebalanceEpoch",
1910
- "type": "u64"
1911
- },
1912
- {
1913
- "name": "lastMergeTransientsEpoch",
1914
- "type": "u64"
1915
- },
1916
- {
1917
- "name": "currentMergeProcessingEpoch",
1918
- "type": "u64"
1919
- },
1920
- {
1921
- "name": "validatorsProcessedThisEpoch",
1922
- "type": "u8"
1923
- },
1924
- {
1925
- "name": "validatorsMergeProcessedThisEpoch",
1926
- "type": "u8"
1927
- },
1928
- {
1929
- "name": "distributionInProgress",
1930
- "type": "bool"
1931
- },
1932
- {
1933
- "name": "transientActiveStake",
1934
- "type": "u64"
1935
- },
1936
- {
1937
- "name": "totalFeesDeposited",
1938
- "type": "u64"
1939
- },
1940
- {
1941
- "name": "totalCumulativePayout",
1942
- "type": "u64"
1943
- },
1944
- {
1945
- "name": "bump",
1946
- "type": "u8"
1947
- }
1948
- ]
1949
- }
1950
- },
1951
- {
1952
- "name": "payCycle",
1953
- "type": {
1954
- "kind": "struct",
1955
- "fields": [
1956
- {
1957
- "name": "epoch",
1958
- "type": "u64"
1959
- },
1960
- {
1961
- "name": "totalYield",
1962
- "type": "u64"
1963
- },
1964
- {
1965
- "name": "timestamp",
1966
- "type": "i64"
1967
- },
1968
- {
1969
- "name": "fulfilled",
1970
- "type": "bool"
1971
- },
1972
- {
1973
- "name": "lastSlotPaidFor",
1974
- "type": "u64"
1975
- },
1976
- {
1977
- "name": "bump",
1978
- "type": "u8"
1979
- }
1980
- ]
1981
- }
1982
- },
1983
- {
1984
- "name": "payRateEntry",
1985
- "type": {
1986
- "kind": "struct",
1987
- "fields": [
1988
- {
1989
- "name": "timestamp",
1990
- "type": "i64"
1991
- },
1992
- {
1993
- "name": "scaledRate",
1994
- "type": "u64"
1995
- }
1996
- ]
1997
- }
1998
- },
1999
- {
2000
- "name": "payRateHistory",
2001
- "type": {
2002
- "kind": "struct",
2003
- "fields": [
2004
- {
2005
- "name": "currentIndex",
2006
- "type": "u16"
2007
- },
2008
- {
2009
- "name": "totalEntriesAdded",
2010
- "type": "u64"
2011
- },
2012
- {
2013
- "name": "entries",
2014
- "type": {
2015
- "array": [
2016
- {
2017
- "defined": {
2018
- "name": "payRateEntry"
2019
- }
2020
- },
2021
- 50
2022
- ]
2023
- }
2024
- },
2025
- {
2026
- "name": "bump",
2027
- "type": "u8"
2028
- }
2029
- ]
2030
- }
2031
- },
2032
- {
2033
- "name": "stakeControllerState",
2034
- "type": {
2035
- "kind": "struct",
2036
- "fields": [
2037
- {
2038
- "name": "authority",
2039
- "type": "pubkey"
2040
- },
2041
- {
2042
- "name": "vaultInitialized",
2043
- "type": "bool"
2044
- },
2045
- {
2046
- "name": "reservePoolInitialized",
2047
- "type": "bool"
2048
- },
2049
- {
2050
- "name": "bump",
2051
- "type": "u8"
2052
- }
2053
- ]
2054
- }
2055
- },
2056
- {
2057
- "name": "stakesMerged",
2058
- "type": {
2059
- "kind": "struct",
2060
- "fields": [
2061
- {
2062
- "name": "validator",
2063
- "type": "pubkey"
2064
- },
2065
- {
2066
- "name": "epoch",
2067
- "type": "u64"
2068
- },
2069
- {
2070
- "name": "count",
2071
- "type": "u32"
2072
- },
2073
- {
2074
- "name": "amount",
2075
- "type": "u64"
2076
- }
2077
- ]
2078
- }
2079
- },
2080
- {
2081
- "name": "validatorInfo",
2082
- "type": {
2083
- "kind": "struct",
2084
- "fields": [
2085
- {
2086
- "name": "voteAccount",
2087
- "type": "pubkey"
2088
- },
2089
- {
2090
- "name": "vpp",
2091
- "type": "u32"
2092
- },
2093
- {
2094
- "name": "currentActiveStake",
2095
- "type": "u64"
2096
- },
2097
- {
2098
- "name": "epochReward",
2099
- "type": "u64"
2100
- },
2101
- {
2102
- "name": "transientActiveStake",
2103
- "type": "u64"
2104
- },
2105
- {
2106
- "name": "lastChainSyncEpoch",
2107
- "type": "u64"
2108
- },
2109
- {
2110
- "name": "lastUpdatedSlot",
2111
- "type": "u64"
2112
- },
2113
- {
2114
- "name": "maxResolvedEpochDeactivations",
2115
- "type": "u64"
2116
- },
2117
- {
2118
- "name": "maxResolvedActivatingStake",
2119
- "type": "u64"
2120
- }
2121
- ]
2122
- }
2123
- },
2124
- {
2125
- "name": "validatorRegistry",
2126
- "type": {
2127
- "kind": "struct",
2128
- "fields": [
2129
- {
2130
- "name": "authority",
2131
- "type": "pubkey"
2132
- },
2133
- {
2134
- "name": "validators",
2135
- "type": {
2136
- "vec": {
2137
- "defined": {
2138
- "name": "validatorInfo"
2139
- }
2140
- }
2141
- }
2142
- },
2143
- {
2144
- "name": "lastUpdateEpoch",
2145
- "type": "u64"
2146
- },
2147
- {
2148
- "name": "bump",
2149
- "type": "u8"
2150
- }
2151
- ]
2152
- }
2153
- }
2154
- ]
2155
- };