@glamsystems/glam-sdk 1.0.14-alpha.4 → 1.1.0-alpha.0

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