@lavarage/sdk 7.5.21 → 8.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 (87) hide show
  1. package/constants.ts +6 -0
  2. package/crossbar.ts +53 -0
  3. package/dist/index.d.mts +5559 -1791
  4. package/dist/index.d.ts +5559 -1791
  5. package/dist/index.js +3502 -4975
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +3301 -4772
  8. package/dist/index.mjs.map +1 -1
  9. package/docs/functions/borrowV1.html +1 -1
  10. package/docs/functions/borrowV2.html +1 -1
  11. package/docs/functions/closePositionEvm.html +2 -2
  12. package/docs/functions/closeTradeV1.html +2 -2
  13. package/docs/functions/closeTradeV2.html +2 -2
  14. package/docs/functions/createTpDelegate.html +2 -2
  15. package/docs/functions/getActiveLoanCountEvm.html +2 -2
  16. package/docs/functions/getActiveLoansBatchEvm.html +2 -2
  17. package/docs/functions/getAllPositions.html +2 -2
  18. package/docs/functions/getAvailableExposureEvm.html +2 -2
  19. package/docs/functions/getClosedPositions.html +2 -2
  20. package/docs/functions/getClosedPositionsEvm.html +2 -2
  21. package/docs/functions/getCollateralExposureEvm.html +2 -2
  22. package/docs/functions/getCollateralInfoEvm.html +2 -2
  23. package/docs/functions/getDelegateAccounts.html +2 -2
  24. package/docs/functions/getLiquidatedPositions.html +2 -2
  25. package/docs/functions/getLiquidatedPositionsEvm.html +2 -2
  26. package/docs/functions/getLoanEvm.html +2 -2
  27. package/docs/functions/getLoansByBorrowerEvm.html +2 -2
  28. package/docs/functions/getOffers.html +2 -2
  29. package/docs/functions/getOffersEvm.html +2 -2
  30. package/docs/functions/getOpenPositions.html +2 -2
  31. package/docs/functions/getOpeningFeeEvm.html +2 -2
  32. package/docs/functions/getPda.html +2 -2
  33. package/docs/functions/getPositionAccountPDA.html +2 -2
  34. package/docs/functions/getPositionsEvm.html +2 -2
  35. package/docs/functions/getProfitFeeEvm.html +2 -2
  36. package/docs/functions/getTokenBalanceEvm.html +2 -2
  37. package/docs/functions/getUserLoansEvm.html +2 -2
  38. package/docs/functions/lending.addToWithdrawalAccessList.html +1 -1
  39. package/docs/functions/lending.createOffer.html +2 -2
  40. package/docs/functions/lending.depositFunds.html +2 -2
  41. package/docs/functions/lending.getNodeWalletPDA.html +2 -2
  42. package/docs/functions/lending.getTradingPoolPDA.html +2 -2
  43. package/docs/functions/lending.getWithdrawalAccessList.html +1 -1
  44. package/docs/functions/lending.getWithdrawalAccessListPDA.html +1 -1
  45. package/docs/functions/lending.removeFromWithdrawalAccessList.html +1 -1
  46. package/docs/functions/lending.updateInterestRate.html +2 -2
  47. package/docs/functions/lending.updateMaxBorrow.html +2 -2
  48. package/docs/functions/lending.updateMaxExposure.html +2 -2
  49. package/docs/functions/lending.updateOffer.html +2 -2
  50. package/docs/functions/lending.withdrawFunds.html +2 -2
  51. package/docs/functions/lending.withdrawFundsV1.html +2 -2
  52. package/docs/functions/lending.withdrawFundsV2.html +2 -2
  53. package/docs/functions/liquidatePositionEvm.html +2 -2
  54. package/docs/functions/mergePositionV2.html +2 -2
  55. package/docs/functions/modifyTpDelegate.html +2 -2
  56. package/docs/functions/openPositionEvm.html +2 -2
  57. package/docs/functions/openTradeV1.html +2 -2
  58. package/docs/functions/openTradeV2.html +2 -2
  59. package/docs/functions/partialRepayV1.html +2 -2
  60. package/docs/functions/partialRepayV2.html +2 -2
  61. package/docs/functions/removeTpDelegate.html +2 -2
  62. package/docs/functions/splitPositionV2.html +2 -2
  63. package/docs/functions/updateMaxLendPerTokenBatchEvm.html +2 -2
  64. package/docs/hierarchy.html +1 -1
  65. package/docs/index.html +2 -2
  66. package/docs/modules/IDLV2.html +2 -2
  67. package/docs/modules/lending.html +1 -1
  68. package/docs/modules.html +2 -2
  69. package/docs/types/IDLV2.Lavarage.html +2 -2
  70. package/docs/types/Lavarage.html +2 -2
  71. package/docs/variables/IDL.html +1 -1
  72. package/docs/variables/IDLV2.IDL.html +1 -1
  73. package/idl/lavarageSOL.json +1852 -0
  74. package/idl/lavarageSOL.ts +1858 -0
  75. package/idl/lavarageUSDC.json +5377 -0
  76. package/idl/lavarageUSDC.ts +5383 -0
  77. package/idl/userVault.json +244 -0
  78. package/idl/userVault.ts +250 -0
  79. package/index.ts +81 -42
  80. package/lending.ts +225 -86
  81. package/package.json +6 -4
  82. package/switchboard.ts +23 -0
  83. package/tsconfig.json +2 -1
  84. package/utils.ts +54 -0
  85. package/idl/lavarage.ts +0 -3465
  86. package/idl/lavaragev2.ts +0 -3791
  87. package/idl/referralVault.ts +0 -276
package/idl/lavarage.ts DELETED
@@ -1,3465 +0,0 @@
1
- export type Lavarage = {
2
- "version": "0.1.0",
3
- "name": "lavarage",
4
- "instructions": [
5
- {
6
- "name": "lpOperatorCreateTradingPool",
7
- "accounts": [
8
- {
9
- "name": "tradingPool",
10
- "isMut": true,
11
- "isSigner": false
12
- },
13
- {
14
- "name": "operator",
15
- "isMut": true,
16
- "isSigner": true
17
- },
18
- {
19
- "name": "nodeWallet",
20
- "isMut": false,
21
- "isSigner": false
22
- },
23
- {
24
- "name": "mint",
25
- "isMut": false,
26
- "isSigner": false
27
- },
28
- {
29
- "name": "systemProgram",
30
- "isMut": false,
31
- "isSigner": false
32
- }
33
- ],
34
- "args": [
35
- {
36
- "name": "interestRate",
37
- "type": "u8"
38
- }
39
- ]
40
- },
41
- {
42
- "name": "lpOperatorCreateNodeWallet",
43
- "accounts": [
44
- {
45
- "name": "nodeWallet",
46
- "isMut": true,
47
- "isSigner": false
48
- },
49
- {
50
- "name": "operator",
51
- "isMut": true,
52
- "isSigner": true
53
- },
54
- {
55
- "name": "systemProgram",
56
- "isMut": false,
57
- "isSigner": false
58
- }
59
- ],
60
- "args": []
61
- },
62
- {
63
- "name": "lpOperatorFundNodeWallet",
64
- "accounts": [
65
- {
66
- "name": "nodeWallet",
67
- "isMut": true,
68
- "isSigner": false
69
- },
70
- {
71
- "name": "funder",
72
- "isMut": true,
73
- "isSigner": true
74
- },
75
- {
76
- "name": "systemProgram",
77
- "isMut": false,
78
- "isSigner": false
79
- }
80
- ],
81
- "args": [
82
- {
83
- "name": "amount",
84
- "type": "u64"
85
- }
86
- ]
87
- },
88
- {
89
- "name": "lpOperatorWithdrawFromNodeWallet",
90
- "accounts": [
91
- {
92
- "name": "nodeWallet",
93
- "isMut": true,
94
- "isSigner": false
95
- },
96
- {
97
- "name": "funder",
98
- "isMut": true,
99
- "isSigner": true
100
- },
101
- {
102
- "name": "systemProgram",
103
- "isMut": false,
104
- "isSigner": false
105
- },
106
- {
107
- "name": "withdrawalAccessList",
108
- "isMut": false,
109
- "isSigner": false
110
- }
111
- ],
112
- "args": [
113
- {
114
- "name": "amount",
115
- "type": "u64"
116
- }
117
- ]
118
- },
119
- {
120
- "name": "lpOperatorUpdateMaxBorrow",
121
- "accounts": [
122
- {
123
- "name": "tradingPool",
124
- "isMut": true,
125
- "isSigner": false
126
- },
127
- {
128
- "name": "nodeWallet",
129
- "isMut": false,
130
- "isSigner": false
131
- },
132
- {
133
- "name": "operator",
134
- "isMut": true,
135
- "isSigner": true
136
- },
137
- {
138
- "name": "systemProgram",
139
- "isMut": false,
140
- "isSigner": false
141
- }
142
- ],
143
- "args": [
144
- {
145
- "name": "amount",
146
- "type": "u64"
147
- }
148
- ]
149
- },
150
- {
151
- "name": "lpOperatorUpdateMaxExposure",
152
- "accounts": [
153
- {
154
- "name": "tradingPool",
155
- "isMut": true,
156
- "isSigner": false
157
- },
158
- {
159
- "name": "nodeWallet",
160
- "isMut": false,
161
- "isSigner": false
162
- },
163
- {
164
- "name": "operator",
165
- "isMut": true,
166
- "isSigner": true
167
- },
168
- {
169
- "name": "systemProgram",
170
- "isMut": false,
171
- "isSigner": false
172
- }
173
- ],
174
- "args": [
175
- {
176
- "name": "amount",
177
- "type": "u64"
178
- }
179
- ]
180
- },
181
- {
182
- "name": "lpOperatorUpdateInterestRate",
183
- "accounts": [
184
- {
185
- "name": "tradingPool",
186
- "isMut": true,
187
- "isSigner": false
188
- },
189
- {
190
- "name": "nodeWallet",
191
- "isMut": false,
192
- "isSigner": false
193
- },
194
- {
195
- "name": "operator",
196
- "isMut": true,
197
- "isSigner": true
198
- },
199
- {
200
- "name": "systemProgram",
201
- "isMut": false,
202
- "isSigner": false
203
- }
204
- ],
205
- "args": [
206
- {
207
- "name": "amount",
208
- "type": "u8"
209
- }
210
- ]
211
- },
212
- {
213
- "name": "lpLiquidate",
214
- "accounts": [
215
- {
216
- "name": "mint",
217
- "isMut": false,
218
- "isSigner": false
219
- },
220
- {
221
- "name": "positionAccount",
222
- "isMut": true,
223
- "isSigner": false
224
- },
225
- {
226
- "name": "trader",
227
- "isMut": true,
228
- "isSigner": false
229
- },
230
- {
231
- "name": "tradingPool",
232
- "isMut": true,
233
- "isSigner": false
234
- },
235
- {
236
- "name": "fromTokenAccount",
237
- "isMut": true,
238
- "isSigner": false
239
- },
240
- {
241
- "name": "toTokenAccount",
242
- "isMut": true,
243
- "isSigner": false
244
- },
245
- {
246
- "name": "nodeWallet",
247
- "isMut": true,
248
- "isSigner": false
249
- },
250
- {
251
- "name": "tokenProgram",
252
- "isMut": false,
253
- "isSigner": false
254
- },
255
- {
256
- "name": "randomAccountAsId",
257
- "isMut": false,
258
- "isSigner": false
259
- },
260
- {
261
- "name": "clock",
262
- "isMut": false,
263
- "isSigner": false
264
- },
265
- {
266
- "name": "operator",
267
- "isMut": false,
268
- "isSigner": true
269
- },
270
- {
271
- "name": "oracle",
272
- "isMut": false,
273
- "isSigner": true
274
- }
275
- ],
276
- "args": [
277
- {
278
- "name": "positionSize",
279
- "type": "u64"
280
- }
281
- ]
282
- },
283
- {
284
- "name": "lpCollectInterest",
285
- "accounts": [
286
- {
287
- "name": "mint",
288
- "isMut": false,
289
- "isSigner": false
290
- },
291
- {
292
- "name": "positionAccount",
293
- "isMut": true,
294
- "isSigner": false
295
- },
296
- {
297
- "name": "trader",
298
- "isMut": true,
299
- "isSigner": false
300
- },
301
- {
302
- "name": "tradingPool",
303
- "isMut": true,
304
- "isSigner": false
305
- },
306
- {
307
- "name": "fromTokenAccount",
308
- "isMut": true,
309
- "isSigner": false
310
- },
311
- {
312
- "name": "toTokenAccount",
313
- "isMut": true,
314
- "isSigner": false
315
- },
316
- {
317
- "name": "nodeWallet",
318
- "isMut": true,
319
- "isSigner": false
320
- },
321
- {
322
- "name": "tokenProgram",
323
- "isMut": false,
324
- "isSigner": false
325
- },
326
- {
327
- "name": "randomAccountAsId",
328
- "isMut": false,
329
- "isSigner": false
330
- },
331
- {
332
- "name": "clock",
333
- "isMut": false,
334
- "isSigner": false
335
- },
336
- {
337
- "name": "operator",
338
- "isMut": false,
339
- "isSigner": true
340
- },
341
- {
342
- "name": "oracle",
343
- "isMut": false,
344
- "isSigner": true
345
- }
346
- ],
347
- "args": [
348
- {
349
- "name": "price",
350
- "type": "u128"
351
- }
352
- ]
353
- },
354
- {
355
- "name": "tradingOpenBorrow",
356
- "accounts": [
357
- {
358
- "name": "positionAccount",
359
- "isMut": true,
360
- "isSigner": false
361
- },
362
- {
363
- "name": "trader",
364
- "isMut": true,
365
- "isSigner": true
366
- },
367
- {
368
- "name": "tradingPool",
369
- "isMut": true,
370
- "isSigner": false
371
- },
372
- {
373
- "name": "nodeWallet",
374
- "isMut": true,
375
- "isSigner": false
376
- },
377
- {
378
- "name": "instructions",
379
- "isMut": false,
380
- "isSigner": false
381
- },
382
- {
383
- "name": "systemProgram",
384
- "isMut": false,
385
- "isSigner": false
386
- },
387
- {
388
- "name": "clock",
389
- "isMut": false,
390
- "isSigner": false
391
- },
392
- {
393
- "name": "randomAccountAsId",
394
- "isMut": false,
395
- "isSigner": false
396
- },
397
- {
398
- "name": "feeReceipient",
399
- "isMut": true,
400
- "isSigner": false
401
- },
402
- {
403
- "name": "positionTokenAccount",
404
- "isMut": true,
405
- "isSigner": false
406
- },
407
- {
408
- "name": "collateralTokenProgram",
409
- "isMut": false,
410
- "isSigner": false
411
- },
412
- {
413
- "name": "associatedTokenProgram",
414
- "isMut": false,
415
- "isSigner": false
416
- },
417
- {
418
- "name": "collateralMint",
419
- "isMut": false,
420
- "isSigner": false
421
- },
422
- {
423
- "name": "usersTokenAccount",
424
- "isMut": true,
425
- "isSigner": false
426
- }
427
- ],
428
- "args": [
429
- {
430
- "name": "positionSize",
431
- "type": "u64"
432
- },
433
- {
434
- "name": "userPays",
435
- "type": "u64"
436
- }
437
- ]
438
- },
439
- {
440
- "name": "tradingOpenBorrowWithReferral",
441
- "accounts": [
442
- {
443
- "name": "positionAccount",
444
- "isMut": true,
445
- "isSigner": false
446
- },
447
- {
448
- "name": "trader",
449
- "isMut": true,
450
- "isSigner": true
451
- },
452
- {
453
- "name": "tradingPool",
454
- "isMut": true,
455
- "isSigner": false
456
- },
457
- {
458
- "name": "nodeWallet",
459
- "isMut": true,
460
- "isSigner": false
461
- },
462
- {
463
- "name": "instructions",
464
- "isMut": false,
465
- "isSigner": false
466
- },
467
- {
468
- "name": "systemProgram",
469
- "isMut": false,
470
- "isSigner": false
471
- },
472
- {
473
- "name": "clock",
474
- "isMut": false,
475
- "isSigner": false
476
- },
477
- {
478
- "name": "randomAccountAsId",
479
- "isMut": false,
480
- "isSigner": false
481
- },
482
- {
483
- "name": "feeReceipient",
484
- "isMut": true,
485
- "isSigner": false
486
- },
487
- {
488
- "name": "positionTokenAccount",
489
- "isMut": true,
490
- "isSigner": false
491
- },
492
- {
493
- "name": "collateralTokenProgram",
494
- "isMut": false,
495
- "isSigner": false
496
- },
497
- {
498
- "name": "associatedTokenProgram",
499
- "isMut": false,
500
- "isSigner": false
501
- },
502
- {
503
- "name": "collateralMint",
504
- "isMut": false,
505
- "isSigner": false
506
- },
507
- {
508
- "name": "usersTokenAccount",
509
- "isMut": true,
510
- "isSigner": false
511
- }
512
- ],
513
- "args": [
514
- {
515
- "name": "positionSize",
516
- "type": "u64"
517
- },
518
- {
519
- "name": "userPays",
520
- "type": "u64"
521
- },
522
- {
523
- "name": "discountBps",
524
- "type": "u64"
525
- },
526
- {
527
- "name": "referralBps",
528
- "type": "u64"
529
- }
530
- ]
531
- },
532
- {
533
- "name": "tradingOpenAddCollateral",
534
- "accounts": [
535
- {
536
- "name": "positionAccount",
537
- "isMut": true,
538
- "isSigner": false
539
- },
540
- {
541
- "name": "trader",
542
- "isMut": true,
543
- "isSigner": true
544
- },
545
- {
546
- "name": "tradingPool",
547
- "isMut": true,
548
- "isSigner": false
549
- },
550
- {
551
- "name": "systemProgram",
552
- "isMut": false,
553
- "isSigner": false
554
- },
555
- {
556
- "name": "mint",
557
- "isMut": false,
558
- "isSigner": false
559
- },
560
- {
561
- "name": "toTokenAccount",
562
- "isMut": true,
563
- "isSigner": false
564
- },
565
- {
566
- "name": "randomAccountAsId",
567
- "isMut": false,
568
- "isSigner": false
569
- },
570
- {
571
- "name": "tokenProgram",
572
- "isMut": false,
573
- "isSigner": false
574
- },
575
- {
576
- "name": "associatedTokenProgram",
577
- "isMut": false,
578
- "isSigner": false
579
- }
580
- ],
581
- "args": [
582
- {
583
- "name": "maxInterestRate",
584
- "type": "u8"
585
- }
586
- ]
587
- },
588
- {
589
- "name": "tradingCloseBorrowCollateral",
590
- "accounts": [
591
- {
592
- "name": "positionAccount",
593
- "isMut": true,
594
- "isSigner": false
595
- },
596
- {
597
- "name": "trader",
598
- "isMut": true,
599
- "isSigner": true
600
- },
601
- {
602
- "name": "tradingPool",
603
- "isMut": true,
604
- "isSigner": false
605
- },
606
- {
607
- "name": "instructions",
608
- "isMut": false,
609
- "isSigner": false
610
- },
611
- {
612
- "name": "systemProgram",
613
- "isMut": false,
614
- "isSigner": false
615
- },
616
- {
617
- "name": "mint",
618
- "isMut": false,
619
- "isSigner": false
620
- },
621
- {
622
- "name": "fromTokenAccount",
623
- "isMut": true,
624
- "isSigner": false
625
- },
626
- {
627
- "name": "toTokenAccount",
628
- "isMut": true,
629
- "isSigner": false
630
- },
631
- {
632
- "name": "tokenProgram",
633
- "isMut": false,
634
- "isSigner": false
635
- },
636
- {
637
- "name": "clock",
638
- "isMut": false,
639
- "isSigner": false
640
- },
641
- {
642
- "name": "randomAccountAsId",
643
- "isMut": false,
644
- "isSigner": false
645
- },
646
- {
647
- "name": "associatedTokenProgram",
648
- "isMut": false,
649
- "isSigner": false
650
- }
651
- ],
652
- "args": []
653
- },
654
- {
655
- "name": "tradingDataAccruedInterest",
656
- "accounts": [
657
- {
658
- "name": "positionAccount",
659
- "isMut": true,
660
- "isSigner": false
661
- },
662
- {
663
- "name": "trader",
664
- "isMut": true,
665
- "isSigner": true
666
- },
667
- {
668
- "name": "tradingPool",
669
- "isMut": true,
670
- "isSigner": false
671
- },
672
- {
673
- "name": "nodeWallet",
674
- "isMut": true,
675
- "isSigner": false
676
- },
677
- {
678
- "name": "systemProgram",
679
- "isMut": false,
680
- "isSigner": false
681
- },
682
- {
683
- "name": "clock",
684
- "isMut": false,
685
- "isSigner": false
686
- },
687
- {
688
- "name": "randomAccountAsId",
689
- "isMut": false,
690
- "isSigner": false
691
- },
692
- {
693
- "name": "feeReceipient",
694
- "isMut": true,
695
- "isSigner": false
696
- }
697
- ],
698
- "args": [],
699
- "returns": "u64"
700
- },
701
- {
702
- "name": "tradingCloseRepaySol",
703
- "accounts": [
704
- {
705
- "name": "positionAccount",
706
- "isMut": true,
707
- "isSigner": false
708
- },
709
- {
710
- "name": "trader",
711
- "isMut": true,
712
- "isSigner": true
713
- },
714
- {
715
- "name": "tradingPool",
716
- "isMut": true,
717
- "isSigner": false
718
- },
719
- {
720
- "name": "nodeWallet",
721
- "isMut": true,
722
- "isSigner": false
723
- },
724
- {
725
- "name": "systemProgram",
726
- "isMut": false,
727
- "isSigner": false
728
- },
729
- {
730
- "name": "clock",
731
- "isMut": false,
732
- "isSigner": false
733
- },
734
- {
735
- "name": "randomAccountAsId",
736
- "isMut": false,
737
- "isSigner": false
738
- },
739
- {
740
- "name": "feeReceipient",
741
- "isMut": true,
742
- "isSigner": false
743
- }
744
- ],
745
- "args": [
746
- {
747
- "name": "closingPositionSize",
748
- "type": "u64"
749
- },
750
- {
751
- "name": "closeType",
752
- "type": "u64"
753
- }
754
- ]
755
- },
756
- {
757
- "name": "tradingCloseRepaySolWithReferral",
758
- "accounts": [
759
- {
760
- "name": "positionAccount",
761
- "isMut": true,
762
- "isSigner": false
763
- },
764
- {
765
- "name": "trader",
766
- "isMut": true,
767
- "isSigner": true
768
- },
769
- {
770
- "name": "tradingPool",
771
- "isMut": true,
772
- "isSigner": false
773
- },
774
- {
775
- "name": "nodeWallet",
776
- "isMut": true,
777
- "isSigner": false
778
- },
779
- {
780
- "name": "systemProgram",
781
- "isMut": false,
782
- "isSigner": false
783
- },
784
- {
785
- "name": "clock",
786
- "isMut": false,
787
- "isSigner": false
788
- },
789
- {
790
- "name": "randomAccountAsId",
791
- "isMut": false,
792
- "isSigner": false
793
- },
794
- {
795
- "name": "feeReceipient",
796
- "isMut": true,
797
- "isSigner": false
798
- }
799
- ],
800
- "args": [
801
- {
802
- "name": "closingPositionSize",
803
- "type": "u64"
804
- },
805
- {
806
- "name": "closeType",
807
- "type": "u64"
808
- },
809
- {
810
- "name": "discountBps",
811
- "type": "u64"
812
- },
813
- {
814
- "name": "referralBps",
815
- "type": "u64"
816
- }
817
- ]
818
- },
819
- {
820
- "name": "tradingClosePartialRepaySol",
821
- "accounts": [
822
- {
823
- "name": "positionAccount",
824
- "isMut": true,
825
- "isSigner": false
826
- },
827
- {
828
- "name": "trader",
829
- "isMut": true,
830
- "isSigner": true
831
- },
832
- {
833
- "name": "tradingPool",
834
- "isMut": true,
835
- "isSigner": false
836
- },
837
- {
838
- "name": "nodeWallet",
839
- "isMut": true,
840
- "isSigner": false
841
- },
842
- {
843
- "name": "systemProgram",
844
- "isMut": false,
845
- "isSigner": false
846
- },
847
- {
848
- "name": "clock",
849
- "isMut": false,
850
- "isSigner": false
851
- },
852
- {
853
- "name": "randomAccountAsId",
854
- "isMut": false,
855
- "isSigner": false
856
- },
857
- {
858
- "name": "feeReceipient",
859
- "isMut": true,
860
- "isSigner": false
861
- }
862
- ],
863
- "args": [
864
- {
865
- "name": "repayPercentage",
866
- "type": "u64"
867
- }
868
- ]
869
- },
870
- {
871
- "name": "tradingClosePositionAccount",
872
- "accounts": [
873
- {
874
- "name": "positionAccount",
875
- "isMut": true,
876
- "isSigner": false
877
- },
878
- {
879
- "name": "admin",
880
- "isMut": false,
881
- "isSigner": true
882
- },
883
- {
884
- "name": "feeReceipient",
885
- "isMut": true,
886
- "isSigner": false
887
- },
888
- {
889
- "name": "systemProgram",
890
- "isMut": false,
891
- "isSigner": false
892
- }
893
- ],
894
- "args": []
895
- },
896
- {
897
- "name": "tradingClosePoolAccount",
898
- "accounts": [
899
- {
900
- "name": "poolAccount",
901
- "isMut": true,
902
- "isSigner": false
903
- },
904
- {
905
- "name": "operator",
906
- "isMut": false,
907
- "isSigner": true
908
- },
909
- {
910
- "name": "admin",
911
- "isMut": false,
912
- "isSigner": true
913
- },
914
- {
915
- "name": "feeReceipient",
916
- "isMut": true,
917
- "isSigner": false
918
- },
919
- {
920
- "name": "systemProgram",
921
- "isMut": false,
922
- "isSigner": false
923
- }
924
- ],
925
- "args": []
926
- },
927
- {
928
- "name": "syncNodeWallet",
929
- "accounts": [
930
- {
931
- "name": "nodeWallet",
932
- "isMut": true,
933
- "isSigner": false
934
- },
935
- {
936
- "name": "funder",
937
- "isMut": true,
938
- "isSigner": true
939
- },
940
- {
941
- "name": "systemProgram",
942
- "isMut": false,
943
- "isSigner": false
944
- }
945
- ],
946
- "args": []
947
- },
948
- {
949
- "name": "tradingCreateTpDelegate",
950
- "accounts": [
951
- {
952
- "name": "delegate",
953
- "isMut": true,
954
- "isSigner": false
955
- },
956
- {
957
- "name": "originalOperator",
958
- "isMut": true,
959
- "isSigner": true
960
- },
961
- {
962
- "name": "delegatedAccount",
963
- "isMut": false,
964
- "isSigner": false
965
- },
966
- {
967
- "name": "systemProgram",
968
- "isMut": false,
969
- "isSigner": false
970
- }
971
- ],
972
- "args": [
973
- {
974
- "name": "price",
975
- "type": "u64"
976
- },
977
- {
978
- "name": "lowerThreshold",
979
- "type": "u64"
980
- },
981
- {
982
- "name": "delegateOperator",
983
- "type": "publicKey"
984
- },
985
- {
986
- "name": "partialPercentage",
987
- "type": "u64"
988
- }
989
- ]
990
- },
991
- {
992
- "name": "tradingRemoveTpDelegate",
993
- "accounts": [
994
- {
995
- "name": "delegate",
996
- "isMut": true,
997
- "isSigner": false
998
- },
999
- {
1000
- "name": "originalOperator",
1001
- "isMut": true,
1002
- "isSigner": true
1003
- },
1004
- {
1005
- "name": "delegatedAccount",
1006
- "isMut": false,
1007
- "isSigner": false
1008
- },
1009
- {
1010
- "name": "systemProgram",
1011
- "isMut": false,
1012
- "isSigner": false
1013
- }
1014
- ],
1015
- "args": []
1016
- },
1017
- {
1018
- "name": "delegateExecuteTp",
1019
- "accounts": [
1020
- {
1021
- "name": "delegate",
1022
- "isMut": true,
1023
- "isSigner": false
1024
- },
1025
- {
1026
- "name": "delegateOperator",
1027
- "isMut": false,
1028
- "isSigner": true
1029
- },
1030
- {
1031
- "name": "account",
1032
- "isMut": true,
1033
- "isSigner": false
1034
- },
1035
- {
1036
- "name": "tradingPool",
1037
- "isMut": true,
1038
- "isSigner": false
1039
- },
1040
- {
1041
- "name": "tokenProgram",
1042
- "isMut": false,
1043
- "isSigner": false
1044
- },
1045
- {
1046
- "name": "positionTokenAccount",
1047
- "isMut": true,
1048
- "isSigner": false
1049
- },
1050
- {
1051
- "name": "delegateTokenAccount",
1052
- "isMut": true,
1053
- "isSigner": false
1054
- },
1055
- {
1056
- "name": "systemProgram",
1057
- "isMut": false,
1058
- "isSigner": false
1059
- },
1060
- {
1061
- "name": "mint",
1062
- "isMut": false,
1063
- "isSigner": false
1064
- }
1065
- ],
1066
- "args": [
1067
- {
1068
- "name": "seed",
1069
- "type": "publicKey"
1070
- }
1071
- ]
1072
- },
1073
- {
1074
- "name": "delegateClosePosition",
1075
- "accounts": [
1076
- {
1077
- "name": "delegate",
1078
- "isMut": true,
1079
- "isSigner": false
1080
- },
1081
- {
1082
- "name": "delegateOperator",
1083
- "isMut": false,
1084
- "isSigner": true
1085
- },
1086
- {
1087
- "name": "account",
1088
- "isMut": true,
1089
- "isSigner": false
1090
- },
1091
- {
1092
- "name": "tradingPool",
1093
- "isMut": true,
1094
- "isSigner": false
1095
- },
1096
- {
1097
- "name": "nodeWallet",
1098
- "isMut": true,
1099
- "isSigner": false
1100
- },
1101
- {
1102
- "name": "tokenProgram",
1103
- "isMut": false,
1104
- "isSigner": false
1105
- },
1106
- {
1107
- "name": "nodeWalletTokenAccount",
1108
- "isMut": true,
1109
- "isSigner": false
1110
- },
1111
- {
1112
- "name": "delegateTokenAccount",
1113
- "isMut": true,
1114
- "isSigner": false
1115
- },
1116
- {
1117
- "name": "feeTokenAccount",
1118
- "isMut": true,
1119
- "isSigner": false
1120
- },
1121
- {
1122
- "name": "profitTokenAccount",
1123
- "isMut": true,
1124
- "isSigner": false
1125
- },
1126
- {
1127
- "name": "systemProgram",
1128
- "isMut": false,
1129
- "isSigner": false
1130
- },
1131
- {
1132
- "name": "qtMint",
1133
- "isMut": false,
1134
- "isSigner": false
1135
- }
1136
- ],
1137
- "args": [
1138
- {
1139
- "name": "closingPositionSize",
1140
- "type": "u64"
1141
- }
1142
- ]
1143
- },
1144
- {
1145
- "name": "tradingManagementSplitPosition",
1146
- "accounts": [
1147
- {
1148
- "name": "originalPosition",
1149
- "isMut": true,
1150
- "isSigner": false
1151
- },
1152
- {
1153
- "name": "newPositionOne",
1154
- "isMut": true,
1155
- "isSigner": false
1156
- },
1157
- {
1158
- "name": "newPositionTwo",
1159
- "isMut": true,
1160
- "isSigner": false
1161
- },
1162
- {
1163
- "name": "mint",
1164
- "isMut": false,
1165
- "isSigner": false
1166
- },
1167
- {
1168
- "name": "originalPositionTokenAccount",
1169
- "isMut": true,
1170
- "isSigner": false
1171
- },
1172
- {
1173
- "name": "newPositionTokenAccountOne",
1174
- "isMut": true,
1175
- "isSigner": false
1176
- },
1177
- {
1178
- "name": "newPositionTokenAccountTwo",
1179
- "isMut": true,
1180
- "isSigner": false
1181
- },
1182
- {
1183
- "name": "trader",
1184
- "isMut": true,
1185
- "isSigner": true
1186
- },
1187
- {
1188
- "name": "tokenProgram",
1189
- "isMut": false,
1190
- "isSigner": false
1191
- },
1192
- {
1193
- "name": "systemProgram",
1194
- "isMut": false,
1195
- "isSigner": false
1196
- }
1197
- ],
1198
- "args": [
1199
- {
1200
- "name": "splitRatioBps",
1201
- "type": "u64"
1202
- },
1203
- {
1204
- "name": "seed1",
1205
- "type": "publicKey"
1206
- },
1207
- {
1208
- "name": "seed2",
1209
- "type": "publicKey"
1210
- }
1211
- ]
1212
- },
1213
- {
1214
- "name": "initWithdrawalAccessList",
1215
- "accounts": [
1216
- {
1217
- "name": "withdrawalAccessList",
1218
- "isMut": true,
1219
- "isSigner": false
1220
- },
1221
- {
1222
- "name": "authority",
1223
- "isMut": true,
1224
- "isSigner": true
1225
- },
1226
- {
1227
- "name": "systemProgram",
1228
- "isMut": false,
1229
- "isSigner": false
1230
- }
1231
- ],
1232
- "args": []
1233
- },
1234
- {
1235
- "name": "addWithdrawalAccess",
1236
- "accounts": [
1237
- {
1238
- "name": "withdrawalAccessList",
1239
- "isMut": true,
1240
- "isSigner": false
1241
- },
1242
- {
1243
- "name": "nodeWallet",
1244
- "isMut": false,
1245
- "isSigner": false
1246
- },
1247
- {
1248
- "name": "authority",
1249
- "isMut": false,
1250
- "isSigner": true
1251
- }
1252
- ],
1253
- "args": [
1254
- {
1255
- "name": "toPubkey",
1256
- "type": "publicKey"
1257
- }
1258
- ]
1259
- },
1260
- {
1261
- "name": "removeWithdrawalAccess",
1262
- "accounts": [
1263
- {
1264
- "name": "withdrawalAccessList",
1265
- "isMut": true,
1266
- "isSigner": false
1267
- },
1268
- {
1269
- "name": "authority",
1270
- "isMut": false,
1271
- "isSigner": true
1272
- }
1273
- ],
1274
- "args": [
1275
- {
1276
- "name": "fromPubkey",
1277
- "type": "string"
1278
- }
1279
- ]
1280
- }
1281
- ],
1282
- "accounts": [
1283
- {
1284
- "name": "delegate",
1285
- "type": {
1286
- "kind": "struct",
1287
- "fields": [
1288
- {
1289
- "name": "delegateType",
1290
- "type": "u8"
1291
- },
1292
- {
1293
- "name": "field1",
1294
- "type": "u64"
1295
- },
1296
- {
1297
- "name": "field2",
1298
- "type": "u64"
1299
- },
1300
- {
1301
- "name": "field3",
1302
- "type": "u64"
1303
- },
1304
- {
1305
- "name": "field4",
1306
- "type": "publicKey"
1307
- },
1308
- {
1309
- "name": "field5",
1310
- "type": "publicKey"
1311
- },
1312
- {
1313
- "name": "originalOperator",
1314
- "type": "publicKey"
1315
- },
1316
- {
1317
- "name": "delegateOperator",
1318
- "type": "publicKey"
1319
- },
1320
- {
1321
- "name": "account",
1322
- "type": "publicKey"
1323
- }
1324
- ]
1325
- }
1326
- },
1327
- {
1328
- "name": "nodeWallet",
1329
- "type": {
1330
- "kind": "struct",
1331
- "fields": [
1332
- {
1333
- "name": "totalFunds",
1334
- "type": "u64"
1335
- },
1336
- {
1337
- "name": "totalBorrowed",
1338
- "type": "u64"
1339
- },
1340
- {
1341
- "name": "maintenanceLtv",
1342
- "type": "u8"
1343
- },
1344
- {
1345
- "name": "liquidationLtv",
1346
- "type": "u8"
1347
- },
1348
- {
1349
- "name": "nodeOperator",
1350
- "type": "publicKey"
1351
- }
1352
- ]
1353
- }
1354
- },
1355
- {
1356
- "name": "pool",
1357
- "type": {
1358
- "kind": "struct",
1359
- "fields": [
1360
- {
1361
- "name": "interestRate",
1362
- "type": "u8"
1363
- },
1364
- {
1365
- "name": "collateralType",
1366
- "type": "publicKey"
1367
- },
1368
- {
1369
- "name": "maxBorrow",
1370
- "type": "u64"
1371
- },
1372
- {
1373
- "name": "nodeWallet",
1374
- "type": "publicKey"
1375
- },
1376
- {
1377
- "name": "maxExposure",
1378
- "type": "u64"
1379
- },
1380
- {
1381
- "name": "currentExposure",
1382
- "type": "u64"
1383
- }
1384
- ]
1385
- }
1386
- },
1387
- {
1388
- "name": "position",
1389
- "type": {
1390
- "kind": "struct",
1391
- "fields": [
1392
- {
1393
- "name": "pool",
1394
- "type": "publicKey"
1395
- },
1396
- {
1397
- "name": "closeStatusRecallTimestamp",
1398
- "type": "u64"
1399
- },
1400
- {
1401
- "name": "amount",
1402
- "type": "u64"
1403
- },
1404
- {
1405
- "name": "userPaid",
1406
- "type": "u64"
1407
- },
1408
- {
1409
- "name": "collateralAmount",
1410
- "type": "u64"
1411
- },
1412
- {
1413
- "name": "timestamp",
1414
- "type": "i64"
1415
- },
1416
- {
1417
- "name": "trader",
1418
- "type": "publicKey"
1419
- },
1420
- {
1421
- "name": "seed",
1422
- "type": "publicKey"
1423
- },
1424
- {
1425
- "name": "closeTimestamp",
1426
- "type": "i64"
1427
- },
1428
- {
1429
- "name": "closingPositionSize",
1430
- "type": "u64"
1431
- },
1432
- {
1433
- "name": "interestRate",
1434
- "type": "u8"
1435
- },
1436
- {
1437
- "name": "lastInterestCollect",
1438
- "type": "i64"
1439
- }
1440
- ]
1441
- }
1442
- },
1443
- {
1444
- "name": "withdrawalAccessList",
1445
- "type": {
1446
- "kind": "struct",
1447
- "fields": [
1448
- {
1449
- "name": "authority",
1450
- "type": "publicKey"
1451
- },
1452
- {
1453
- "name": "accessEntries",
1454
- "type": {
1455
- "vec": {
1456
- "defined": "WithdrawalAccessEntry"
1457
- }
1458
- }
1459
- }
1460
- ]
1461
- }
1462
- }
1463
- ],
1464
- "types": [
1465
- {
1466
- "name": "WithdrawalAccessEntry",
1467
- "type": {
1468
- "kind": "struct",
1469
- "fields": [
1470
- {
1471
- "name": "fromPubkey",
1472
- "type": "string"
1473
- },
1474
- {
1475
- "name": "toPubkey",
1476
- "type": "publicKey"
1477
- }
1478
- ]
1479
- }
1480
- },
1481
- {
1482
- "name": "LendingErrors",
1483
- "docs": [
1484
- "Errors for this program"
1485
- ],
1486
- "type": {
1487
- "kind": "enum",
1488
- "variants": [
1489
- {
1490
- "name": "AddressMismatch"
1491
- },
1492
- {
1493
- "name": "ProgramMismatch"
1494
- },
1495
- {
1496
- "name": "MissingRepay"
1497
- },
1498
- {
1499
- "name": "IncorrectOwner"
1500
- },
1501
- {
1502
- "name": "IncorrectProgramAuthority"
1503
- },
1504
- {
1505
- "name": "CannotBorrowBeforeRepay"
1506
- },
1507
- {
1508
- "name": "UnknownInstruction"
1509
- },
1510
- {
1511
- "name": "ExpectedCollateralNotEnough"
1512
- },
1513
- {
1514
- "name": "AccessEntryAlreadyExists"
1515
- },
1516
- {
1517
- "name": "AccessEntryNotFound"
1518
- },
1519
- {
1520
- "name": "UnauthorizedWithdrawal"
1521
- },
1522
- {
1523
- "name": "AccountAlreadyInitialized"
1524
- }
1525
- ]
1526
- }
1527
- },
1528
- {
1529
- "name": "ErrorCode",
1530
- "type": {
1531
- "kind": "enum",
1532
- "variants": [
1533
- {
1534
- "name": "InvalidSignature"
1535
- },
1536
- {
1537
- "name": "InvalidOracle"
1538
- }
1539
- ]
1540
- }
1541
- },
1542
- {
1543
- "name": "ErrorCode",
1544
- "type": {
1545
- "kind": "enum",
1546
- "variants": [
1547
- {
1548
- "name": "InvalidSplitRatio"
1549
- },
1550
- {
1551
- "name": "PositionsNotMergeable"
1552
- }
1553
- ]
1554
- }
1555
- },
1556
- {
1557
- "name": "ErrorCode",
1558
- "type": {
1559
- "kind": "enum",
1560
- "variants": [
1561
- {
1562
- "name": "OnlyDelegateOperator"
1563
- },
1564
- {
1565
- "name": "AddressMismatch"
1566
- },
1567
- {
1568
- "name": "InvalidDelegateType"
1569
- }
1570
- ]
1571
- }
1572
- },
1573
- {
1574
- "name": "PositionCloseType",
1575
- "type": {
1576
- "kind": "enum",
1577
- "variants": [
1578
- {
1579
- "name": "ClosedByUser"
1580
- },
1581
- {
1582
- "name": "Liquidated"
1583
- }
1584
- ]
1585
- }
1586
- }
1587
- ],
1588
- "events": [
1589
- {
1590
- "name": "PositionCloseEvent",
1591
- "fields": [
1592
- {
1593
- "name": "pool",
1594
- "type": "publicKey",
1595
- "index": false
1596
- },
1597
- {
1598
- "name": "amount",
1599
- "type": "u64",
1600
- "index": false
1601
- },
1602
- {
1603
- "name": "userPaid",
1604
- "type": "u64",
1605
- "index": false
1606
- },
1607
- {
1608
- "name": "collateralAmount",
1609
- "type": "u64",
1610
- "index": false
1611
- },
1612
- {
1613
- "name": "openTimestamp",
1614
- "type": "i64",
1615
- "index": false
1616
- },
1617
- {
1618
- "name": "trader",
1619
- "type": "publicKey",
1620
- "index": false
1621
- },
1622
- {
1623
- "name": "closeType",
1624
- "type": "u8",
1625
- "index": false
1626
- },
1627
- {
1628
- "name": "closeTimestamp",
1629
- "type": "i64",
1630
- "index": false
1631
- },
1632
- {
1633
- "name": "closingPositionSize",
1634
- "type": "u64",
1635
- "index": false
1636
- }
1637
- ]
1638
- },
1639
- {
1640
- "name": "PositionOpenEvent",
1641
- "fields": [
1642
- {
1643
- "name": "pool",
1644
- "type": "publicKey",
1645
- "index": false
1646
- },
1647
- {
1648
- "name": "amount",
1649
- "type": "u64",
1650
- "index": false
1651
- },
1652
- {
1653
- "name": "userPaid",
1654
- "type": "u64",
1655
- "index": false
1656
- },
1657
- {
1658
- "name": "collateralAmount",
1659
- "type": "u64",
1660
- "index": false
1661
- },
1662
- {
1663
- "name": "openTimestamp",
1664
- "type": "i64",
1665
- "index": false
1666
- },
1667
- {
1668
- "name": "trader",
1669
- "type": "publicKey",
1670
- "index": false
1671
- }
1672
- ]
1673
- }
1674
- ],
1675
- "errors": [
1676
- {
1677
- "code": 6000,
1678
- "name": "AddressMismatch",
1679
- "msg": "Address Mismatch"
1680
- },
1681
- {
1682
- "code": 6001,
1683
- "name": "ProgramMismatch",
1684
- "msg": "Program Mismatch"
1685
- },
1686
- {
1687
- "code": 6002,
1688
- "name": "MissingRepay",
1689
- "msg": "Missing Repay"
1690
- },
1691
- {
1692
- "code": 6003,
1693
- "name": "IncorrectOwner",
1694
- "msg": "Incorrect Owner"
1695
- },
1696
- {
1697
- "code": 6004,
1698
- "name": "IncorrectProgramAuthority",
1699
- "msg": "Incorrect Program Authority"
1700
- },
1701
- {
1702
- "code": 6005,
1703
- "name": "CannotBorrowBeforeRepay",
1704
- "msg": "Cannot Borrow Before Repay"
1705
- },
1706
- {
1707
- "code": 6006,
1708
- "name": "UnknownInstruction",
1709
- "msg": "Unknown Instruction"
1710
- },
1711
- {
1712
- "code": 6007,
1713
- "name": "ExpectedCollateralNotEnough",
1714
- "msg": "Expected collateral not enough"
1715
- },
1716
- {
1717
- "code": 6008,
1718
- "name": "ForTesting",
1719
- "msg": "TestError"
1720
- },
1721
- {
1722
- "code": 6009,
1723
- "name": "BlacklistedAccount",
1724
- "msg": "Account is blacklisted"
1725
- },
1726
- {
1727
- "code": 6010,
1728
- "name": "CloseStatusRecallTimestampZero",
1729
- "msg": "Close status recall timestamp is zero"
1730
- }
1731
- ]
1732
- };
1733
-
1734
- export const IDL: Lavarage = {
1735
- "version": "0.1.0",
1736
- "name": "lavarage",
1737
- "instructions": [
1738
- {
1739
- "name": "lpOperatorCreateTradingPool",
1740
- "accounts": [
1741
- {
1742
- "name": "tradingPool",
1743
- "isMut": true,
1744
- "isSigner": false
1745
- },
1746
- {
1747
- "name": "operator",
1748
- "isMut": true,
1749
- "isSigner": true
1750
- },
1751
- {
1752
- "name": "nodeWallet",
1753
- "isMut": false,
1754
- "isSigner": false
1755
- },
1756
- {
1757
- "name": "mint",
1758
- "isMut": false,
1759
- "isSigner": false
1760
- },
1761
- {
1762
- "name": "systemProgram",
1763
- "isMut": false,
1764
- "isSigner": false
1765
- }
1766
- ],
1767
- "args": [
1768
- {
1769
- "name": "interestRate",
1770
- "type": "u8"
1771
- }
1772
- ]
1773
- },
1774
- {
1775
- "name": "lpOperatorCreateNodeWallet",
1776
- "accounts": [
1777
- {
1778
- "name": "nodeWallet",
1779
- "isMut": true,
1780
- "isSigner": false
1781
- },
1782
- {
1783
- "name": "operator",
1784
- "isMut": true,
1785
- "isSigner": true
1786
- },
1787
- {
1788
- "name": "systemProgram",
1789
- "isMut": false,
1790
- "isSigner": false
1791
- }
1792
- ],
1793
- "args": []
1794
- },
1795
- {
1796
- "name": "lpOperatorFundNodeWallet",
1797
- "accounts": [
1798
- {
1799
- "name": "nodeWallet",
1800
- "isMut": true,
1801
- "isSigner": false
1802
- },
1803
- {
1804
- "name": "funder",
1805
- "isMut": true,
1806
- "isSigner": true
1807
- },
1808
- {
1809
- "name": "systemProgram",
1810
- "isMut": false,
1811
- "isSigner": false
1812
- }
1813
- ],
1814
- "args": [
1815
- {
1816
- "name": "amount",
1817
- "type": "u64"
1818
- }
1819
- ]
1820
- },
1821
- {
1822
- "name": "lpOperatorWithdrawFromNodeWallet",
1823
- "accounts": [
1824
- {
1825
- "name": "nodeWallet",
1826
- "isMut": true,
1827
- "isSigner": false
1828
- },
1829
- {
1830
- "name": "funder",
1831
- "isMut": true,
1832
- "isSigner": true
1833
- },
1834
- {
1835
- "name": "systemProgram",
1836
- "isMut": false,
1837
- "isSigner": false
1838
- },
1839
- {
1840
- "name": "withdrawalAccessList",
1841
- "isMut": false,
1842
- "isSigner": false
1843
- }
1844
- ],
1845
- "args": [
1846
- {
1847
- "name": "amount",
1848
- "type": "u64"
1849
- }
1850
- ]
1851
- },
1852
- {
1853
- "name": "lpOperatorUpdateMaxBorrow",
1854
- "accounts": [
1855
- {
1856
- "name": "tradingPool",
1857
- "isMut": true,
1858
- "isSigner": false
1859
- },
1860
- {
1861
- "name": "nodeWallet",
1862
- "isMut": false,
1863
- "isSigner": false
1864
- },
1865
- {
1866
- "name": "operator",
1867
- "isMut": true,
1868
- "isSigner": true
1869
- },
1870
- {
1871
- "name": "systemProgram",
1872
- "isMut": false,
1873
- "isSigner": false
1874
- }
1875
- ],
1876
- "args": [
1877
- {
1878
- "name": "amount",
1879
- "type": "u64"
1880
- }
1881
- ]
1882
- },
1883
- {
1884
- "name": "lpOperatorUpdateMaxExposure",
1885
- "accounts": [
1886
- {
1887
- "name": "tradingPool",
1888
- "isMut": true,
1889
- "isSigner": false
1890
- },
1891
- {
1892
- "name": "nodeWallet",
1893
- "isMut": false,
1894
- "isSigner": false
1895
- },
1896
- {
1897
- "name": "operator",
1898
- "isMut": true,
1899
- "isSigner": true
1900
- },
1901
- {
1902
- "name": "systemProgram",
1903
- "isMut": false,
1904
- "isSigner": false
1905
- }
1906
- ],
1907
- "args": [
1908
- {
1909
- "name": "amount",
1910
- "type": "u64"
1911
- }
1912
- ]
1913
- },
1914
- {
1915
- "name": "lpOperatorUpdateInterestRate",
1916
- "accounts": [
1917
- {
1918
- "name": "tradingPool",
1919
- "isMut": true,
1920
- "isSigner": false
1921
- },
1922
- {
1923
- "name": "nodeWallet",
1924
- "isMut": false,
1925
- "isSigner": false
1926
- },
1927
- {
1928
- "name": "operator",
1929
- "isMut": true,
1930
- "isSigner": true
1931
- },
1932
- {
1933
- "name": "systemProgram",
1934
- "isMut": false,
1935
- "isSigner": false
1936
- }
1937
- ],
1938
- "args": [
1939
- {
1940
- "name": "amount",
1941
- "type": "u8"
1942
- }
1943
- ]
1944
- },
1945
- {
1946
- "name": "lpLiquidate",
1947
- "accounts": [
1948
- {
1949
- "name": "mint",
1950
- "isMut": false,
1951
- "isSigner": false
1952
- },
1953
- {
1954
- "name": "positionAccount",
1955
- "isMut": true,
1956
- "isSigner": false
1957
- },
1958
- {
1959
- "name": "trader",
1960
- "isMut": true,
1961
- "isSigner": false
1962
- },
1963
- {
1964
- "name": "tradingPool",
1965
- "isMut": true,
1966
- "isSigner": false
1967
- },
1968
- {
1969
- "name": "fromTokenAccount",
1970
- "isMut": true,
1971
- "isSigner": false
1972
- },
1973
- {
1974
- "name": "toTokenAccount",
1975
- "isMut": true,
1976
- "isSigner": false
1977
- },
1978
- {
1979
- "name": "nodeWallet",
1980
- "isMut": true,
1981
- "isSigner": false
1982
- },
1983
- {
1984
- "name": "tokenProgram",
1985
- "isMut": false,
1986
- "isSigner": false
1987
- },
1988
- {
1989
- "name": "randomAccountAsId",
1990
- "isMut": false,
1991
- "isSigner": false
1992
- },
1993
- {
1994
- "name": "clock",
1995
- "isMut": false,
1996
- "isSigner": false
1997
- },
1998
- {
1999
- "name": "operator",
2000
- "isMut": false,
2001
- "isSigner": true
2002
- },
2003
- {
2004
- "name": "oracle",
2005
- "isMut": false,
2006
- "isSigner": true
2007
- }
2008
- ],
2009
- "args": [
2010
- {
2011
- "name": "positionSize",
2012
- "type": "u64"
2013
- }
2014
- ]
2015
- },
2016
- {
2017
- "name": "lpCollectInterest",
2018
- "accounts": [
2019
- {
2020
- "name": "mint",
2021
- "isMut": false,
2022
- "isSigner": false
2023
- },
2024
- {
2025
- "name": "positionAccount",
2026
- "isMut": true,
2027
- "isSigner": false
2028
- },
2029
- {
2030
- "name": "trader",
2031
- "isMut": true,
2032
- "isSigner": false
2033
- },
2034
- {
2035
- "name": "tradingPool",
2036
- "isMut": true,
2037
- "isSigner": false
2038
- },
2039
- {
2040
- "name": "fromTokenAccount",
2041
- "isMut": true,
2042
- "isSigner": false
2043
- },
2044
- {
2045
- "name": "toTokenAccount",
2046
- "isMut": true,
2047
- "isSigner": false
2048
- },
2049
- {
2050
- "name": "nodeWallet",
2051
- "isMut": true,
2052
- "isSigner": false
2053
- },
2054
- {
2055
- "name": "tokenProgram",
2056
- "isMut": false,
2057
- "isSigner": false
2058
- },
2059
- {
2060
- "name": "randomAccountAsId",
2061
- "isMut": false,
2062
- "isSigner": false
2063
- },
2064
- {
2065
- "name": "clock",
2066
- "isMut": false,
2067
- "isSigner": false
2068
- },
2069
- {
2070
- "name": "operator",
2071
- "isMut": false,
2072
- "isSigner": true
2073
- },
2074
- {
2075
- "name": "oracle",
2076
- "isMut": false,
2077
- "isSigner": true
2078
- }
2079
- ],
2080
- "args": [
2081
- {
2082
- "name": "price",
2083
- "type": "u128"
2084
- }
2085
- ]
2086
- },
2087
- {
2088
- "name": "tradingOpenBorrow",
2089
- "accounts": [
2090
- {
2091
- "name": "positionAccount",
2092
- "isMut": true,
2093
- "isSigner": false
2094
- },
2095
- {
2096
- "name": "trader",
2097
- "isMut": true,
2098
- "isSigner": true
2099
- },
2100
- {
2101
- "name": "tradingPool",
2102
- "isMut": true,
2103
- "isSigner": false
2104
- },
2105
- {
2106
- "name": "nodeWallet",
2107
- "isMut": true,
2108
- "isSigner": false
2109
- },
2110
- {
2111
- "name": "instructions",
2112
- "isMut": false,
2113
- "isSigner": false
2114
- },
2115
- {
2116
- "name": "systemProgram",
2117
- "isMut": false,
2118
- "isSigner": false
2119
- },
2120
- {
2121
- "name": "clock",
2122
- "isMut": false,
2123
- "isSigner": false
2124
- },
2125
- {
2126
- "name": "randomAccountAsId",
2127
- "isMut": false,
2128
- "isSigner": false
2129
- },
2130
- {
2131
- "name": "feeReceipient",
2132
- "isMut": true,
2133
- "isSigner": false
2134
- },
2135
- {
2136
- "name": "positionTokenAccount",
2137
- "isMut": true,
2138
- "isSigner": false
2139
- },
2140
- {
2141
- "name": "collateralTokenProgram",
2142
- "isMut": false,
2143
- "isSigner": false
2144
- },
2145
- {
2146
- "name": "associatedTokenProgram",
2147
- "isMut": false,
2148
- "isSigner": false
2149
- },
2150
- {
2151
- "name": "collateralMint",
2152
- "isMut": false,
2153
- "isSigner": false
2154
- },
2155
- {
2156
- "name": "usersTokenAccount",
2157
- "isMut": true,
2158
- "isSigner": false
2159
- }
2160
- ],
2161
- "args": [
2162
- {
2163
- "name": "positionSize",
2164
- "type": "u64"
2165
- },
2166
- {
2167
- "name": "userPays",
2168
- "type": "u64"
2169
- }
2170
- ]
2171
- },
2172
- {
2173
- "name": "tradingOpenBorrowWithReferral",
2174
- "accounts": [
2175
- {
2176
- "name": "positionAccount",
2177
- "isMut": true,
2178
- "isSigner": false
2179
- },
2180
- {
2181
- "name": "trader",
2182
- "isMut": true,
2183
- "isSigner": true
2184
- },
2185
- {
2186
- "name": "tradingPool",
2187
- "isMut": true,
2188
- "isSigner": false
2189
- },
2190
- {
2191
- "name": "nodeWallet",
2192
- "isMut": true,
2193
- "isSigner": false
2194
- },
2195
- {
2196
- "name": "instructions",
2197
- "isMut": false,
2198
- "isSigner": false
2199
- },
2200
- {
2201
- "name": "systemProgram",
2202
- "isMut": false,
2203
- "isSigner": false
2204
- },
2205
- {
2206
- "name": "clock",
2207
- "isMut": false,
2208
- "isSigner": false
2209
- },
2210
- {
2211
- "name": "randomAccountAsId",
2212
- "isMut": false,
2213
- "isSigner": false
2214
- },
2215
- {
2216
- "name": "feeReceipient",
2217
- "isMut": true,
2218
- "isSigner": false
2219
- },
2220
- {
2221
- "name": "positionTokenAccount",
2222
- "isMut": true,
2223
- "isSigner": false
2224
- },
2225
- {
2226
- "name": "collateralTokenProgram",
2227
- "isMut": false,
2228
- "isSigner": false
2229
- },
2230
- {
2231
- "name": "associatedTokenProgram",
2232
- "isMut": false,
2233
- "isSigner": false
2234
- },
2235
- {
2236
- "name": "collateralMint",
2237
- "isMut": false,
2238
- "isSigner": false
2239
- },
2240
- {
2241
- "name": "usersTokenAccount",
2242
- "isMut": true,
2243
- "isSigner": false
2244
- }
2245
- ],
2246
- "args": [
2247
- {
2248
- "name": "positionSize",
2249
- "type": "u64"
2250
- },
2251
- {
2252
- "name": "userPays",
2253
- "type": "u64"
2254
- },
2255
- {
2256
- "name": "discountBps",
2257
- "type": "u64"
2258
- },
2259
- {
2260
- "name": "referralBps",
2261
- "type": "u64"
2262
- }
2263
- ]
2264
- },
2265
- {
2266
- "name": "tradingOpenAddCollateral",
2267
- "accounts": [
2268
- {
2269
- "name": "positionAccount",
2270
- "isMut": true,
2271
- "isSigner": false
2272
- },
2273
- {
2274
- "name": "trader",
2275
- "isMut": true,
2276
- "isSigner": true
2277
- },
2278
- {
2279
- "name": "tradingPool",
2280
- "isMut": true,
2281
- "isSigner": false
2282
- },
2283
- {
2284
- "name": "systemProgram",
2285
- "isMut": false,
2286
- "isSigner": false
2287
- },
2288
- {
2289
- "name": "mint",
2290
- "isMut": false,
2291
- "isSigner": false
2292
- },
2293
- {
2294
- "name": "toTokenAccount",
2295
- "isMut": true,
2296
- "isSigner": false
2297
- },
2298
- {
2299
- "name": "randomAccountAsId",
2300
- "isMut": false,
2301
- "isSigner": false
2302
- },
2303
- {
2304
- "name": "tokenProgram",
2305
- "isMut": false,
2306
- "isSigner": false
2307
- },
2308
- {
2309
- "name": "associatedTokenProgram",
2310
- "isMut": false,
2311
- "isSigner": false
2312
- }
2313
- ],
2314
- "args": [
2315
- {
2316
- "name": "maxInterestRate",
2317
- "type": "u8"
2318
- }
2319
- ]
2320
- },
2321
- {
2322
- "name": "tradingCloseBorrowCollateral",
2323
- "accounts": [
2324
- {
2325
- "name": "positionAccount",
2326
- "isMut": true,
2327
- "isSigner": false
2328
- },
2329
- {
2330
- "name": "trader",
2331
- "isMut": true,
2332
- "isSigner": true
2333
- },
2334
- {
2335
- "name": "tradingPool",
2336
- "isMut": true,
2337
- "isSigner": false
2338
- },
2339
- {
2340
- "name": "instructions",
2341
- "isMut": false,
2342
- "isSigner": false
2343
- },
2344
- {
2345
- "name": "systemProgram",
2346
- "isMut": false,
2347
- "isSigner": false
2348
- },
2349
- {
2350
- "name": "mint",
2351
- "isMut": false,
2352
- "isSigner": false
2353
- },
2354
- {
2355
- "name": "fromTokenAccount",
2356
- "isMut": true,
2357
- "isSigner": false
2358
- },
2359
- {
2360
- "name": "toTokenAccount",
2361
- "isMut": true,
2362
- "isSigner": false
2363
- },
2364
- {
2365
- "name": "tokenProgram",
2366
- "isMut": false,
2367
- "isSigner": false
2368
- },
2369
- {
2370
- "name": "clock",
2371
- "isMut": false,
2372
- "isSigner": false
2373
- },
2374
- {
2375
- "name": "randomAccountAsId",
2376
- "isMut": false,
2377
- "isSigner": false
2378
- },
2379
- {
2380
- "name": "associatedTokenProgram",
2381
- "isMut": false,
2382
- "isSigner": false
2383
- }
2384
- ],
2385
- "args": []
2386
- },
2387
- {
2388
- "name": "tradingDataAccruedInterest",
2389
- "accounts": [
2390
- {
2391
- "name": "positionAccount",
2392
- "isMut": true,
2393
- "isSigner": false
2394
- },
2395
- {
2396
- "name": "trader",
2397
- "isMut": true,
2398
- "isSigner": true
2399
- },
2400
- {
2401
- "name": "tradingPool",
2402
- "isMut": true,
2403
- "isSigner": false
2404
- },
2405
- {
2406
- "name": "nodeWallet",
2407
- "isMut": true,
2408
- "isSigner": false
2409
- },
2410
- {
2411
- "name": "systemProgram",
2412
- "isMut": false,
2413
- "isSigner": false
2414
- },
2415
- {
2416
- "name": "clock",
2417
- "isMut": false,
2418
- "isSigner": false
2419
- },
2420
- {
2421
- "name": "randomAccountAsId",
2422
- "isMut": false,
2423
- "isSigner": false
2424
- },
2425
- {
2426
- "name": "feeReceipient",
2427
- "isMut": true,
2428
- "isSigner": false
2429
- }
2430
- ],
2431
- "args": [],
2432
- "returns": "u64"
2433
- },
2434
- {
2435
- "name": "tradingCloseRepaySol",
2436
- "accounts": [
2437
- {
2438
- "name": "positionAccount",
2439
- "isMut": true,
2440
- "isSigner": false
2441
- },
2442
- {
2443
- "name": "trader",
2444
- "isMut": true,
2445
- "isSigner": true
2446
- },
2447
- {
2448
- "name": "tradingPool",
2449
- "isMut": true,
2450
- "isSigner": false
2451
- },
2452
- {
2453
- "name": "nodeWallet",
2454
- "isMut": true,
2455
- "isSigner": false
2456
- },
2457
- {
2458
- "name": "systemProgram",
2459
- "isMut": false,
2460
- "isSigner": false
2461
- },
2462
- {
2463
- "name": "clock",
2464
- "isMut": false,
2465
- "isSigner": false
2466
- },
2467
- {
2468
- "name": "randomAccountAsId",
2469
- "isMut": false,
2470
- "isSigner": false
2471
- },
2472
- {
2473
- "name": "feeReceipient",
2474
- "isMut": true,
2475
- "isSigner": false
2476
- }
2477
- ],
2478
- "args": [
2479
- {
2480
- "name": "closingPositionSize",
2481
- "type": "u64"
2482
- },
2483
- {
2484
- "name": "closeType",
2485
- "type": "u64"
2486
- }
2487
- ]
2488
- },
2489
- {
2490
- "name": "tradingCloseRepaySolWithReferral",
2491
- "accounts": [
2492
- {
2493
- "name": "positionAccount",
2494
- "isMut": true,
2495
- "isSigner": false
2496
- },
2497
- {
2498
- "name": "trader",
2499
- "isMut": true,
2500
- "isSigner": true
2501
- },
2502
- {
2503
- "name": "tradingPool",
2504
- "isMut": true,
2505
- "isSigner": false
2506
- },
2507
- {
2508
- "name": "nodeWallet",
2509
- "isMut": true,
2510
- "isSigner": false
2511
- },
2512
- {
2513
- "name": "systemProgram",
2514
- "isMut": false,
2515
- "isSigner": false
2516
- },
2517
- {
2518
- "name": "clock",
2519
- "isMut": false,
2520
- "isSigner": false
2521
- },
2522
- {
2523
- "name": "randomAccountAsId",
2524
- "isMut": false,
2525
- "isSigner": false
2526
- },
2527
- {
2528
- "name": "feeReceipient",
2529
- "isMut": true,
2530
- "isSigner": false
2531
- }
2532
- ],
2533
- "args": [
2534
- {
2535
- "name": "closingPositionSize",
2536
- "type": "u64"
2537
- },
2538
- {
2539
- "name": "closeType",
2540
- "type": "u64"
2541
- },
2542
- {
2543
- "name": "discountBps",
2544
- "type": "u64"
2545
- },
2546
- {
2547
- "name": "referralBps",
2548
- "type": "u64"
2549
- }
2550
- ]
2551
- },
2552
- {
2553
- "name": "tradingClosePartialRepaySol",
2554
- "accounts": [
2555
- {
2556
- "name": "positionAccount",
2557
- "isMut": true,
2558
- "isSigner": false
2559
- },
2560
- {
2561
- "name": "trader",
2562
- "isMut": true,
2563
- "isSigner": true
2564
- },
2565
- {
2566
- "name": "tradingPool",
2567
- "isMut": true,
2568
- "isSigner": false
2569
- },
2570
- {
2571
- "name": "nodeWallet",
2572
- "isMut": true,
2573
- "isSigner": false
2574
- },
2575
- {
2576
- "name": "systemProgram",
2577
- "isMut": false,
2578
- "isSigner": false
2579
- },
2580
- {
2581
- "name": "clock",
2582
- "isMut": false,
2583
- "isSigner": false
2584
- },
2585
- {
2586
- "name": "randomAccountAsId",
2587
- "isMut": false,
2588
- "isSigner": false
2589
- },
2590
- {
2591
- "name": "feeReceipient",
2592
- "isMut": true,
2593
- "isSigner": false
2594
- }
2595
- ],
2596
- "args": [
2597
- {
2598
- "name": "repayPercentage",
2599
- "type": "u64"
2600
- }
2601
- ]
2602
- },
2603
- {
2604
- "name": "tradingClosePositionAccount",
2605
- "accounts": [
2606
- {
2607
- "name": "positionAccount",
2608
- "isMut": true,
2609
- "isSigner": false
2610
- },
2611
- {
2612
- "name": "admin",
2613
- "isMut": false,
2614
- "isSigner": true
2615
- },
2616
- {
2617
- "name": "feeReceipient",
2618
- "isMut": true,
2619
- "isSigner": false
2620
- },
2621
- {
2622
- "name": "systemProgram",
2623
- "isMut": false,
2624
- "isSigner": false
2625
- }
2626
- ],
2627
- "args": []
2628
- },
2629
- {
2630
- "name": "tradingClosePoolAccount",
2631
- "accounts": [
2632
- {
2633
- "name": "poolAccount",
2634
- "isMut": true,
2635
- "isSigner": false
2636
- },
2637
- {
2638
- "name": "operator",
2639
- "isMut": false,
2640
- "isSigner": true
2641
- },
2642
- {
2643
- "name": "admin",
2644
- "isMut": false,
2645
- "isSigner": true
2646
- },
2647
- {
2648
- "name": "feeReceipient",
2649
- "isMut": true,
2650
- "isSigner": false
2651
- },
2652
- {
2653
- "name": "systemProgram",
2654
- "isMut": false,
2655
- "isSigner": false
2656
- }
2657
- ],
2658
- "args": []
2659
- },
2660
- {
2661
- "name": "syncNodeWallet",
2662
- "accounts": [
2663
- {
2664
- "name": "nodeWallet",
2665
- "isMut": true,
2666
- "isSigner": false
2667
- },
2668
- {
2669
- "name": "funder",
2670
- "isMut": true,
2671
- "isSigner": true
2672
- },
2673
- {
2674
- "name": "systemProgram",
2675
- "isMut": false,
2676
- "isSigner": false
2677
- }
2678
- ],
2679
- "args": []
2680
- },
2681
- {
2682
- "name": "tradingCreateTpDelegate",
2683
- "accounts": [
2684
- {
2685
- "name": "delegate",
2686
- "isMut": true,
2687
- "isSigner": false
2688
- },
2689
- {
2690
- "name": "originalOperator",
2691
- "isMut": true,
2692
- "isSigner": true
2693
- },
2694
- {
2695
- "name": "delegatedAccount",
2696
- "isMut": false,
2697
- "isSigner": false
2698
- },
2699
- {
2700
- "name": "systemProgram",
2701
- "isMut": false,
2702
- "isSigner": false
2703
- }
2704
- ],
2705
- "args": [
2706
- {
2707
- "name": "price",
2708
- "type": "u64"
2709
- },
2710
- {
2711
- "name": "lowerThreshold",
2712
- "type": "u64"
2713
- },
2714
- {
2715
- "name": "delegateOperator",
2716
- "type": "publicKey"
2717
- },
2718
- {
2719
- "name": "partialPercentage",
2720
- "type": "u64"
2721
- }
2722
- ]
2723
- },
2724
- {
2725
- "name": "tradingRemoveTpDelegate",
2726
- "accounts": [
2727
- {
2728
- "name": "delegate",
2729
- "isMut": true,
2730
- "isSigner": false
2731
- },
2732
- {
2733
- "name": "originalOperator",
2734
- "isMut": true,
2735
- "isSigner": true
2736
- },
2737
- {
2738
- "name": "delegatedAccount",
2739
- "isMut": false,
2740
- "isSigner": false
2741
- },
2742
- {
2743
- "name": "systemProgram",
2744
- "isMut": false,
2745
- "isSigner": false
2746
- }
2747
- ],
2748
- "args": []
2749
- },
2750
- {
2751
- "name": "delegateExecuteTp",
2752
- "accounts": [
2753
- {
2754
- "name": "delegate",
2755
- "isMut": true,
2756
- "isSigner": false
2757
- },
2758
- {
2759
- "name": "delegateOperator",
2760
- "isMut": false,
2761
- "isSigner": true
2762
- },
2763
- {
2764
- "name": "account",
2765
- "isMut": true,
2766
- "isSigner": false
2767
- },
2768
- {
2769
- "name": "tradingPool",
2770
- "isMut": true,
2771
- "isSigner": false
2772
- },
2773
- {
2774
- "name": "tokenProgram",
2775
- "isMut": false,
2776
- "isSigner": false
2777
- },
2778
- {
2779
- "name": "positionTokenAccount",
2780
- "isMut": true,
2781
- "isSigner": false
2782
- },
2783
- {
2784
- "name": "delegateTokenAccount",
2785
- "isMut": true,
2786
- "isSigner": false
2787
- },
2788
- {
2789
- "name": "systemProgram",
2790
- "isMut": false,
2791
- "isSigner": false
2792
- },
2793
- {
2794
- "name": "mint",
2795
- "isMut": false,
2796
- "isSigner": false
2797
- }
2798
- ],
2799
- "args": [
2800
- {
2801
- "name": "seed",
2802
- "type": "publicKey"
2803
- }
2804
- ]
2805
- },
2806
- {
2807
- "name": "delegateClosePosition",
2808
- "accounts": [
2809
- {
2810
- "name": "delegate",
2811
- "isMut": true,
2812
- "isSigner": false
2813
- },
2814
- {
2815
- "name": "delegateOperator",
2816
- "isMut": false,
2817
- "isSigner": true
2818
- },
2819
- {
2820
- "name": "account",
2821
- "isMut": true,
2822
- "isSigner": false
2823
- },
2824
- {
2825
- "name": "tradingPool",
2826
- "isMut": true,
2827
- "isSigner": false
2828
- },
2829
- {
2830
- "name": "nodeWallet",
2831
- "isMut": true,
2832
- "isSigner": false
2833
- },
2834
- {
2835
- "name": "tokenProgram",
2836
- "isMut": false,
2837
- "isSigner": false
2838
- },
2839
- {
2840
- "name": "nodeWalletTokenAccount",
2841
- "isMut": true,
2842
- "isSigner": false
2843
- },
2844
- {
2845
- "name": "delegateTokenAccount",
2846
- "isMut": true,
2847
- "isSigner": false
2848
- },
2849
- {
2850
- "name": "feeTokenAccount",
2851
- "isMut": true,
2852
- "isSigner": false
2853
- },
2854
- {
2855
- "name": "profitTokenAccount",
2856
- "isMut": true,
2857
- "isSigner": false
2858
- },
2859
- {
2860
- "name": "systemProgram",
2861
- "isMut": false,
2862
- "isSigner": false
2863
- },
2864
- {
2865
- "name": "qtMint",
2866
- "isMut": false,
2867
- "isSigner": false
2868
- }
2869
- ],
2870
- "args": [
2871
- {
2872
- "name": "closingPositionSize",
2873
- "type": "u64"
2874
- }
2875
- ]
2876
- },
2877
- {
2878
- "name": "tradingManagementSplitPosition",
2879
- "accounts": [
2880
- {
2881
- "name": "originalPosition",
2882
- "isMut": true,
2883
- "isSigner": false
2884
- },
2885
- {
2886
- "name": "newPositionOne",
2887
- "isMut": true,
2888
- "isSigner": false
2889
- },
2890
- {
2891
- "name": "newPositionTwo",
2892
- "isMut": true,
2893
- "isSigner": false
2894
- },
2895
- {
2896
- "name": "mint",
2897
- "isMut": false,
2898
- "isSigner": false
2899
- },
2900
- {
2901
- "name": "originalPositionTokenAccount",
2902
- "isMut": true,
2903
- "isSigner": false
2904
- },
2905
- {
2906
- "name": "newPositionTokenAccountOne",
2907
- "isMut": true,
2908
- "isSigner": false
2909
- },
2910
- {
2911
- "name": "newPositionTokenAccountTwo",
2912
- "isMut": true,
2913
- "isSigner": false
2914
- },
2915
- {
2916
- "name": "trader",
2917
- "isMut": true,
2918
- "isSigner": true
2919
- },
2920
- {
2921
- "name": "tokenProgram",
2922
- "isMut": false,
2923
- "isSigner": false
2924
- },
2925
- {
2926
- "name": "systemProgram",
2927
- "isMut": false,
2928
- "isSigner": false
2929
- }
2930
- ],
2931
- "args": [
2932
- {
2933
- "name": "splitRatioBps",
2934
- "type": "u64"
2935
- },
2936
- {
2937
- "name": "seed1",
2938
- "type": "publicKey"
2939
- },
2940
- {
2941
- "name": "seed2",
2942
- "type": "publicKey"
2943
- }
2944
- ]
2945
- },
2946
- {
2947
- "name": "initWithdrawalAccessList",
2948
- "accounts": [
2949
- {
2950
- "name": "withdrawalAccessList",
2951
- "isMut": true,
2952
- "isSigner": false
2953
- },
2954
- {
2955
- "name": "authority",
2956
- "isMut": true,
2957
- "isSigner": true
2958
- },
2959
- {
2960
- "name": "systemProgram",
2961
- "isMut": false,
2962
- "isSigner": false
2963
- }
2964
- ],
2965
- "args": []
2966
- },
2967
- {
2968
- "name": "addWithdrawalAccess",
2969
- "accounts": [
2970
- {
2971
- "name": "withdrawalAccessList",
2972
- "isMut": true,
2973
- "isSigner": false
2974
- },
2975
- {
2976
- "name": "nodeWallet",
2977
- "isMut": false,
2978
- "isSigner": false
2979
- },
2980
- {
2981
- "name": "authority",
2982
- "isMut": false,
2983
- "isSigner": true
2984
- }
2985
- ],
2986
- "args": [
2987
- {
2988
- "name": "toPubkey",
2989
- "type": "publicKey"
2990
- }
2991
- ]
2992
- },
2993
- {
2994
- "name": "removeWithdrawalAccess",
2995
- "accounts": [
2996
- {
2997
- "name": "withdrawalAccessList",
2998
- "isMut": true,
2999
- "isSigner": false
3000
- },
3001
- {
3002
- "name": "authority",
3003
- "isMut": false,
3004
- "isSigner": true
3005
- }
3006
- ],
3007
- "args": [
3008
- {
3009
- "name": "fromPubkey",
3010
- "type": "string"
3011
- }
3012
- ]
3013
- }
3014
- ],
3015
- "accounts": [
3016
- {
3017
- "name": "delegate",
3018
- "type": {
3019
- "kind": "struct",
3020
- "fields": [
3021
- {
3022
- "name": "delegateType",
3023
- "type": "u8"
3024
- },
3025
- {
3026
- "name": "field1",
3027
- "type": "u64"
3028
- },
3029
- {
3030
- "name": "field2",
3031
- "type": "u64"
3032
- },
3033
- {
3034
- "name": "field3",
3035
- "type": "u64"
3036
- },
3037
- {
3038
- "name": "field4",
3039
- "type": "publicKey"
3040
- },
3041
- {
3042
- "name": "field5",
3043
- "type": "publicKey"
3044
- },
3045
- {
3046
- "name": "originalOperator",
3047
- "type": "publicKey"
3048
- },
3049
- {
3050
- "name": "delegateOperator",
3051
- "type": "publicKey"
3052
- },
3053
- {
3054
- "name": "account",
3055
- "type": "publicKey"
3056
- }
3057
- ]
3058
- }
3059
- },
3060
- {
3061
- "name": "nodeWallet",
3062
- "type": {
3063
- "kind": "struct",
3064
- "fields": [
3065
- {
3066
- "name": "totalFunds",
3067
- "type": "u64"
3068
- },
3069
- {
3070
- "name": "totalBorrowed",
3071
- "type": "u64"
3072
- },
3073
- {
3074
- "name": "maintenanceLtv",
3075
- "type": "u8"
3076
- },
3077
- {
3078
- "name": "liquidationLtv",
3079
- "type": "u8"
3080
- },
3081
- {
3082
- "name": "nodeOperator",
3083
- "type": "publicKey"
3084
- }
3085
- ]
3086
- }
3087
- },
3088
- {
3089
- "name": "pool",
3090
- "type": {
3091
- "kind": "struct",
3092
- "fields": [
3093
- {
3094
- "name": "interestRate",
3095
- "type": "u8"
3096
- },
3097
- {
3098
- "name": "collateralType",
3099
- "type": "publicKey"
3100
- },
3101
- {
3102
- "name": "maxBorrow",
3103
- "type": "u64"
3104
- },
3105
- {
3106
- "name": "nodeWallet",
3107
- "type": "publicKey"
3108
- },
3109
- {
3110
- "name": "maxExposure",
3111
- "type": "u64"
3112
- },
3113
- {
3114
- "name": "currentExposure",
3115
- "type": "u64"
3116
- }
3117
- ]
3118
- }
3119
- },
3120
- {
3121
- "name": "position",
3122
- "type": {
3123
- "kind": "struct",
3124
- "fields": [
3125
- {
3126
- "name": "pool",
3127
- "type": "publicKey"
3128
- },
3129
- {
3130
- "name": "closeStatusRecallTimestamp",
3131
- "type": "u64"
3132
- },
3133
- {
3134
- "name": "amount",
3135
- "type": "u64"
3136
- },
3137
- {
3138
- "name": "userPaid",
3139
- "type": "u64"
3140
- },
3141
- {
3142
- "name": "collateralAmount",
3143
- "type": "u64"
3144
- },
3145
- {
3146
- "name": "timestamp",
3147
- "type": "i64"
3148
- },
3149
- {
3150
- "name": "trader",
3151
- "type": "publicKey"
3152
- },
3153
- {
3154
- "name": "seed",
3155
- "type": "publicKey"
3156
- },
3157
- {
3158
- "name": "closeTimestamp",
3159
- "type": "i64"
3160
- },
3161
- {
3162
- "name": "closingPositionSize",
3163
- "type": "u64"
3164
- },
3165
- {
3166
- "name": "interestRate",
3167
- "type": "u8"
3168
- },
3169
- {
3170
- "name": "lastInterestCollect",
3171
- "type": "i64"
3172
- }
3173
- ]
3174
- }
3175
- },
3176
- {
3177
- "name": "withdrawalAccessList",
3178
- "type": {
3179
- "kind": "struct",
3180
- "fields": [
3181
- {
3182
- "name": "authority",
3183
- "type": "publicKey"
3184
- },
3185
- {
3186
- "name": "accessEntries",
3187
- "type": {
3188
- "vec": {
3189
- "defined": "WithdrawalAccessEntry"
3190
- }
3191
- }
3192
- }
3193
- ]
3194
- }
3195
- }
3196
- ],
3197
- "types": [
3198
- {
3199
- "name": "WithdrawalAccessEntry",
3200
- "type": {
3201
- "kind": "struct",
3202
- "fields": [
3203
- {
3204
- "name": "fromPubkey",
3205
- "type": "string"
3206
- },
3207
- {
3208
- "name": "toPubkey",
3209
- "type": "publicKey"
3210
- }
3211
- ]
3212
- }
3213
- },
3214
- {
3215
- "name": "LendingErrors",
3216
- "docs": [
3217
- "Errors for this program"
3218
- ],
3219
- "type": {
3220
- "kind": "enum",
3221
- "variants": [
3222
- {
3223
- "name": "AddressMismatch"
3224
- },
3225
- {
3226
- "name": "ProgramMismatch"
3227
- },
3228
- {
3229
- "name": "MissingRepay"
3230
- },
3231
- {
3232
- "name": "IncorrectOwner"
3233
- },
3234
- {
3235
- "name": "IncorrectProgramAuthority"
3236
- },
3237
- {
3238
- "name": "CannotBorrowBeforeRepay"
3239
- },
3240
- {
3241
- "name": "UnknownInstruction"
3242
- },
3243
- {
3244
- "name": "ExpectedCollateralNotEnough"
3245
- },
3246
- {
3247
- "name": "AccessEntryAlreadyExists"
3248
- },
3249
- {
3250
- "name": "AccessEntryNotFound"
3251
- },
3252
- {
3253
- "name": "UnauthorizedWithdrawal"
3254
- },
3255
- {
3256
- "name": "AccountAlreadyInitialized"
3257
- }
3258
- ]
3259
- }
3260
- },
3261
- {
3262
- "name": "ErrorCode",
3263
- "type": {
3264
- "kind": "enum",
3265
- "variants": [
3266
- {
3267
- "name": "InvalidSignature"
3268
- },
3269
- {
3270
- "name": "InvalidOracle"
3271
- }
3272
- ]
3273
- }
3274
- },
3275
- {
3276
- "name": "ErrorCode",
3277
- "type": {
3278
- "kind": "enum",
3279
- "variants": [
3280
- {
3281
- "name": "InvalidSplitRatio"
3282
- },
3283
- {
3284
- "name": "PositionsNotMergeable"
3285
- }
3286
- ]
3287
- }
3288
- },
3289
- {
3290
- "name": "ErrorCode",
3291
- "type": {
3292
- "kind": "enum",
3293
- "variants": [
3294
- {
3295
- "name": "OnlyDelegateOperator"
3296
- },
3297
- {
3298
- "name": "AddressMismatch"
3299
- },
3300
- {
3301
- "name": "InvalidDelegateType"
3302
- }
3303
- ]
3304
- }
3305
- },
3306
- {
3307
- "name": "PositionCloseType",
3308
- "type": {
3309
- "kind": "enum",
3310
- "variants": [
3311
- {
3312
- "name": "ClosedByUser"
3313
- },
3314
- {
3315
- "name": "Liquidated"
3316
- }
3317
- ]
3318
- }
3319
- }
3320
- ],
3321
- "events": [
3322
- {
3323
- "name": "PositionCloseEvent",
3324
- "fields": [
3325
- {
3326
- "name": "pool",
3327
- "type": "publicKey",
3328
- "index": false
3329
- },
3330
- {
3331
- "name": "amount",
3332
- "type": "u64",
3333
- "index": false
3334
- },
3335
- {
3336
- "name": "userPaid",
3337
- "type": "u64",
3338
- "index": false
3339
- },
3340
- {
3341
- "name": "collateralAmount",
3342
- "type": "u64",
3343
- "index": false
3344
- },
3345
- {
3346
- "name": "openTimestamp",
3347
- "type": "i64",
3348
- "index": false
3349
- },
3350
- {
3351
- "name": "trader",
3352
- "type": "publicKey",
3353
- "index": false
3354
- },
3355
- {
3356
- "name": "closeType",
3357
- "type": "u8",
3358
- "index": false
3359
- },
3360
- {
3361
- "name": "closeTimestamp",
3362
- "type": "i64",
3363
- "index": false
3364
- },
3365
- {
3366
- "name": "closingPositionSize",
3367
- "type": "u64",
3368
- "index": false
3369
- }
3370
- ]
3371
- },
3372
- {
3373
- "name": "PositionOpenEvent",
3374
- "fields": [
3375
- {
3376
- "name": "pool",
3377
- "type": "publicKey",
3378
- "index": false
3379
- },
3380
- {
3381
- "name": "amount",
3382
- "type": "u64",
3383
- "index": false
3384
- },
3385
- {
3386
- "name": "userPaid",
3387
- "type": "u64",
3388
- "index": false
3389
- },
3390
- {
3391
- "name": "collateralAmount",
3392
- "type": "u64",
3393
- "index": false
3394
- },
3395
- {
3396
- "name": "openTimestamp",
3397
- "type": "i64",
3398
- "index": false
3399
- },
3400
- {
3401
- "name": "trader",
3402
- "type": "publicKey",
3403
- "index": false
3404
- }
3405
- ]
3406
- }
3407
- ],
3408
- "errors": [
3409
- {
3410
- "code": 6000,
3411
- "name": "AddressMismatch",
3412
- "msg": "Address Mismatch"
3413
- },
3414
- {
3415
- "code": 6001,
3416
- "name": "ProgramMismatch",
3417
- "msg": "Program Mismatch"
3418
- },
3419
- {
3420
- "code": 6002,
3421
- "name": "MissingRepay",
3422
- "msg": "Missing Repay"
3423
- },
3424
- {
3425
- "code": 6003,
3426
- "name": "IncorrectOwner",
3427
- "msg": "Incorrect Owner"
3428
- },
3429
- {
3430
- "code": 6004,
3431
- "name": "IncorrectProgramAuthority",
3432
- "msg": "Incorrect Program Authority"
3433
- },
3434
- {
3435
- "code": 6005,
3436
- "name": "CannotBorrowBeforeRepay",
3437
- "msg": "Cannot Borrow Before Repay"
3438
- },
3439
- {
3440
- "code": 6006,
3441
- "name": "UnknownInstruction",
3442
- "msg": "Unknown Instruction"
3443
- },
3444
- {
3445
- "code": 6007,
3446
- "name": "ExpectedCollateralNotEnough",
3447
- "msg": "Expected collateral not enough"
3448
- },
3449
- {
3450
- "code": 6008,
3451
- "name": "ForTesting",
3452
- "msg": "TestError"
3453
- },
3454
- {
3455
- "code": 6009,
3456
- "name": "BlacklistedAccount",
3457
- "msg": "Account is blacklisted"
3458
- },
3459
- {
3460
- "code": 6010,
3461
- "name": "CloseStatusRecallTimestampZero",
3462
- "msg": "Close status recall timestamp is zero"
3463
- }
3464
- ]
3465
- };