@wireio/stake 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/LICENSE.md +114 -0
  2. package/README.md +28 -0
  3. package/lib/stake.browser.js +6875 -0
  4. package/lib/stake.browser.js.map +1 -0
  5. package/lib/stake.d.ts +6759 -0
  6. package/lib/stake.js +7178 -0
  7. package/lib/stake.js.map +1 -0
  8. package/lib/stake.m.js +6875 -0
  9. package/lib/stake.m.js.map +1 -0
  10. package/package.json +102 -0
  11. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.dbg.json +4 -0
  12. package/src/assets/ethereum/ABI/token/ERC1155Token.sol/ERC1155Token.json +472 -0
  13. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.dbg.json +4 -0
  14. package/src/assets/ethereum/ABI/token/ERC20Token.sol/ERC20Token.json +330 -0
  15. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.dbg.json +4 -0
  16. package/src/assets/ethereum/ABI/token/ERC721Token.sol/ERC721Token.json +449 -0
  17. package/src/assets/solana/idl/deposit.json +260 -0
  18. package/src/assets/solana/idl/distribution.json +736 -0
  19. package/src/assets/solana/idl/liq_sol_token.json +275 -0
  20. package/src/assets/solana/idl/stake_controller.json +1788 -0
  21. package/src/assets/solana/idl/stake_registry.json +435 -0
  22. package/src/assets/solana/idl/treasury.json +336 -0
  23. package/src/assets/solana/idl/validator_leaderboard.json +528 -0
  24. package/src/assets/solana/idl/validator_registry.json +418 -0
  25. package/src/assets/solana/idl/yield_oracle.json +32 -0
  26. package/src/assets/solana/types/deposit.ts +266 -0
  27. package/src/assets/solana/types/distribution.ts +742 -0
  28. package/src/assets/solana/types/liq_sol_token.ts +281 -0
  29. package/src/assets/solana/types/stake_controller.ts +1794 -0
  30. package/src/assets/solana/types/stake_registry.ts +441 -0
  31. package/src/assets/solana/types/treasury.ts +342 -0
  32. package/src/assets/solana/types/validator_leaderboard.ts +534 -0
  33. package/src/assets/solana/types/validator_registry.ts +424 -0
  34. package/src/assets/solana/types/yield_oracle.ts +38 -0
  35. package/src/index.ts +21 -0
  36. package/src/networks/ethereum/contract.ts +167 -0
  37. package/src/networks/ethereum/ethereum.ts +64 -0
  38. package/src/networks/ethereum/types.ts +6 -0
  39. package/src/networks/solana/clients/deposit.client.ts +178 -0
  40. package/src/networks/solana/clients/distribution.client.ts +230 -0
  41. package/src/networks/solana/clients/leaderboard.client.ts +179 -0
  42. package/src/networks/solana/constants.ts +73 -0
  43. package/src/networks/solana/program.ts +113 -0
  44. package/src/networks/solana/solana.ts +84 -0
  45. package/src/networks/solana/utils.ts +122 -0
  46. package/src/staker/staker.ts +38 -0
  47. package/src/staker/types.ts +26 -0
  48. package/src/utils.ts +9 -0
@@ -0,0 +1,534 @@
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/validator_leaderboard.json`.
6
+ */
7
+ export type ValidatorLeaderboard = {
8
+ "address": "4tY1rN1EX7SfyhjwgRh8nEFp9AwCGwXrcUXnWDMac35e",
9
+ "metadata": {
10
+ "name": "validatorLeaderboard",
11
+ "version": "0.1.0",
12
+ "spec": "0.1.0",
13
+ "description": "Created with Anchor"
14
+ },
15
+ "instructions": [
16
+ {
17
+ "name": "getCachedTop10",
18
+ "discriminator": [
19
+ 28,
20
+ 77,
21
+ 207,
22
+ 225,
23
+ 217,
24
+ 150,
25
+ 249,
26
+ 51
27
+ ],
28
+ "accounts": [
29
+ {
30
+ "name": "cache",
31
+ "pda": {
32
+ "seeds": [
33
+ {
34
+ "kind": "const",
35
+ "value": [
36
+ 116,
37
+ 111,
38
+ 112,
39
+ 95,
40
+ 49,
41
+ 48,
42
+ 95,
43
+ 99,
44
+ 97,
45
+ 99,
46
+ 104,
47
+ 101
48
+ ]
49
+ }
50
+ ]
51
+ }
52
+ }
53
+ ],
54
+ "args": [],
55
+ "returns": {
56
+ "array": [
57
+ "pubkey",
58
+ 10
59
+ ]
60
+ }
61
+ },
62
+ {
63
+ "name": "initialize",
64
+ "discriminator": [
65
+ 175,
66
+ 175,
67
+ 109,
68
+ 31,
69
+ 13,
70
+ 152,
71
+ 155,
72
+ 237
73
+ ],
74
+ "accounts": [
75
+ {
76
+ "name": "authority",
77
+ "writable": true,
78
+ "signer": true
79
+ },
80
+ {
81
+ "name": "leaderboardHead",
82
+ "docs": [
83
+ "HEAD node - points to the highest VPP validator"
84
+ ],
85
+ "writable": true,
86
+ "pda": {
87
+ "seeds": [
88
+ {
89
+ "kind": "const",
90
+ "value": [
91
+ 108,
92
+ 101,
93
+ 97,
94
+ 100,
95
+ 101,
96
+ 114,
97
+ 98,
98
+ 111,
99
+ 97,
100
+ 114,
101
+ 100,
102
+ 95,
103
+ 104,
104
+ 101,
105
+ 97,
106
+ 100
107
+ ]
108
+ }
109
+ ]
110
+ }
111
+ },
112
+ {
113
+ "name": "systemProgram",
114
+ "address": "11111111111111111111111111111111"
115
+ }
116
+ ],
117
+ "args": []
118
+ },
119
+ {
120
+ "name": "updateTop10Cache",
121
+ "discriminator": [
122
+ 0,
123
+ 35,
124
+ 58,
125
+ 64,
126
+ 74,
127
+ 12,
128
+ 249,
129
+ 209
130
+ ],
131
+ "accounts": [
132
+ {
133
+ "name": "payer",
134
+ "writable": true,
135
+ "signer": true
136
+ },
137
+ {
138
+ "name": "cache",
139
+ "writable": true,
140
+ "pda": {
141
+ "seeds": [
142
+ {
143
+ "kind": "const",
144
+ "value": [
145
+ 116,
146
+ 111,
147
+ 112,
148
+ 95,
149
+ 49,
150
+ 48,
151
+ 95,
152
+ 99,
153
+ 97,
154
+ 99,
155
+ 104,
156
+ 101
157
+ ]
158
+ }
159
+ ]
160
+ }
161
+ },
162
+ {
163
+ "name": "systemProgram",
164
+ "address": "11111111111111111111111111111111"
165
+ }
166
+ ],
167
+ "args": [
168
+ {
169
+ "name": "top10",
170
+ "type": {
171
+ "array": [
172
+ "pubkey",
173
+ 10
174
+ ]
175
+ }
176
+ }
177
+ ]
178
+ },
179
+ {
180
+ "name": "updateValidator",
181
+ "discriminator": [
182
+ 105,
183
+ 192,
184
+ 4,
185
+ 98,
186
+ 236,
187
+ 115,
188
+ 108,
189
+ 192
190
+ ],
191
+ "accounts": [
192
+ {
193
+ "name": "registrant",
194
+ "writable": true,
195
+ "signer": true
196
+ },
197
+ {
198
+ "name": "voteAccount"
199
+ },
200
+ {
201
+ "name": "validatorRecord",
202
+ "writable": true,
203
+ "pda": {
204
+ "seeds": [
205
+ {
206
+ "kind": "const",
207
+ "value": [
208
+ 118,
209
+ 97,
210
+ 108,
211
+ 105,
212
+ 100,
213
+ 97,
214
+ 116,
215
+ 111,
216
+ 114
217
+ ]
218
+ },
219
+ {
220
+ "kind": "account",
221
+ "path": "voteAccount"
222
+ }
223
+ ]
224
+ }
225
+ },
226
+ {
227
+ "name": "leaderboardHead",
228
+ "writable": true,
229
+ "pda": {
230
+ "seeds": [
231
+ {
232
+ "kind": "const",
233
+ "value": [
234
+ 108,
235
+ 101,
236
+ 97,
237
+ 100,
238
+ 101,
239
+ 114,
240
+ 98,
241
+ 111,
242
+ 97,
243
+ 114,
244
+ 100,
245
+ 95,
246
+ 104,
247
+ 101,
248
+ 97,
249
+ 100
250
+ ]
251
+ }
252
+ ]
253
+ }
254
+ },
255
+ {
256
+ "name": "insertAfter",
257
+ "writable": true,
258
+ "optional": true
259
+ },
260
+ {
261
+ "name": "insertBefore",
262
+ "writable": true,
263
+ "optional": true
264
+ },
265
+ {
266
+ "name": "currentPrev",
267
+ "writable": true,
268
+ "optional": true
269
+ },
270
+ {
271
+ "name": "currentNext",
272
+ "writable": true,
273
+ "optional": true
274
+ },
275
+ {
276
+ "name": "systemProgram",
277
+ "address": "11111111111111111111111111111111"
278
+ }
279
+ ],
280
+ "args": [
281
+ {
282
+ "name": "vpp",
283
+ "type": "u64"
284
+ }
285
+ ]
286
+ }
287
+ ],
288
+ "accounts": [
289
+ {
290
+ "name": "leaderboardHead",
291
+ "discriminator": [
292
+ 159,
293
+ 158,
294
+ 16,
295
+ 9,
296
+ 41,
297
+ 114,
298
+ 23,
299
+ 157
300
+ ]
301
+ },
302
+ {
303
+ "name": "top10Cache",
304
+ "discriminator": [
305
+ 112,
306
+ 78,
307
+ 189,
308
+ 26,
309
+ 143,
310
+ 41,
311
+ 15,
312
+ 81
313
+ ]
314
+ },
315
+ {
316
+ "name": "validatorRecord",
317
+ "discriminator": [
318
+ 105,
319
+ 248,
320
+ 112,
321
+ 34,
322
+ 71,
323
+ 224,
324
+ 21,
325
+ 71
326
+ ]
327
+ }
328
+ ],
329
+ "errors": [
330
+ {
331
+ "code": 6000,
332
+ "name": "missingPreviousValidator",
333
+ "msg": "Missing previous validator account"
334
+ },
335
+ {
336
+ "code": 6001,
337
+ "name": "missingNextValidator",
338
+ "msg": "Missing next validator account"
339
+ },
340
+ {
341
+ "code": 6002,
342
+ "name": "invalidVppScore",
343
+ "msg": "Invalid VPP score provided."
344
+ },
345
+ {
346
+ "code": 6003,
347
+ "name": "invalidInsertPosition",
348
+ "msg": "Invalid insertion position."
349
+ },
350
+ {
351
+ "code": 6004,
352
+ "name": "invalidCurrentPrev",
353
+ "msg": "Invalid current previous validator."
354
+ },
355
+ {
356
+ "code": 6005,
357
+ "name": "invalidCurrentNext",
358
+ "msg": "Invalid current next validator."
359
+ },
360
+ {
361
+ "code": 6006,
362
+ "name": "invalidHeadValidator",
363
+ "msg": "Head validator cannot have a previous validator"
364
+ },
365
+ {
366
+ "code": 6007,
367
+ "name": "invalidTailValidator",
368
+ "msg": "Tail validator cannot have a next validator"
369
+ },
370
+ {
371
+ "code": 6008,
372
+ "name": "validatorNotInLeaderboard",
373
+ "msg": "Cannot remove validator that is not in the leaderboard"
374
+ },
375
+ {
376
+ "code": 6009,
377
+ "name": "validatorAlreadyExists",
378
+ "msg": "Validator already exists in the leaderboard"
379
+ },
380
+ {
381
+ "code": 6010,
382
+ "name": "overflow",
383
+ "msg": "Arithmetic overflow"
384
+ },
385
+ {
386
+ "code": 6011,
387
+ "name": "invalidVoteAccount",
388
+ "msg": "Invalid vote account - must be owned by vote program"
389
+ },
390
+ {
391
+ "code": 6012,
392
+ "name": "vppVerificationFailed",
393
+ "msg": "VPP verification failed"
394
+ },
395
+ {
396
+ "code": 6013,
397
+ "name": "vppUnchanged",
398
+ "msg": "VPP score unchanged - update not needed"
399
+ },
400
+ {
401
+ "code": 6014,
402
+ "name": "invalidAccountCount",
403
+ "msg": "Invalid account count for top 10 verification"
404
+ },
405
+ {
406
+ "code": 6015,
407
+ "name": "invalidVppOrdering",
408
+ "msg": "Validators not in correct VPP order"
409
+ },
410
+ {
411
+ "code": 6016,
412
+ "name": "brokenLinkage",
413
+ "msg": "Broken linked list continuity"
414
+ }
415
+ ],
416
+ "types": [
417
+ {
418
+ "name": "leaderboardHead",
419
+ "docs": [
420
+ "Special HEAD node for the linked list"
421
+ ],
422
+ "type": {
423
+ "kind": "struct",
424
+ "fields": [
425
+ {
426
+ "name": "nextValidator",
427
+ "type": "pubkey"
428
+ },
429
+ {
430
+ "name": "bump",
431
+ "type": "u8"
432
+ }
433
+ ]
434
+ }
435
+ },
436
+ {
437
+ "name": "top10Cache",
438
+ "docs": [
439
+ "Cache for the top 10 validators for fast CPI access"
440
+ ],
441
+ "type": {
442
+ "kind": "struct",
443
+ "fields": [
444
+ {
445
+ "name": "validators",
446
+ "type": {
447
+ "array": [
448
+ "pubkey",
449
+ 10
450
+ ]
451
+ }
452
+ },
453
+ {
454
+ "name": "lastUpdatedSlot",
455
+ "type": "u64"
456
+ },
457
+ {
458
+ "name": "bump",
459
+ "type": "u8"
460
+ }
461
+ ]
462
+ }
463
+ },
464
+ {
465
+ "name": "validatorRecord",
466
+ "type": {
467
+ "kind": "struct",
468
+ "fields": [
469
+ {
470
+ "name": "voteAccount",
471
+ "type": "pubkey"
472
+ },
473
+ {
474
+ "name": "creditsObserved",
475
+ "type": "u64"
476
+ },
477
+ {
478
+ "name": "commissionHistory",
479
+ "type": {
480
+ "array": [
481
+ "u8",
482
+ 10
483
+ ]
484
+ }
485
+ },
486
+ {
487
+ "name": "commissionIndex",
488
+ "type": "u8"
489
+ },
490
+ {
491
+ "name": "lastCommissionUpdate",
492
+ "type": "u64"
493
+ },
494
+ {
495
+ "name": "epoch",
496
+ "type": "u64"
497
+ },
498
+ {
499
+ "name": "slot",
500
+ "type": "u64"
501
+ },
502
+ {
503
+ "name": "performance",
504
+ "type": "u64"
505
+ },
506
+ {
507
+ "name": "stake",
508
+ "type": "u64"
509
+ },
510
+ {
511
+ "name": "registrant",
512
+ "type": "pubkey"
513
+ },
514
+ {
515
+ "name": "wireOperator",
516
+ "type": "bool"
517
+ },
518
+ {
519
+ "name": "nextValidator",
520
+ "type": "pubkey"
521
+ },
522
+ {
523
+ "name": "prevValidator",
524
+ "type": "pubkey"
525
+ },
526
+ {
527
+ "name": "bump",
528
+ "type": "u8"
529
+ }
530
+ ]
531
+ }
532
+ }
533
+ ]
534
+ };