hedge-web3 0.1.13 → 0.1.16

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 (126) hide show
  1. package/{lib/types/src → declarations}/Constants.d.ts +8 -8
  2. package/{lib/types/src → declarations}/HedgeDecimal.d.ts +2 -3
  3. package/{lib/types/src → declarations}/StakingPools.d.ts +0 -1
  4. package/{lib/types/src → declarations}/Vaults.d.ts +0 -1
  5. package/{lib/types/src → declarations}/idl/idl.d.ts +0 -1
  6. package/declarations/idl/vault.d.ts +2283 -0
  7. package/{lib/types/src → declarations}/index.d.ts +6 -1
  8. package/declarations/instructions/claimLiquidationPoolPosition.d.ts +4 -0
  9. package/declarations/instructions/closeLiquidationPoolPosition.d.ts +4 -0
  10. package/{lib/types/src → declarations}/instructions/createStakingPool.d.ts +0 -1
  11. package/declarations/instructions/createVault.d.ts +4 -0
  12. package/declarations/instructions/depositLiquidationPool.d.ts +4 -0
  13. package/{lib/types/src → declarations}/instructions/depositStakingPool.d.ts +0 -1
  14. package/declarations/instructions/depositVault.d.ts +4 -0
  15. package/declarations/instructions/initHedgeFoundation.d.ts +4 -0
  16. package/declarations/instructions/initHedgeFoundationTokens.d.ts +4 -0
  17. package/declarations/instructions/liquidateVault.d.ts +4 -0
  18. package/{lib/types/src → declarations}/instructions/loanVault.d.ts +2 -3
  19. package/declarations/instructions/redeemVault.d.ts +4 -0
  20. package/{lib/types/src → declarations}/instructions/refreshOraclePrice.d.ts +2 -3
  21. package/{lib/types/src → declarations}/instructions/repayVault.d.ts +2 -3
  22. package/declarations/instructions/setHalted.d.ts +4 -0
  23. package/{lib/types/src → declarations}/instructions/withdrawStakingPool.d.ts +0 -1
  24. package/declarations/instructions/withdrawVault.d.ts +4 -0
  25. package/{lib/types/src → declarations}/state/LiquidationPoolEra.d.ts +1 -2
  26. package/{lib/types/src → declarations}/state/LiquidationPoolState.d.ts +0 -1
  27. package/{lib/types/src → declarations}/state/LiquidationPosition.d.ts +8 -10
  28. package/{lib/types/src → declarations}/state/StakingPool.d.ts +0 -1
  29. package/{lib/types/src → declarations}/state/StakingPoolPosition.d.ts +0 -1
  30. package/{lib/types/src → declarations}/state/VaultAccount.d.ts +0 -1
  31. package/{lib/types/src → declarations}/state/VaultHistoryEvent.d.ts +0 -1
  32. package/{lib/types/src → declarations}/utils/Errors.d.ts +0 -1
  33. package/lib/Constants.js +86 -0
  34. package/lib/HedgeDecimal.js +24 -0
  35. package/lib/StakingPools.js +15 -0
  36. package/lib/Vaults.js +20 -0
  37. package/lib/idl/idl.js +1475 -0
  38. package/lib/idl/vault.js +2285 -0
  39. package/lib/index.js +37 -2156
  40. package/lib/instructions/claimLiquidationPoolPosition.js +53 -0
  41. package/lib/instructions/closeLiquidationPoolPosition.js +60 -0
  42. package/lib/instructions/createStakingPool.js +52 -0
  43. package/lib/instructions/createVault.js +92 -0
  44. package/lib/instructions/depositLiquidationPool.js +55 -0
  45. package/lib/instructions/depositStakingPool.js +52 -0
  46. package/lib/instructions/depositVault.js +87 -0
  47. package/lib/instructions/initHedgeFoundation.js +55 -0
  48. package/lib/instructions/initHedgeFoundationTokens.js +48 -0
  49. package/lib/instructions/liquidateVault.js +80 -0
  50. package/lib/instructions/loanVault.js +61 -0
  51. package/lib/instructions/redeemVault.js +65 -0
  52. package/lib/instructions/refreshOraclePrice.js +65 -0
  53. package/lib/instructions/repayVault.js +62 -0
  54. package/lib/instructions/setHalted.js +37 -0
  55. package/lib/instructions/withdrawStakingPool.js +64 -0
  56. package/lib/instructions/withdrawVault.js +62 -0
  57. package/lib/state/LiquidationPoolEra.js +19 -0
  58. package/lib/state/LiquidationPoolState.js +12 -0
  59. package/lib/state/LiquidationPosition.js +39 -0
  60. package/lib/state/StakingPool.js +22 -0
  61. package/lib/state/StakingPoolPosition.js +28 -0
  62. package/lib/state/VaultAccount.js +52 -0
  63. package/lib/state/VaultHistoryEvent.js +45 -0
  64. package/lib/utils/Errors.js +14 -0
  65. package/package.json +14 -8
  66. package/src/Constants.ts +24 -19
  67. package/src/HedgeDecimal.ts +3 -3
  68. package/src/idl/idl.ts +13 -13
  69. package/src/idl/vault.ts +4565 -0
  70. package/src/index.ts +6 -0
  71. package/src/instructions/claimLiquidationPoolPosition.ts +76 -0
  72. package/src/instructions/closeLiquidationPoolPosition.ts +82 -0
  73. package/src/instructions/createStakingPool.ts +4 -4
  74. package/src/instructions/createVault.ts +98 -27
  75. package/src/instructions/depositLiquidationPool.ts +67 -0
  76. package/src/instructions/depositStakingPool.ts +5 -3
  77. package/src/instructions/depositVault.ts +95 -27
  78. package/src/instructions/initHedgeFoundation.ts +64 -0
  79. package/src/instructions/initHedgeFoundationTokens.ts +55 -0
  80. package/src/instructions/liquidateVault.ts +87 -35
  81. package/src/instructions/loanVault.ts +30 -20
  82. package/src/instructions/redeemVault.ts +37 -24
  83. package/src/instructions/refreshOraclePrice.ts +6 -3
  84. package/src/instructions/repayVault.ts +30 -20
  85. package/src/instructions/setHalted.ts +48 -0
  86. package/src/instructions/withdrawStakingPool.ts +6 -6
  87. package/src/instructions/withdrawVault.ts +50 -17
  88. package/src/state/LiquidationPoolEra.ts +2 -8
  89. package/src/state/LiquidationPosition.ts +38 -39
  90. package/tsconfig.json +3 -2
  91. package/.github/workflows/npm-publish.yml +0 -34
  92. package/README.md +0 -44
  93. package/jsconfig.json +0 -12
  94. package/lib/index.js.map +0 -1
  95. package/lib/types/src/Constants.d.ts.map +0 -1
  96. package/lib/types/src/HedgeDecimal.d.ts.map +0 -1
  97. package/lib/types/src/StakingPools.d.ts.map +0 -1
  98. package/lib/types/src/Vaults.d.ts.map +0 -1
  99. package/lib/types/src/idl/idl.d.ts.map +0 -1
  100. package/lib/types/src/index.d.ts.map +0 -1
  101. package/lib/types/src/instructions/createStakingPool.d.ts.map +0 -1
  102. package/lib/types/src/instructions/createVault.d.ts +0 -5
  103. package/lib/types/src/instructions/createVault.d.ts.map +0 -1
  104. package/lib/types/src/instructions/depositStakingPool.d.ts.map +0 -1
  105. package/lib/types/src/instructions/depositVault.d.ts +0 -5
  106. package/lib/types/src/instructions/depositVault.d.ts.map +0 -1
  107. package/lib/types/src/instructions/liquidateVault.d.ts +0 -5
  108. package/lib/types/src/instructions/liquidateVault.d.ts.map +0 -1
  109. package/lib/types/src/instructions/loanVault.d.ts.map +0 -1
  110. package/lib/types/src/instructions/redeemVault.d.ts +0 -5
  111. package/lib/types/src/instructions/redeemVault.d.ts.map +0 -1
  112. package/lib/types/src/instructions/refreshOraclePrice.d.ts.map +0 -1
  113. package/lib/types/src/instructions/repayVault.d.ts.map +0 -1
  114. package/lib/types/src/instructions/withdrawStakingPool.d.ts.map +0 -1
  115. package/lib/types/src/instructions/withdrawVault.d.ts +0 -5
  116. package/lib/types/src/instructions/withdrawVault.d.ts.map +0 -1
  117. package/lib/types/src/state/LiquidationPoolEra.d.ts.map +0 -1
  118. package/lib/types/src/state/LiquidationPoolState.d.ts.map +0 -1
  119. package/lib/types/src/state/LiquidationPosition.d.ts.map +0 -1
  120. package/lib/types/src/state/StakingPool.d.ts.map +0 -1
  121. package/lib/types/src/state/StakingPoolPosition.d.ts.map +0 -1
  122. package/lib/types/src/state/VaultAccount.d.ts.map +0 -1
  123. package/lib/types/src/state/VaultHistoryEvent.d.ts.map +0 -1
  124. package/lib/types/src/utils/Errors.d.ts.map +0 -1
  125. package/lib/types/tsconfig.base.tsbuildinfo +0 -1
  126. package/rollup.config.js +0 -40
@@ -0,0 +1,2283 @@
1
+ export declare type Vault = {
2
+ "version": "0.1.0";
3
+ "name": "vault";
4
+ "instructions": [
5
+ {
6
+ "name": "initHedgeFoundation";
7
+ "accounts": [
8
+ {
9
+ "name": "vaultSystemState";
10
+ "isMut": true;
11
+ "isSigner": false;
12
+ },
13
+ {
14
+ "name": "poolState";
15
+ "isMut": true;
16
+ "isSigner": false;
17
+ },
18
+ {
19
+ "name": "poolEra";
20
+ "isMut": true;
21
+ "isSigner": true;
22
+ },
23
+ {
24
+ "name": "poolUsdhAccount";
25
+ "isMut": true;
26
+ "isSigner": false;
27
+ },
28
+ {
29
+ "name": "founder";
30
+ "isMut": true;
31
+ "isSigner": true;
32
+ },
33
+ {
34
+ "name": "usdhMint";
35
+ "isMut": true;
36
+ "isSigner": false;
37
+ },
38
+ {
39
+ "name": "hedgeMint";
40
+ "isMut": true;
41
+ "isSigner": false;
42
+ },
43
+ {
44
+ "name": "founderAssociatedHedgeTokenAccount";
45
+ "isMut": true;
46
+ "isSigner": false;
47
+ },
48
+ {
49
+ "name": "communityAssociatedHedgeTokenAccount";
50
+ "isMut": true;
51
+ "isSigner": false;
52
+ },
53
+ {
54
+ "name": "associatedTokenProgram";
55
+ "isMut": false;
56
+ "isSigner": false;
57
+ },
58
+ {
59
+ "name": "systemProgram";
60
+ "isMut": false;
61
+ "isSigner": false;
62
+ },
63
+ {
64
+ "name": "tokenProgram";
65
+ "isMut": false;
66
+ "isSigner": false;
67
+ },
68
+ {
69
+ "name": "rent";
70
+ "isMut": false;
71
+ "isSigner": false;
72
+ }
73
+ ];
74
+ "args": [];
75
+ },
76
+ {
77
+ "name": "setHedgeTokenMetadata";
78
+ "accounts": [
79
+ {
80
+ "name": "metadataAccount";
81
+ "isMut": true;
82
+ "isSigner": false;
83
+ },
84
+ {
85
+ "name": "mint";
86
+ "isMut": true;
87
+ "isSigner": false;
88
+ },
89
+ {
90
+ "name": "payer";
91
+ "isMut": false;
92
+ "isSigner": true;
93
+ },
94
+ {
95
+ "name": "tokenMetadataProgram";
96
+ "isMut": false;
97
+ "isSigner": false;
98
+ },
99
+ {
100
+ "name": "associatedTokenProgram";
101
+ "isMut": false;
102
+ "isSigner": false;
103
+ },
104
+ {
105
+ "name": "systemProgram";
106
+ "isMut": false;
107
+ "isSigner": false;
108
+ },
109
+ {
110
+ "name": "tokenProgram";
111
+ "isMut": false;
112
+ "isSigner": false;
113
+ },
114
+ {
115
+ "name": "rent";
116
+ "isMut": false;
117
+ "isSigner": false;
118
+ }
119
+ ];
120
+ "args": [];
121
+ },
122
+ {
123
+ "name": "updateHedgeTokenMetadata";
124
+ "accounts": [
125
+ {
126
+ "name": "metadataAccount";
127
+ "isMut": true;
128
+ "isSigner": false;
129
+ },
130
+ {
131
+ "name": "mint";
132
+ "isMut": true;
133
+ "isSigner": false;
134
+ },
135
+ {
136
+ "name": "payer";
137
+ "isMut": false;
138
+ "isSigner": true;
139
+ },
140
+ {
141
+ "name": "tokenMetadataProgram";
142
+ "isMut": false;
143
+ "isSigner": false;
144
+ },
145
+ {
146
+ "name": "associatedTokenProgram";
147
+ "isMut": false;
148
+ "isSigner": false;
149
+ },
150
+ {
151
+ "name": "systemProgram";
152
+ "isMut": false;
153
+ "isSigner": false;
154
+ },
155
+ {
156
+ "name": "tokenProgram";
157
+ "isMut": false;
158
+ "isSigner": false;
159
+ },
160
+ {
161
+ "name": "rent";
162
+ "isMut": false;
163
+ "isSigner": false;
164
+ }
165
+ ];
166
+ "args": [];
167
+ },
168
+ {
169
+ "name": "setUsdhTokenMetadata";
170
+ "accounts": [
171
+ {
172
+ "name": "metadataAccount";
173
+ "isMut": true;
174
+ "isSigner": false;
175
+ },
176
+ {
177
+ "name": "mint";
178
+ "isMut": true;
179
+ "isSigner": false;
180
+ },
181
+ {
182
+ "name": "payer";
183
+ "isMut": false;
184
+ "isSigner": true;
185
+ },
186
+ {
187
+ "name": "tokenMetadataProgram";
188
+ "isMut": false;
189
+ "isSigner": false;
190
+ },
191
+ {
192
+ "name": "associatedTokenProgram";
193
+ "isMut": false;
194
+ "isSigner": false;
195
+ },
196
+ {
197
+ "name": "systemProgram";
198
+ "isMut": false;
199
+ "isSigner": false;
200
+ },
201
+ {
202
+ "name": "tokenProgram";
203
+ "isMut": false;
204
+ "isSigner": false;
205
+ },
206
+ {
207
+ "name": "rent";
208
+ "isMut": false;
209
+ "isSigner": false;
210
+ }
211
+ ];
212
+ "args": [];
213
+ },
214
+ {
215
+ "name": "updateUsdhTokenMetadata";
216
+ "accounts": [
217
+ {
218
+ "name": "metadataAccount";
219
+ "isMut": true;
220
+ "isSigner": false;
221
+ },
222
+ {
223
+ "name": "mint";
224
+ "isMut": true;
225
+ "isSigner": false;
226
+ },
227
+ {
228
+ "name": "payer";
229
+ "isMut": false;
230
+ "isSigner": true;
231
+ },
232
+ {
233
+ "name": "tokenMetadataProgram";
234
+ "isMut": false;
235
+ "isSigner": false;
236
+ },
237
+ {
238
+ "name": "associatedTokenProgram";
239
+ "isMut": false;
240
+ "isSigner": false;
241
+ },
242
+ {
243
+ "name": "systemProgram";
244
+ "isMut": false;
245
+ "isSigner": false;
246
+ },
247
+ {
248
+ "name": "tokenProgram";
249
+ "isMut": false;
250
+ "isSigner": false;
251
+ },
252
+ {
253
+ "name": "rent";
254
+ "isMut": false;
255
+ "isSigner": false;
256
+ }
257
+ ];
258
+ "args": [];
259
+ },
260
+ {
261
+ "name": "createStakingPool";
262
+ "accounts": [
263
+ {
264
+ "name": "signer";
265
+ "isMut": true;
266
+ "isSigner": true;
267
+ },
268
+ {
269
+ "name": "vaultSystemState";
270
+ "isMut": true;
271
+ "isSigner": false;
272
+ },
273
+ {
274
+ "name": "pool";
275
+ "isMut": true;
276
+ "isSigner": false;
277
+ },
278
+ {
279
+ "name": "stakedTokenMintInfo";
280
+ "isMut": false;
281
+ "isSigner": false;
282
+ },
283
+ {
284
+ "name": "usdhMint";
285
+ "isMut": false;
286
+ "isSigner": false;
287
+ },
288
+ {
289
+ "name": "poolAssociatedStakedTokenAccount";
290
+ "isMut": true;
291
+ "isSigner": false;
292
+ },
293
+ {
294
+ "name": "poolAssociatedUsdhTokenAccount";
295
+ "isMut": true;
296
+ "isSigner": false;
297
+ },
298
+ {
299
+ "name": "associatedTokenProgram";
300
+ "isMut": false;
301
+ "isSigner": false;
302
+ },
303
+ {
304
+ "name": "systemProgram";
305
+ "isMut": false;
306
+ "isSigner": false;
307
+ },
308
+ {
309
+ "name": "tokenProgram";
310
+ "isMut": false;
311
+ "isSigner": false;
312
+ },
313
+ {
314
+ "name": "rent";
315
+ "isMut": false;
316
+ "isSigner": false;
317
+ }
318
+ ];
319
+ "args": [
320
+ {
321
+ "name": "bump1";
322
+ "type": "u8";
323
+ },
324
+ {
325
+ "name": "poolSeedPhraseInput";
326
+ "type": "string";
327
+ },
328
+ {
329
+ "name": "totalRewards";
330
+ "type": "u64";
331
+ },
332
+ {
333
+ "name": "overrideCurrentTime";
334
+ "type": "i64";
335
+ }
336
+ ];
337
+ },
338
+ {
339
+ "name": "depositStakingPool";
340
+ "accounts": [
341
+ {
342
+ "name": "payer";
343
+ "isMut": true;
344
+ "isSigner": true;
345
+ },
346
+ {
347
+ "name": "pool";
348
+ "isMut": true;
349
+ "isSigner": false;
350
+ },
351
+ {
352
+ "name": "poolPosition";
353
+ "isMut": true;
354
+ "isSigner": true;
355
+ },
356
+ {
357
+ "name": "payerAssociatedStakedTokenAccount";
358
+ "isMut": true;
359
+ "isSigner": false;
360
+ },
361
+ {
362
+ "name": "poolAssociatedStakedTokenAccount";
363
+ "isMut": true;
364
+ "isSigner": false;
365
+ },
366
+ {
367
+ "name": "systemProgram";
368
+ "isMut": false;
369
+ "isSigner": false;
370
+ },
371
+ {
372
+ "name": "tokenProgram";
373
+ "isMut": false;
374
+ "isSigner": false;
375
+ }
376
+ ];
377
+ "args": [
378
+ {
379
+ "name": "stakeAmount";
380
+ "type": "u64";
381
+ },
382
+ {
383
+ "name": "overrideCurrentTime";
384
+ "type": "i64";
385
+ }
386
+ ];
387
+ },
388
+ {
389
+ "name": "withdrawStakingPool";
390
+ "accounts": [
391
+ {
392
+ "name": "payer";
393
+ "isMut": true;
394
+ "isSigner": true;
395
+ },
396
+ {
397
+ "name": "vaultSystemState";
398
+ "isMut": true;
399
+ "isSigner": false;
400
+ },
401
+ {
402
+ "name": "pool";
403
+ "isMut": true;
404
+ "isSigner": false;
405
+ },
406
+ {
407
+ "name": "poolPosition";
408
+ "isMut": true;
409
+ "isSigner": false;
410
+ },
411
+ {
412
+ "name": "hedgeMint";
413
+ "isMut": true;
414
+ "isSigner": false;
415
+ },
416
+ {
417
+ "name": "stakedTokenMint";
418
+ "isMut": true;
419
+ "isSigner": false;
420
+ },
421
+ {
422
+ "name": "usdhMint";
423
+ "isMut": false;
424
+ "isSigner": false;
425
+ },
426
+ {
427
+ "name": "payerAssociatedStakedTokenAccount";
428
+ "isMut": true;
429
+ "isSigner": false;
430
+ },
431
+ {
432
+ "name": "payerAssociatedHedgeAccount";
433
+ "isMut": true;
434
+ "isSigner": false;
435
+ },
436
+ {
437
+ "name": "payerAssociatedUsdhAccount";
438
+ "isMut": true;
439
+ "isSigner": false;
440
+ },
441
+ {
442
+ "name": "poolAssociatedStakedTokenAccount";
443
+ "isMut": true;
444
+ "isSigner": false;
445
+ },
446
+ {
447
+ "name": "poolAssociatedUsdhTokenAccount";
448
+ "isMut": true;
449
+ "isSigner": false;
450
+ },
451
+ {
452
+ "name": "communityAssociatedHedgeTokenAccount";
453
+ "isMut": true;
454
+ "isSigner": false;
455
+ },
456
+ {
457
+ "name": "systemProgram";
458
+ "isMut": false;
459
+ "isSigner": false;
460
+ },
461
+ {
462
+ "name": "tokenProgram";
463
+ "isMut": false;
464
+ "isSigner": false;
465
+ }
466
+ ];
467
+ "args": [
468
+ {
469
+ "name": "overrideCurrentTime";
470
+ "type": "i64";
471
+ }
472
+ ];
473
+ },
474
+ {
475
+ "name": "createVault";
476
+ "accounts": [
477
+ {
478
+ "name": "vaultSystemState";
479
+ "isMut": true;
480
+ "isSigner": false;
481
+ },
482
+ {
483
+ "name": "vaultTypeAccount";
484
+ "isMut": true;
485
+ "isSigner": false;
486
+ },
487
+ {
488
+ "name": "vault";
489
+ "isMut": true;
490
+ "isSigner": false;
491
+ },
492
+ {
493
+ "name": "vaultAssociatedTokenAccount";
494
+ "isMut": true;
495
+ "isSigner": false;
496
+ },
497
+ {
498
+ "name": "feePool";
499
+ "isMut": true;
500
+ "isSigner": false;
501
+ },
502
+ {
503
+ "name": "feePoolAssociatedUsdhTokenAccount";
504
+ "isMut": true;
505
+ "isSigner": false;
506
+ },
507
+ {
508
+ "name": "usdhMint";
509
+ "isMut": true;
510
+ "isSigner": false;
511
+ },
512
+ {
513
+ "name": "history";
514
+ "isMut": true;
515
+ "isSigner": true;
516
+ },
517
+ {
518
+ "name": "payer";
519
+ "isMut": true;
520
+ "isSigner": true;
521
+ },
522
+ {
523
+ "name": "payerTokenAccount";
524
+ "isMut": true;
525
+ "isSigner": false;
526
+ },
527
+ {
528
+ "name": "collateralMint";
529
+ "isMut": true;
530
+ "isSigner": false;
531
+ },
532
+ {
533
+ "name": "associatedTokenProgram";
534
+ "isMut": false;
535
+ "isSigner": false;
536
+ },
537
+ {
538
+ "name": "systemProgram";
539
+ "isMut": false;
540
+ "isSigner": false;
541
+ },
542
+ {
543
+ "name": "tokenProgram";
544
+ "isMut": false;
545
+ "isSigner": false;
546
+ },
547
+ {
548
+ "name": "rent";
549
+ "isMut": false;
550
+ "isSigner": false;
551
+ }
552
+ ];
553
+ "args": [
554
+ {
555
+ "name": "pdaSalt";
556
+ "type": "string";
557
+ },
558
+ {
559
+ "name": "depositAmount";
560
+ "type": "u64";
561
+ },
562
+ {
563
+ "name": "overrideCurrentTime";
564
+ "type": "i64";
565
+ }
566
+ ];
567
+ },
568
+ {
569
+ "name": "depositVault";
570
+ "accounts": [
571
+ {
572
+ "name": "vaultSystemState";
573
+ "isMut": true;
574
+ "isSigner": false;
575
+ },
576
+ {
577
+ "name": "vaultTypeAccount";
578
+ "isMut": true;
579
+ "isSigner": false;
580
+ },
581
+ {
582
+ "name": "vaultTypeAssociatedTokenAccount";
583
+ "isMut": true;
584
+ "isSigner": false;
585
+ },
586
+ {
587
+ "name": "vault";
588
+ "isMut": true;
589
+ "isSigner": false;
590
+ },
591
+ {
592
+ "name": "vaultAssociatedTokenAccount";
593
+ "isMut": true;
594
+ "isSigner": false;
595
+ },
596
+ {
597
+ "name": "feePool";
598
+ "isMut": true;
599
+ "isSigner": false;
600
+ },
601
+ {
602
+ "name": "feePoolAssociatedUsdhTokenAccount";
603
+ "isMut": true;
604
+ "isSigner": false;
605
+ },
606
+ {
607
+ "name": "usdhMint";
608
+ "isMut": true;
609
+ "isSigner": false;
610
+ },
611
+ {
612
+ "name": "collateralTokenMint";
613
+ "isMut": false;
614
+ "isSigner": false;
615
+ },
616
+ {
617
+ "name": "history";
618
+ "isMut": true;
619
+ "isSigner": true;
620
+ },
621
+ {
622
+ "name": "vaultOwner";
623
+ "isMut": true;
624
+ "isSigner": true;
625
+ },
626
+ {
627
+ "name": "vaultOwnerTokenAccount";
628
+ "isMut": true;
629
+ "isSigner": false;
630
+ },
631
+ {
632
+ "name": "tokenProgram";
633
+ "isMut": false;
634
+ "isSigner": false;
635
+ },
636
+ {
637
+ "name": "systemProgram";
638
+ "isMut": false;
639
+ "isSigner": false;
640
+ }
641
+ ];
642
+ "args": [
643
+ {
644
+ "name": "depositAmount";
645
+ "type": "u64";
646
+ },
647
+ {
648
+ "name": "overrideCurrentTime";
649
+ "type": "i64";
650
+ }
651
+ ];
652
+ },
653
+ {
654
+ "name": "withdrawVault";
655
+ "accounts": [
656
+ {
657
+ "name": "vaultSystemState";
658
+ "isMut": true;
659
+ "isSigner": false;
660
+ },
661
+ {
662
+ "name": "vaultTypeAccount";
663
+ "isMut": true;
664
+ "isSigner": false;
665
+ },
666
+ {
667
+ "name": "vaultTypeAssociatedTokenAccount";
668
+ "isMut": true;
669
+ "isSigner": false;
670
+ },
671
+ {
672
+ "name": "vault";
673
+ "isMut": true;
674
+ "isSigner": false;
675
+ },
676
+ {
677
+ "name": "vaultAssociatedTokenAccount";
678
+ "isMut": true;
679
+ "isSigner": false;
680
+ },
681
+ {
682
+ "name": "feePool";
683
+ "isMut": true;
684
+ "isSigner": false;
685
+ },
686
+ {
687
+ "name": "feePoolAssociatedUsdhTokenAccount";
688
+ "isMut": true;
689
+ "isSigner": false;
690
+ },
691
+ {
692
+ "name": "history";
693
+ "isMut": true;
694
+ "isSigner": true;
695
+ },
696
+ {
697
+ "name": "vaultOwner";
698
+ "isMut": true;
699
+ "isSigner": true;
700
+ },
701
+ {
702
+ "name": "destinationTokenAccount";
703
+ "isMut": true;
704
+ "isSigner": false;
705
+ },
706
+ {
707
+ "name": "usdhMint";
708
+ "isMut": true;
709
+ "isSigner": false;
710
+ },
711
+ {
712
+ "name": "systemProgram";
713
+ "isMut": false;
714
+ "isSigner": false;
715
+ },
716
+ {
717
+ "name": "tokenProgram";
718
+ "isMut": false;
719
+ "isSigner": false;
720
+ }
721
+ ];
722
+ "args": [
723
+ {
724
+ "name": "withdrawAmount";
725
+ "type": "u64";
726
+ },
727
+ {
728
+ "name": "overrideCurrentTime";
729
+ "type": "i64";
730
+ }
731
+ ];
732
+ },
733
+ {
734
+ "name": "loanVault";
735
+ "accounts": [
736
+ {
737
+ "name": "vaultSystemState";
738
+ "isMut": true;
739
+ "isSigner": false;
740
+ },
741
+ {
742
+ "name": "vaultTypeAccount";
743
+ "isMut": true;
744
+ "isSigner": false;
745
+ },
746
+ {
747
+ "name": "vaultTypeAssociatedTokenAccount";
748
+ "isMut": true;
749
+ "isSigner": false;
750
+ },
751
+ {
752
+ "name": "vaultAccount";
753
+ "isMut": true;
754
+ "isSigner": false;
755
+ },
756
+ {
757
+ "name": "vaultAssociatedTokenAccount";
758
+ "isMut": true;
759
+ "isSigner": false;
760
+ },
761
+ {
762
+ "name": "history";
763
+ "isMut": true;
764
+ "isSigner": true;
765
+ },
766
+ {
767
+ "name": "feePool";
768
+ "isMut": true;
769
+ "isSigner": false;
770
+ },
771
+ {
772
+ "name": "feePoolAssociatedUsdhTokenAccount";
773
+ "isMut": true;
774
+ "isSigner": false;
775
+ },
776
+ {
777
+ "name": "usdhMint";
778
+ "isMut": true;
779
+ "isSigner": false;
780
+ },
781
+ {
782
+ "name": "vaultOwner";
783
+ "isMut": true;
784
+ "isSigner": true;
785
+ },
786
+ {
787
+ "name": "ownerUsdhAccount";
788
+ "isMut": true;
789
+ "isSigner": false;
790
+ },
791
+ {
792
+ "name": "systemProgram";
793
+ "isMut": false;
794
+ "isSigner": false;
795
+ },
796
+ {
797
+ "name": "tokenProgram";
798
+ "isMut": false;
799
+ "isSigner": false;
800
+ }
801
+ ];
802
+ "args": [
803
+ {
804
+ "name": "normalizedLoanAmount";
805
+ "type": "u64";
806
+ },
807
+ {
808
+ "name": "overrideCurrentTime";
809
+ "type": "i64";
810
+ }
811
+ ];
812
+ },
813
+ {
814
+ "name": "repayVault";
815
+ "accounts": [
816
+ {
817
+ "name": "vaultSystemState";
818
+ "isMut": true;
819
+ "isSigner": false;
820
+ },
821
+ {
822
+ "name": "vaultTypeAccount";
823
+ "isMut": true;
824
+ "isSigner": false;
825
+ },
826
+ {
827
+ "name": "vaultTypeAssociatedTokenAccount";
828
+ "isMut": true;
829
+ "isSigner": false;
830
+ },
831
+ {
832
+ "name": "vaultAccount";
833
+ "isMut": true;
834
+ "isSigner": false;
835
+ },
836
+ {
837
+ "name": "vaultAssociatedTokenAccount";
838
+ "isMut": true;
839
+ "isSigner": false;
840
+ },
841
+ {
842
+ "name": "feePool";
843
+ "isMut": true;
844
+ "isSigner": false;
845
+ },
846
+ {
847
+ "name": "feePoolAssociatedUsdhTokenAccount";
848
+ "isMut": true;
849
+ "isSigner": false;
850
+ },
851
+ {
852
+ "name": "history";
853
+ "isMut": true;
854
+ "isSigner": true;
855
+ },
856
+ {
857
+ "name": "usdhMint";
858
+ "isMut": true;
859
+ "isSigner": false;
860
+ },
861
+ {
862
+ "name": "vaultOwner";
863
+ "isMut": true;
864
+ "isSigner": true;
865
+ },
866
+ {
867
+ "name": "ownerUsdhAccount";
868
+ "isMut": true;
869
+ "isSigner": false;
870
+ },
871
+ {
872
+ "name": "systemProgram";
873
+ "isMut": false;
874
+ "isSigner": false;
875
+ },
876
+ {
877
+ "name": "tokenProgram";
878
+ "isMut": false;
879
+ "isSigner": false;
880
+ }
881
+ ];
882
+ "args": [
883
+ {
884
+ "name": "repayAmount";
885
+ "type": "u64";
886
+ },
887
+ {
888
+ "name": "overrideCurrentTime";
889
+ "type": "i64";
890
+ }
891
+ ];
892
+ },
893
+ {
894
+ "name": "redeemVault";
895
+ "accounts": [
896
+ {
897
+ "name": "vaultSystemState";
898
+ "isMut": true;
899
+ "isSigner": false;
900
+ },
901
+ {
902
+ "name": "vaultTypeAccount";
903
+ "isMut": true;
904
+ "isSigner": false;
905
+ },
906
+ {
907
+ "name": "vaultTypeAssociatedTokenAccount";
908
+ "isMut": true;
909
+ "isSigner": false;
910
+ },
911
+ {
912
+ "name": "vault";
913
+ "isMut": true;
914
+ "isSigner": false;
915
+ },
916
+ {
917
+ "name": "vaultAssociatedTokenAccount";
918
+ "isMut": true;
919
+ "isSigner": false;
920
+ },
921
+ {
922
+ "name": "history";
923
+ "isMut": true;
924
+ "isSigner": true;
925
+ },
926
+ {
927
+ "name": "usdhMint";
928
+ "isMut": true;
929
+ "isSigner": false;
930
+ },
931
+ {
932
+ "name": "feePool";
933
+ "isMut": true;
934
+ "isSigner": false;
935
+ },
936
+ {
937
+ "name": "feePoolAssociatedUsdhTokenAccount";
938
+ "isMut": true;
939
+ "isSigner": false;
940
+ },
941
+ {
942
+ "name": "payer";
943
+ "isMut": true;
944
+ "isSigner": true;
945
+ },
946
+ {
947
+ "name": "payerUsdhAccount";
948
+ "isMut": true;
949
+ "isSigner": false;
950
+ },
951
+ {
952
+ "name": "destinationTokenAccount";
953
+ "isMut": true;
954
+ "isSigner": false;
955
+ },
956
+ {
957
+ "name": "systemProgram";
958
+ "isMut": false;
959
+ "isSigner": false;
960
+ },
961
+ {
962
+ "name": "tokenProgram";
963
+ "isMut": false;
964
+ "isSigner": false;
965
+ }
966
+ ];
967
+ "args": [
968
+ {
969
+ "name": "redeemPayUsdh";
970
+ "type": "u64";
971
+ },
972
+ {
973
+ "name": "overrideCurrentTime";
974
+ "type": "i64";
975
+ }
976
+ ];
977
+ },
978
+ {
979
+ "name": "depositLiquidationPool";
980
+ "accounts": [
981
+ {
982
+ "name": "poolState";
983
+ "isMut": true;
984
+ "isSigner": false;
985
+ },
986
+ {
987
+ "name": "poolUsdhAccount";
988
+ "isMut": true;
989
+ "isSigner": false;
990
+ },
991
+ {
992
+ "name": "poolEra";
993
+ "isMut": true;
994
+ "isSigner": false;
995
+ },
996
+ {
997
+ "name": "poolPosition";
998
+ "isMut": true;
999
+ "isSigner": true;
1000
+ },
1001
+ {
1002
+ "name": "usdhMint";
1003
+ "isMut": true;
1004
+ "isSigner": false;
1005
+ },
1006
+ {
1007
+ "name": "payer";
1008
+ "isMut": true;
1009
+ "isSigner": true;
1010
+ },
1011
+ {
1012
+ "name": "ownerUsdhAccount";
1013
+ "isMut": true;
1014
+ "isSigner": false;
1015
+ },
1016
+ {
1017
+ "name": "systemProgram";
1018
+ "isMut": false;
1019
+ "isSigner": false;
1020
+ },
1021
+ {
1022
+ "name": "tokenProgram";
1023
+ "isMut": false;
1024
+ "isSigner": false;
1025
+ }
1026
+ ];
1027
+ "args": [
1028
+ {
1029
+ "name": "depositAmount";
1030
+ "type": "u64";
1031
+ },
1032
+ {
1033
+ "name": "overrideCurrentTime";
1034
+ "type": "i64";
1035
+ }
1036
+ ];
1037
+ },
1038
+ {
1039
+ "name": "liquidateVaultPrepAccounts";
1040
+ "accounts": [
1041
+ {
1042
+ "name": "vaultSystemState";
1043
+ "isMut": true;
1044
+ "isSigner": false;
1045
+ },
1046
+ {
1047
+ "name": "vaultTypeAccount";
1048
+ "isMut": true;
1049
+ "isSigner": false;
1050
+ },
1051
+ {
1052
+ "name": "vaultTypeAssociatedTokenAccount";
1053
+ "isMut": true;
1054
+ "isSigner": false;
1055
+ },
1056
+ {
1057
+ "name": "collateralMint";
1058
+ "isMut": true;
1059
+ "isSigner": false;
1060
+ },
1061
+ {
1062
+ "name": "vaultAccount";
1063
+ "isMut": true;
1064
+ "isSigner": false;
1065
+ },
1066
+ {
1067
+ "name": "vaultAssociatedTokenAccount";
1068
+ "isMut": true;
1069
+ "isSigner": false;
1070
+ },
1071
+ {
1072
+ "name": "poolState";
1073
+ "isMut": true;
1074
+ "isSigner": false;
1075
+ },
1076
+ {
1077
+ "name": "poolAssociatedTokenAccount";
1078
+ "isMut": true;
1079
+ "isSigner": false;
1080
+ },
1081
+ {
1082
+ "name": "feePool";
1083
+ "isMut": true;
1084
+ "isSigner": false;
1085
+ },
1086
+ {
1087
+ "name": "feePoolAssociatedTokenAccount";
1088
+ "isMut": true;
1089
+ "isSigner": false;
1090
+ },
1091
+ {
1092
+ "name": "feePoolAssociatedUsdhTokenAccount";
1093
+ "isMut": true;
1094
+ "isSigner": false;
1095
+ },
1096
+ {
1097
+ "name": "liquidationPoolUsdhAccount";
1098
+ "isMut": true;
1099
+ "isSigner": false;
1100
+ },
1101
+ {
1102
+ "name": "usdhMint";
1103
+ "isMut": true;
1104
+ "isSigner": false;
1105
+ },
1106
+ {
1107
+ "name": "poolEra";
1108
+ "isMut": true;
1109
+ "isSigner": false;
1110
+ },
1111
+ {
1112
+ "name": "newEra";
1113
+ "isMut": true;
1114
+ "isSigner": true;
1115
+ },
1116
+ {
1117
+ "name": "history";
1118
+ "isMut": true;
1119
+ "isSigner": true;
1120
+ },
1121
+ {
1122
+ "name": "payer";
1123
+ "isMut": true;
1124
+ "isSigner": true;
1125
+ },
1126
+ {
1127
+ "name": "payerAssociatedTokenAccount";
1128
+ "isMut": true;
1129
+ "isSigner": false;
1130
+ },
1131
+ {
1132
+ "name": "associatedTokenProgram";
1133
+ "isMut": false;
1134
+ "isSigner": false;
1135
+ },
1136
+ {
1137
+ "name": "systemProgram";
1138
+ "isMut": false;
1139
+ "isSigner": false;
1140
+ },
1141
+ {
1142
+ "name": "tokenProgram";
1143
+ "isMut": false;
1144
+ "isSigner": false;
1145
+ },
1146
+ {
1147
+ "name": "rent";
1148
+ "isMut": false;
1149
+ "isSigner": false;
1150
+ }
1151
+ ];
1152
+ "args": [];
1153
+ },
1154
+ {
1155
+ "name": "liquidateVault";
1156
+ "accounts": [
1157
+ {
1158
+ "name": "vaultSystemState";
1159
+ "isMut": true;
1160
+ "isSigner": false;
1161
+ },
1162
+ {
1163
+ "name": "vaultTypeAccount";
1164
+ "isMut": true;
1165
+ "isSigner": false;
1166
+ },
1167
+ {
1168
+ "name": "vaultTypeAssociatedTokenAccount";
1169
+ "isMut": true;
1170
+ "isSigner": false;
1171
+ },
1172
+ {
1173
+ "name": "collateralMint";
1174
+ "isMut": true;
1175
+ "isSigner": false;
1176
+ },
1177
+ {
1178
+ "name": "vaultAccount";
1179
+ "isMut": true;
1180
+ "isSigner": false;
1181
+ },
1182
+ {
1183
+ "name": "vaultAssociatedTokenAccount";
1184
+ "isMut": true;
1185
+ "isSigner": false;
1186
+ },
1187
+ {
1188
+ "name": "poolState";
1189
+ "isMut": true;
1190
+ "isSigner": false;
1191
+ },
1192
+ {
1193
+ "name": "poolAssociatedTokenAccount";
1194
+ "isMut": true;
1195
+ "isSigner": false;
1196
+ },
1197
+ {
1198
+ "name": "feePool";
1199
+ "isMut": true;
1200
+ "isSigner": false;
1201
+ },
1202
+ {
1203
+ "name": "feePoolAssociatedTokenAccount";
1204
+ "isMut": true;
1205
+ "isSigner": false;
1206
+ },
1207
+ {
1208
+ "name": "feePoolAssociatedUsdhTokenAccount";
1209
+ "isMut": true;
1210
+ "isSigner": false;
1211
+ },
1212
+ {
1213
+ "name": "liquidationPoolUsdhAccount";
1214
+ "isMut": true;
1215
+ "isSigner": false;
1216
+ },
1217
+ {
1218
+ "name": "usdhMint";
1219
+ "isMut": true;
1220
+ "isSigner": false;
1221
+ },
1222
+ {
1223
+ "name": "poolEra";
1224
+ "isMut": true;
1225
+ "isSigner": false;
1226
+ },
1227
+ {
1228
+ "name": "newEra";
1229
+ "isMut": true;
1230
+ "isSigner": true;
1231
+ },
1232
+ {
1233
+ "name": "history";
1234
+ "isMut": true;
1235
+ "isSigner": true;
1236
+ },
1237
+ {
1238
+ "name": "payer";
1239
+ "isMut": true;
1240
+ "isSigner": true;
1241
+ },
1242
+ {
1243
+ "name": "payerAssociatedTokenAccount";
1244
+ "isMut": true;
1245
+ "isSigner": false;
1246
+ },
1247
+ {
1248
+ "name": "associatedTokenProgram";
1249
+ "isMut": false;
1250
+ "isSigner": false;
1251
+ },
1252
+ {
1253
+ "name": "systemProgram";
1254
+ "isMut": false;
1255
+ "isSigner": false;
1256
+ },
1257
+ {
1258
+ "name": "tokenProgram";
1259
+ "isMut": false;
1260
+ "isSigner": false;
1261
+ },
1262
+ {
1263
+ "name": "rent";
1264
+ "isMut": false;
1265
+ "isSigner": false;
1266
+ }
1267
+ ];
1268
+ "args": [
1269
+ {
1270
+ "name": "overrideCurrentTime";
1271
+ "type": "i64";
1272
+ }
1273
+ ];
1274
+ },
1275
+ {
1276
+ "name": "closeLiquidationPoolPosition";
1277
+ "accounts": [
1278
+ {
1279
+ "name": "vaultSystemState";
1280
+ "isMut": true;
1281
+ "isSigner": false;
1282
+ },
1283
+ {
1284
+ "name": "poolState";
1285
+ "isMut": true;
1286
+ "isSigner": false;
1287
+ },
1288
+ {
1289
+ "name": "poolEra";
1290
+ "isMut": true;
1291
+ "isSigner": false;
1292
+ },
1293
+ {
1294
+ "name": "poolPosition";
1295
+ "isMut": true;
1296
+ "isSigner": false;
1297
+ },
1298
+ {
1299
+ "name": "poolUsdhAccount";
1300
+ "isMut": true;
1301
+ "isSigner": false;
1302
+ },
1303
+ {
1304
+ "name": "payer";
1305
+ "isMut": true;
1306
+ "isSigner": true;
1307
+ },
1308
+ {
1309
+ "name": "ownerUsdhAccount";
1310
+ "isMut": true;
1311
+ "isSigner": false;
1312
+ },
1313
+ {
1314
+ "name": "hedgeMint";
1315
+ "isMut": true;
1316
+ "isSigner": false;
1317
+ },
1318
+ {
1319
+ "name": "payerAssociatedHedgeAccount";
1320
+ "isMut": true;
1321
+ "isSigner": false;
1322
+ },
1323
+ {
1324
+ "name": "communityAssociatedHedgeTokenAccount";
1325
+ "isMut": true;
1326
+ "isSigner": false;
1327
+ },
1328
+ {
1329
+ "name": "associatedTokenProgram";
1330
+ "isMut": false;
1331
+ "isSigner": false;
1332
+ },
1333
+ {
1334
+ "name": "systemProgram";
1335
+ "isMut": false;
1336
+ "isSigner": false;
1337
+ },
1338
+ {
1339
+ "name": "tokenProgram";
1340
+ "isMut": false;
1341
+ "isSigner": false;
1342
+ },
1343
+ {
1344
+ "name": "rent";
1345
+ "isMut": false;
1346
+ "isSigner": false;
1347
+ }
1348
+ ];
1349
+ "args": [
1350
+ {
1351
+ "name": "overrideCurrentTime";
1352
+ "type": "i64";
1353
+ }
1354
+ ];
1355
+ },
1356
+ {
1357
+ "name": "claimLiquidationPoolPosition";
1358
+ "accounts": [
1359
+ {
1360
+ "name": "poolState";
1361
+ "isMut": true;
1362
+ "isSigner": false;
1363
+ },
1364
+ {
1365
+ "name": "poolAssociatedTokenAccount";
1366
+ "isMut": true;
1367
+ "isSigner": false;
1368
+ },
1369
+ {
1370
+ "name": "vaultTypeAccount";
1371
+ "isMut": true;
1372
+ "isSigner": false;
1373
+ },
1374
+ {
1375
+ "name": "collateralMint";
1376
+ "isMut": false;
1377
+ "isSigner": false;
1378
+ },
1379
+ {
1380
+ "name": "poolPosition";
1381
+ "isMut": true;
1382
+ "isSigner": false;
1383
+ },
1384
+ {
1385
+ "name": "payer";
1386
+ "isMut": true;
1387
+ "isSigner": true;
1388
+ },
1389
+ {
1390
+ "name": "payerAssociatedTokenAccount";
1391
+ "isMut": true;
1392
+ "isSigner": false;
1393
+ },
1394
+ {
1395
+ "name": "associatedTokenProgram";
1396
+ "isMut": false;
1397
+ "isSigner": false;
1398
+ },
1399
+ {
1400
+ "name": "systemProgram";
1401
+ "isMut": false;
1402
+ "isSigner": false;
1403
+ },
1404
+ {
1405
+ "name": "tokenProgram";
1406
+ "isMut": false;
1407
+ "isSigner": false;
1408
+ },
1409
+ {
1410
+ "name": "rent";
1411
+ "isMut": false;
1412
+ "isSigner": false;
1413
+ }
1414
+ ];
1415
+ "args": [];
1416
+ },
1417
+ {
1418
+ "name": "addCollateralType";
1419
+ "accounts": [
1420
+ {
1421
+ "name": "payer";
1422
+ "isMut": true;
1423
+ "isSigner": true;
1424
+ },
1425
+ {
1426
+ "name": "vaultSystemState";
1427
+ "isMut": true;
1428
+ "isSigner": false;
1429
+ },
1430
+ {
1431
+ "name": "oracleInfoAccount";
1432
+ "isMut": true;
1433
+ "isSigner": false;
1434
+ },
1435
+ {
1436
+ "name": "vaultTypeAccount";
1437
+ "isMut": true;
1438
+ "isSigner": false;
1439
+ },
1440
+ {
1441
+ "name": "collateralMint";
1442
+ "isMut": false;
1443
+ "isSigner": false;
1444
+ },
1445
+ {
1446
+ "name": "oracleChainlink";
1447
+ "isMut": false;
1448
+ "isSigner": false;
1449
+ },
1450
+ {
1451
+ "name": "oraclePyth";
1452
+ "isMut": false;
1453
+ "isSigner": false;
1454
+ },
1455
+ {
1456
+ "name": "oracleSwitchboard";
1457
+ "isMut": false;
1458
+ "isSigner": false;
1459
+ },
1460
+ {
1461
+ "name": "systemProgram";
1462
+ "isMut": false;
1463
+ "isSigner": false;
1464
+ }
1465
+ ];
1466
+ "args": [
1467
+ {
1468
+ "name": "collateralType";
1469
+ "type": "string";
1470
+ },
1471
+ {
1472
+ "name": "loanInitFee";
1473
+ "type": "u64";
1474
+ },
1475
+ {
1476
+ "name": "minCollateralRatio";
1477
+ "type": "u64";
1478
+ },
1479
+ {
1480
+ "name": "interestRatePerSecond";
1481
+ "type": "u128";
1482
+ },
1483
+ {
1484
+ "name": "minDebtPerVault";
1485
+ "type": "u64";
1486
+ },
1487
+ {
1488
+ "name": "overrideCurrentTime";
1489
+ "type": "i64";
1490
+ }
1491
+ ];
1492
+ },
1493
+ {
1494
+ "name": "refreshOraclePrice";
1495
+ "accounts": [
1496
+ {
1497
+ "name": "oracleInfoAccount";
1498
+ "isMut": true;
1499
+ "isSigner": false;
1500
+ },
1501
+ {
1502
+ "name": "vaultTypeAccount";
1503
+ "isMut": true;
1504
+ "isSigner": false;
1505
+ },
1506
+ {
1507
+ "name": "oracleChainlink";
1508
+ "isMut": false;
1509
+ "isSigner": false;
1510
+ },
1511
+ {
1512
+ "name": "oraclePyth";
1513
+ "isMut": false;
1514
+ "isSigner": false;
1515
+ },
1516
+ {
1517
+ "name": "oracleSwitchboard";
1518
+ "isMut": false;
1519
+ "isSigner": false;
1520
+ },
1521
+ {
1522
+ "name": "systemProgram";
1523
+ "isMut": false;
1524
+ "isSigner": false;
1525
+ }
1526
+ ];
1527
+ "args": [
1528
+ {
1529
+ "name": "overrideResult";
1530
+ "type": "u64";
1531
+ },
1532
+ {
1533
+ "name": "overrideCurrentTime";
1534
+ "type": "i64";
1535
+ }
1536
+ ];
1537
+ }
1538
+ ];
1539
+ "accounts": [
1540
+ {
1541
+ "name": "stakingPool";
1542
+ "type": {
1543
+ "kind": "struct";
1544
+ "fields": [
1545
+ {
1546
+ "name": "deposits";
1547
+ "type": "u64";
1548
+ },
1549
+ {
1550
+ "name": "bump";
1551
+ "type": "u8";
1552
+ },
1553
+ {
1554
+ "name": "seedPhrase";
1555
+ "type": "string";
1556
+ },
1557
+ {
1558
+ "name": "hedgeRewardAccumulator";
1559
+ "type": "u128";
1560
+ },
1561
+ {
1562
+ "name": "usdhFeeAccumulator";
1563
+ "type": "u128";
1564
+ },
1565
+ {
1566
+ "name": "solFeeAccumulator";
1567
+ "type": "u128";
1568
+ },
1569
+ {
1570
+ "name": "startTime";
1571
+ "type": "i64";
1572
+ },
1573
+ {
1574
+ "name": "lastTransactionTime";
1575
+ "type": "i64";
1576
+ },
1577
+ {
1578
+ "name": "halfLifeInDays";
1579
+ "type": "u64";
1580
+ },
1581
+ {
1582
+ "name": "totalHedgeReward";
1583
+ "type": "u64";
1584
+ },
1585
+ {
1586
+ "name": "stakedTokenMint";
1587
+ "type": "publicKey";
1588
+ }
1589
+ ];
1590
+ };
1591
+ },
1592
+ {
1593
+ "name": "stakingPoolPosition";
1594
+ "type": {
1595
+ "kind": "struct";
1596
+ "fields": [
1597
+ {
1598
+ "name": "state";
1599
+ "type": {
1600
+ "defined": "PositionState";
1601
+ };
1602
+ },
1603
+ {
1604
+ "name": "owner";
1605
+ "type": "publicKey";
1606
+ },
1607
+ {
1608
+ "name": "pool";
1609
+ "type": "publicKey";
1610
+ },
1611
+ {
1612
+ "name": "deposited";
1613
+ "type": "u64";
1614
+ },
1615
+ {
1616
+ "name": "startHedgeRewardAccumulator";
1617
+ "type": "u128";
1618
+ },
1619
+ {
1620
+ "name": "startUsdhFeeAccumulator";
1621
+ "type": "u128";
1622
+ },
1623
+ {
1624
+ "name": "startSolFeeAccumulator";
1625
+ "type": "u128";
1626
+ },
1627
+ {
1628
+ "name": "timestampOpened";
1629
+ "type": "i64";
1630
+ },
1631
+ {
1632
+ "name": "timestampClosed";
1633
+ "type": "i64";
1634
+ },
1635
+ {
1636
+ "name": "closedRewardedTokens";
1637
+ "type": "u64";
1638
+ }
1639
+ ];
1640
+ };
1641
+ },
1642
+ {
1643
+ "name": "vaultSystemState";
1644
+ "type": {
1645
+ "kind": "struct";
1646
+ "fields": [
1647
+ {
1648
+ "name": "lastRedeemFeeBytes";
1649
+ "type": "u128";
1650
+ },
1651
+ {
1652
+ "name": "lastRedeemTimestamp";
1653
+ "type": "i64";
1654
+ },
1655
+ {
1656
+ "name": "totalUsdhSupply";
1657
+ "type": "u64";
1658
+ },
1659
+ {
1660
+ "name": "totalVaults";
1661
+ "type": "u64";
1662
+ },
1663
+ {
1664
+ "name": "totalVaultsClosed";
1665
+ "type": "u64";
1666
+ },
1667
+ {
1668
+ "name": "debtRedistributionError";
1669
+ "type": "u64";
1670
+ },
1671
+ {
1672
+ "name": "authority";
1673
+ "type": "publicKey";
1674
+ },
1675
+ {
1676
+ "name": "hedgeStakingPool";
1677
+ "type": "publicKey";
1678
+ },
1679
+ {
1680
+ "name": "collateralTypeCount";
1681
+ "type": "u64";
1682
+ }
1683
+ ];
1684
+ };
1685
+ },
1686
+ {
1687
+ "name": "vault";
1688
+ "type": {
1689
+ "kind": "struct";
1690
+ "fields": [
1691
+ {
1692
+ "name": "vaultOwner";
1693
+ "type": "publicKey";
1694
+ },
1695
+ {
1696
+ "name": "pdaSalt";
1697
+ "type": "string";
1698
+ },
1699
+ {
1700
+ "name": "bump";
1701
+ "type": "u8";
1702
+ },
1703
+ {
1704
+ "name": "deposited";
1705
+ "type": "u64";
1706
+ },
1707
+ {
1708
+ "name": "denormalizedDebt";
1709
+ "type": "u64";
1710
+ },
1711
+ {
1712
+ "name": "vaultVersion";
1713
+ "type": "u64";
1714
+ },
1715
+ {
1716
+ "name": "debtProductSnapshotBytes";
1717
+ "type": "u128";
1718
+ },
1719
+ {
1720
+ "name": "collateralAccumulatorSnapshotBytes";
1721
+ "type": "u128";
1722
+ },
1723
+ {
1724
+ "name": "collateralType";
1725
+ "type": "string";
1726
+ },
1727
+ {
1728
+ "name": "debtType";
1729
+ "type": {
1730
+ "defined": "CurrencyType";
1731
+ };
1732
+ },
1733
+ {
1734
+ "name": "vaultStatus";
1735
+ "type": {
1736
+ "defined": "VaultStatus";
1737
+ };
1738
+ }
1739
+ ];
1740
+ };
1741
+ },
1742
+ {
1743
+ "name": "vaultHistoryEvent";
1744
+ "type": {
1745
+ "kind": "struct";
1746
+ "fields": [
1747
+ {
1748
+ "name": "vaultAccount";
1749
+ "type": "publicKey";
1750
+ },
1751
+ {
1752
+ "name": "actorAccount";
1753
+ "type": "publicKey";
1754
+ },
1755
+ {
1756
+ "name": "usdSolPrice";
1757
+ "type": "u128";
1758
+ },
1759
+ {
1760
+ "name": "usdhDebtBefore";
1761
+ "type": "u64";
1762
+ },
1763
+ {
1764
+ "name": "usdhDebtAfter";
1765
+ "type": "u64";
1766
+ },
1767
+ {
1768
+ "name": "solBalanceBefore";
1769
+ "type": "u64";
1770
+ },
1771
+ {
1772
+ "name": "solBalanceAfter";
1773
+ "type": "u64";
1774
+ },
1775
+ {
1776
+ "name": "minCollateralRatioBefore";
1777
+ "type": "u128";
1778
+ },
1779
+ {
1780
+ "name": "minCollateralRatioAfter";
1781
+ "type": "u128";
1782
+ },
1783
+ {
1784
+ "name": "vaultStateBefore";
1785
+ "type": {
1786
+ "defined": "VaultStatus";
1787
+ };
1788
+ },
1789
+ {
1790
+ "name": "vaultStateAfter";
1791
+ "type": {
1792
+ "defined": "VaultStatus";
1793
+ };
1794
+ },
1795
+ {
1796
+ "name": "timestamp";
1797
+ "type": "i64";
1798
+ },
1799
+ {
1800
+ "name": "action";
1801
+ "type": {
1802
+ "defined": "VaultHistoryAction";
1803
+ };
1804
+ }
1805
+ ];
1806
+ };
1807
+ },
1808
+ {
1809
+ "name": "liquidationPoolState";
1810
+ "type": {
1811
+ "kind": "struct";
1812
+ "fields": [
1813
+ {
1814
+ "name": "currentEra";
1815
+ "type": "publicKey";
1816
+ },
1817
+ {
1818
+ "name": "lifetimeDeposits";
1819
+ "type": "u64";
1820
+ },
1821
+ {
1822
+ "name": "lifetimeOpenedPositions";
1823
+ "type": "u64";
1824
+ },
1825
+ {
1826
+ "name": "lifetimeClosedPositions";
1827
+ "type": "u64";
1828
+ },
1829
+ {
1830
+ "name": "lifetimeVaultsLiquidated";
1831
+ "type": "u64";
1832
+ },
1833
+ {
1834
+ "name": "lifetimeVaultsRedistributed";
1835
+ "type": "u64";
1836
+ },
1837
+ {
1838
+ "name": "lifetimeSolPurchased";
1839
+ "type": "u64";
1840
+ },
1841
+ {
1842
+ "name": "hedgeInitRewardsTimestamp";
1843
+ "type": "i64";
1844
+ }
1845
+ ];
1846
+ };
1847
+ },
1848
+ {
1849
+ "name": "liquidationPoolEra";
1850
+ "type": {
1851
+ "kind": "struct";
1852
+ "fields": [
1853
+ {
1854
+ "name": "totalDeposits";
1855
+ "type": "u64";
1856
+ },
1857
+ {
1858
+ "name": "productBytes";
1859
+ "type": "u128";
1860
+ },
1861
+ {
1862
+ "name": "sumBytes";
1863
+ "type": {
1864
+ "array": [
1865
+ "u128",
1866
+ 32
1867
+ ];
1868
+ };
1869
+ },
1870
+ {
1871
+ "name": "hedgeRewardsAccumulatorBytes";
1872
+ "type": "u128";
1873
+ },
1874
+ {
1875
+ "name": "hedgeRewardsTimestamp";
1876
+ "type": "i64";
1877
+ }
1878
+ ];
1879
+ };
1880
+ },
1881
+ {
1882
+ "name": "liquidationPosition";
1883
+ "type": {
1884
+ "kind": "struct";
1885
+ "fields": [
1886
+ {
1887
+ "name": "state";
1888
+ "type": "u64";
1889
+ },
1890
+ {
1891
+ "name": "era";
1892
+ "type": "publicKey";
1893
+ },
1894
+ {
1895
+ "name": "ownerAccount";
1896
+ "type": "publicKey";
1897
+ },
1898
+ {
1899
+ "name": "deposit";
1900
+ "type": "u64";
1901
+ },
1902
+ {
1903
+ "name": "closedUsdh";
1904
+ "type": "u64";
1905
+ },
1906
+ {
1907
+ "name": "productSnapshotEntry";
1908
+ "type": "u128";
1909
+ },
1910
+ {
1911
+ "name": "productSnapshotClosed";
1912
+ "type": "u128";
1913
+ },
1914
+ {
1915
+ "name": "sumSnapshotsEntry";
1916
+ "type": {
1917
+ "array": [
1918
+ "u128",
1919
+ 32
1920
+ ];
1921
+ };
1922
+ },
1923
+ {
1924
+ "name": "sumSnapshotsClosed";
1925
+ "type": {
1926
+ "array": [
1927
+ "u128",
1928
+ 32
1929
+ ];
1930
+ };
1931
+ },
1932
+ {
1933
+ "name": "hedgeRewardsSnapshotAccum";
1934
+ "type": "u128";
1935
+ },
1936
+ {
1937
+ "name": "timestampOpened";
1938
+ "type": "i64";
1939
+ },
1940
+ {
1941
+ "name": "timestampClosed";
1942
+ "type": "i64";
1943
+ }
1944
+ ];
1945
+ };
1946
+ },
1947
+ {
1948
+ "name": "aggregator";
1949
+ "type": {
1950
+ "kind": "struct";
1951
+ "fields": [
1952
+ {
1953
+ "name": "isInitialized";
1954
+ "type": "bool";
1955
+ },
1956
+ {
1957
+ "name": "version";
1958
+ "type": "u32";
1959
+ },
1960
+ {
1961
+ "name": "config";
1962
+ "type": {
1963
+ "defined": "Config";
1964
+ };
1965
+ },
1966
+ {
1967
+ "name": "updatedAt";
1968
+ "type": "i64";
1969
+ },
1970
+ {
1971
+ "name": "owner";
1972
+ "type": "publicKey";
1973
+ },
1974
+ {
1975
+ "name": "submissions";
1976
+ "type": {
1977
+ "array": [
1978
+ {
1979
+ "defined": "Submission";
1980
+ },
1981
+ 8
1982
+ ];
1983
+ };
1984
+ },
1985
+ {
1986
+ "name": "answer";
1987
+ "type": {
1988
+ "option": "u128";
1989
+ };
1990
+ }
1991
+ ];
1992
+ };
1993
+ },
1994
+ {
1995
+ "name": "oracleInfoForCollateralType";
1996
+ "type": {
1997
+ "kind": "struct";
1998
+ "fields": [
1999
+ {
2000
+ "name": "collateralType";
2001
+ "type": "string";
2002
+ },
2003
+ {
2004
+ "name": "oraclePyth";
2005
+ "type": "publicKey";
2006
+ },
2007
+ {
2008
+ "name": "oracleChainlink";
2009
+ "type": "publicKey";
2010
+ },
2011
+ {
2012
+ "name": "oracleSwitchboard";
2013
+ "type": "publicKey";
2014
+ }
2015
+ ];
2016
+ };
2017
+ },
2018
+ {
2019
+ "name": "vaultType";
2020
+ "type": {
2021
+ "kind": "struct";
2022
+ "fields": [
2023
+ {
2024
+ "name": "collateralType";
2025
+ "type": "string";
2026
+ },
2027
+ {
2028
+ "name": "collateralMint";
2029
+ "type": "publicKey";
2030
+ },
2031
+ {
2032
+ "name": "collateralIndex";
2033
+ "type": "u64";
2034
+ },
2035
+ {
2036
+ "name": "recentPrice";
2037
+ "type": "u128";
2038
+ },
2039
+ {
2040
+ "name": "priceLastUpdatedTimestamp";
2041
+ "type": "i64";
2042
+ },
2043
+ {
2044
+ "name": "collateralHeld";
2045
+ "type": "u64";
2046
+ },
2047
+ {
2048
+ "name": "denormalizedDebtExtended";
2049
+ "type": "u64";
2050
+ },
2051
+ {
2052
+ "name": "debtRedistributionProduct";
2053
+ "type": "u128";
2054
+ },
2055
+ {
2056
+ "name": "collateralRedistributionAccumulator";
2057
+ "type": "u128";
2058
+ },
2059
+ {
2060
+ "name": "minCollateralRatio";
2061
+ "type": "u128";
2062
+ },
2063
+ {
2064
+ "name": "loanInitFee";
2065
+ "type": "u128";
2066
+ },
2067
+ {
2068
+ "name": "minDebtPerVault";
2069
+ "type": "u64";
2070
+ },
2071
+ {
2072
+ "name": "cumulativeRate";
2073
+ "type": "u128";
2074
+ },
2075
+ {
2076
+ "name": "cumulativeRateLastUpdated";
2077
+ "type": "i64";
2078
+ },
2079
+ {
2080
+ "name": "interestRatePerSecond";
2081
+ "type": "u128";
2082
+ }
2083
+ ];
2084
+ };
2085
+ }
2086
+ ];
2087
+ "types": [
2088
+ {
2089
+ "name": "Config";
2090
+ "type": {
2091
+ "kind": "struct";
2092
+ "fields": [
2093
+ {
2094
+ "name": "oracles";
2095
+ "type": {
2096
+ "vec": "publicKey";
2097
+ };
2098
+ },
2099
+ {
2100
+ "name": "minAnswerThreshold";
2101
+ "type": "u8";
2102
+ },
2103
+ {
2104
+ "name": "stalenessThreshold";
2105
+ "type": "u8";
2106
+ },
2107
+ {
2108
+ "name": "decimals";
2109
+ "type": "u8";
2110
+ }
2111
+ ];
2112
+ };
2113
+ },
2114
+ {
2115
+ "name": "Submission";
2116
+ "type": {
2117
+ "kind": "struct";
2118
+ "fields": [
2119
+ {
2120
+ "name": "timestamp";
2121
+ "type": "i64";
2122
+ },
2123
+ {
2124
+ "name": "value";
2125
+ "type": "u128";
2126
+ }
2127
+ ];
2128
+ };
2129
+ },
2130
+ {
2131
+ "name": "PositionState";
2132
+ "type": {
2133
+ "kind": "enum";
2134
+ "variants": [
2135
+ {
2136
+ "name": "Open";
2137
+ },
2138
+ {
2139
+ "name": "Closed";
2140
+ }
2141
+ ];
2142
+ };
2143
+ },
2144
+ {
2145
+ "name": "CurrencyType";
2146
+ "type": {
2147
+ "kind": "enum";
2148
+ "variants": [
2149
+ {
2150
+ "name": "Solana";
2151
+ },
2152
+ {
2153
+ "name": "Usdh";
2154
+ }
2155
+ ];
2156
+ };
2157
+ },
2158
+ {
2159
+ "name": "VaultStatus";
2160
+ "type": {
2161
+ "kind": "enum";
2162
+ "variants": [
2163
+ {
2164
+ "name": "Initialized";
2165
+ },
2166
+ {
2167
+ "name": "Open";
2168
+ },
2169
+ {
2170
+ "name": "Closed";
2171
+ },
2172
+ {
2173
+ "name": "Liquidated";
2174
+ },
2175
+ {
2176
+ "name": "Distributed";
2177
+ },
2178
+ {
2179
+ "name": "Redeemed";
2180
+ }
2181
+ ];
2182
+ };
2183
+ },
2184
+ {
2185
+ "name": "VaultHistoryAction";
2186
+ "type": {
2187
+ "kind": "enum";
2188
+ "variants": [
2189
+ {
2190
+ "name": "Create";
2191
+ },
2192
+ {
2193
+ "name": "Close";
2194
+ },
2195
+ {
2196
+ "name": "Liquidate";
2197
+ },
2198
+ {
2199
+ "name": "PartialLiquidate";
2200
+ },
2201
+ {
2202
+ "name": "Distributed";
2203
+ },
2204
+ {
2205
+ "name": "Redeem";
2206
+ },
2207
+ {
2208
+ "name": "TransferOwnership";
2209
+ },
2210
+ {
2211
+ "name": "Deposit";
2212
+ },
2213
+ {
2214
+ "name": "Withdraw";
2215
+ },
2216
+ {
2217
+ "name": "Loan";
2218
+ },
2219
+ {
2220
+ "name": "RepayCredit";
2221
+ }
2222
+ ];
2223
+ };
2224
+ },
2225
+ {
2226
+ "name": "HedgeErrors";
2227
+ "type": {
2228
+ "kind": "enum";
2229
+ "variants": [
2230
+ {
2231
+ "name": "AlreadyInitialized";
2232
+ },
2233
+ {
2234
+ "name": "CollateralRatioTooLow";
2235
+ },
2236
+ {
2237
+ "name": "NotInitialized";
2238
+ },
2239
+ {
2240
+ "name": "Overdraw";
2241
+ },
2242
+ {
2243
+ "name": "Overpaid";
2244
+ },
2245
+ {
2246
+ "name": "VaultClosed";
2247
+ },
2248
+ {
2249
+ "name": "VaultNotSubjectToLiquidation";
2250
+ },
2251
+ {
2252
+ "name": "VaultHasNoDebt";
2253
+ },
2254
+ {
2255
+ "name": "NotAuthorizedToCreateStakingPools";
2256
+ },
2257
+ {
2258
+ "name": "NotAuthorized";
2259
+ },
2260
+ {
2261
+ "name": "BadSeed";
2262
+ },
2263
+ {
2264
+ "name": "CollateralPriceOutOfDate";
2265
+ },
2266
+ {
2267
+ "name": "EmergencyMode";
2268
+ },
2269
+ {
2270
+ "name": "MinDebtRequired";
2271
+ },
2272
+ {
2273
+ "name": "PoolPositionAlreadyClosed";
2274
+ },
2275
+ {
2276
+ "name": "PoolPositionNoYetClosed";
2277
+ }
2278
+ ];
2279
+ };
2280
+ }
2281
+ ];
2282
+ };
2283
+ export declare const IDL: Vault;