@glamsystems/glam-sdk 1.0.14-alpha.5 → 1.0.14-alpha.6

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 (91) hide show
  1. package/index.cjs.js +50342 -20851
  2. package/index.esm.js +50187 -20852
  3. package/package.json +3 -3
  4. package/target/idl/ext_jupiter-staging.json +1960 -0
  5. package/target/idl/ext_jupiter.json +1960 -0
  6. package/target/idl/ext_orca-staging.json +2797 -0
  7. package/target/idl/ext_orca.json +2797 -0
  8. package/target/idl/glam_mint-staging.json +1452 -80
  9. package/target/idl/glam_mint.json +256 -1
  10. package/target/idl/glam_protocol-staging.json +22 -2
  11. package/target/idl/glam_protocol.json +584 -0
  12. package/target/types/ext_jupiter-staging.ts +1966 -0
  13. package/target/types/ext_jupiter.ts +1966 -0
  14. package/target/types/ext_orca-staging.ts +2803 -0
  15. package/target/types/ext_orca.ts +2803 -0
  16. package/target/types/glam_mint-staging.ts +1452 -80
  17. package/target/types/glam_mint.ts +256 -1
  18. package/target/types/glam_protocol-staging.ts +22 -2
  19. package/target/types/glam_protocol.ts +584 -0
  20. package/src/assets.d.ts +0 -40
  21. package/src/client/access.d.ts +0 -57
  22. package/src/client/base.d.ts +0 -180
  23. package/src/client/bridge.d.ts +0 -185
  24. package/src/client/bridgeRegistry.d.ts +0 -32
  25. package/src/client/cctp.d.ts +0 -156
  26. package/src/client/epi.d.ts +0 -78
  27. package/src/client/fees.d.ts +0 -33
  28. package/src/client/invest.d.ts +0 -37
  29. package/src/client/jupiter.d.ts +0 -45
  30. package/src/client/kamino/farm.d.ts +0 -39
  31. package/src/client/kamino/index.d.ts +0 -4
  32. package/src/client/kamino/lending.d.ts +0 -86
  33. package/src/client/kamino/types.d.ts +0 -56
  34. package/src/client/kamino/vaults.d.ts +0 -31
  35. package/src/client/marinade.d.ts +0 -42
  36. package/src/client/mint.d.ts +0 -127
  37. package/src/client/price.d.ts +0 -128
  38. package/src/client/stake-pool.d.ts +0 -39
  39. package/src/client/stake.d.ts +0 -34
  40. package/src/client/state.d.ts +0 -56
  41. package/src/client/timelock.d.ts +0 -31
  42. package/src/client/vault.d.ts +0 -90
  43. package/src/client.d.ts +0 -62
  44. package/src/clientConfig.d.ts +0 -29
  45. package/src/constants.d.ts +0 -82
  46. package/src/deser/base.d.ts +0 -18
  47. package/src/deser/index.d.ts +0 -3
  48. package/src/deser/integrationPolicies.d.ts +0 -106
  49. package/src/deser/kaminoLayouts.d.ts +0 -264
  50. package/src/deser/tokenAclLayouts.d.ts +0 -67
  51. package/src/error.d.ts +0 -29
  52. package/src/glamExports.d.ts +0 -5563
  53. package/src/globalConfig.d.ts +0 -22
  54. package/src/index.d.ts +0 -18
  55. package/src/models/acl.d.ts +0 -43
  56. package/src/models/index.d.ts +0 -8
  57. package/src/models/mint.d.ts +0 -64
  58. package/src/models/state.d.ts +0 -104
  59. package/src/models/types.d.ts +0 -28
  60. package/src/react/cluster-provider.d.ts +0 -22
  61. package/src/react/glam.d.ts +0 -47
  62. package/src/react/index.d.ts +0 -5
  63. package/src/react/query-keys.d.ts +0 -38
  64. package/src/react/useVaultBalanceSubscription.d.ts +0 -17
  65. package/src/utils/accounts.d.ts +0 -72
  66. package/src/utils/bitmask.d.ts +0 -53
  67. package/src/utils/blockhash.d.ts +0 -11
  68. package/src/utils/common.d.ts +0 -37
  69. package/src/utils/computeBudget.d.ts +0 -15
  70. package/src/utils/evm.d.ts +0 -10
  71. package/src/utils/fraction.d.ts +0 -29
  72. package/src/utils/glamPDAs.d.ts +0 -14
  73. package/src/utils/index.d.ts +0 -16
  74. package/src/utils/jupiterApi.d.ts +0 -89
  75. package/src/utils/lookupTables.d.ts +0 -53
  76. package/src/utils/pkmap.d.ts +0 -82
  77. package/src/utils/pkset.d.ts +0 -73
  78. package/src/utils/positionCategorizer.d.ts +0 -36
  79. package/src/utils/rpc.d.ts +0 -33
  80. package/src/utils/timelock.d.ts +0 -52
  81. package/src/utils/transaction.d.ts +0 -13
  82. package/target/types/ext_bridge.d.ts +0 -2385
  83. package/target/types/ext_cctp.d.ts +0 -1268
  84. package/target/types/ext_epi.d.ts +0 -2175
  85. package/target/types/ext_kamino.d.ts +0 -3433
  86. package/target/types/ext_marinade.d.ts +0 -1593
  87. package/target/types/ext_spl.d.ts +0 -1274
  88. package/target/types/ext_stake_pool.d.ts +0 -1622
  89. package/target/types/glam_config.d.ts +0 -755
  90. package/target/types/glam_mint.d.ts +0 -6094
  91. package/target/types/glam_protocol.d.ts +0 -2708
@@ -0,0 +1,1960 @@
1
+ {
2
+ "address": "G1NTJX2noRfJeKS7NDgjsqUXcJ7R9yARED1LQvg7iwSK",
3
+ "metadata": {
4
+ "name": "ext_jupiter",
5
+ "version": "0.1.0",
6
+ "spec": "0.1.0",
7
+ "description": "Jupiter Lend integration for GLAM Protocol"
8
+ },
9
+ "instructions": [
10
+ {
11
+ "name": "borrow_init_position",
12
+ "docs": [
13
+ "Initialize a Jupiter Borrow position NFT owned by the GLAM vault.",
14
+ "",
15
+ "- Permission: `BorrowPermissions::InitPosition`.",
16
+ "- Policy: `vault_state` must be in `BorrowPolicy::vaults_allowlist`."
17
+ ],
18
+ "discriminator": [
19
+ 92,
20
+ 209,
21
+ 176,
22
+ 14,
23
+ 75,
24
+ 243,
25
+ 107,
26
+ 230
27
+ ],
28
+ "accounts": [
29
+ {
30
+ "name": "glam_state",
31
+ "writable": true
32
+ },
33
+ {
34
+ "name": "glam_vault",
35
+ "writable": true,
36
+ "pda": {
37
+ "seeds": [
38
+ {
39
+ "kind": "const",
40
+ "value": [
41
+ 118,
42
+ 97,
43
+ 117,
44
+ 108,
45
+ 116
46
+ ]
47
+ },
48
+ {
49
+ "kind": "account",
50
+ "path": "glam_state"
51
+ }
52
+ ],
53
+ "program": {
54
+ "kind": "account",
55
+ "path": "glam_protocol_program"
56
+ }
57
+ }
58
+ },
59
+ {
60
+ "name": "glam_signer",
61
+ "writable": true,
62
+ "signer": true
63
+ },
64
+ {
65
+ "name": "integration_authority",
66
+ "pda": {
67
+ "seeds": [
68
+ {
69
+ "kind": "const",
70
+ "value": [
71
+ 105,
72
+ 110,
73
+ 116,
74
+ 101,
75
+ 103,
76
+ 114,
77
+ 97,
78
+ 116,
79
+ 105,
80
+ 111,
81
+ 110,
82
+ 45,
83
+ 97,
84
+ 117,
85
+ 116,
86
+ 104,
87
+ 111,
88
+ 114,
89
+ 105,
90
+ 116,
91
+ 121
92
+ ]
93
+ }
94
+ ]
95
+ }
96
+ },
97
+ {
98
+ "name": "cpi_program",
99
+ "address": "jupr81YtYssSyPt8jbnGuiWon5f6x9TcDEFxYe3Bdzi"
100
+ },
101
+ {
102
+ "name": "glam_protocol_program",
103
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
104
+ },
105
+ {
106
+ "name": "system_program",
107
+ "address": "11111111111111111111111111111111"
108
+ },
109
+ {
110
+ "name": "vault_admin"
111
+ },
112
+ {
113
+ "name": "vault_state",
114
+ "writable": true
115
+ },
116
+ {
117
+ "name": "position",
118
+ "writable": true
119
+ },
120
+ {
121
+ "name": "position_mint",
122
+ "writable": true
123
+ },
124
+ {
125
+ "name": "position_token_account",
126
+ "writable": true
127
+ },
128
+ {
129
+ "name": "metadata_account",
130
+ "writable": true
131
+ },
132
+ {
133
+ "name": "token_program"
134
+ },
135
+ {
136
+ "name": "associated_token_program",
137
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
138
+ },
139
+ {
140
+ "name": "sysvar_instruction",
141
+ "address": "Sysvar1nstructions1111111111111111111111111"
142
+ },
143
+ {
144
+ "name": "metadata_program",
145
+ "address": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"
146
+ },
147
+ {
148
+ "name": "rent",
149
+ "address": "SysvarRent111111111111111111111111111111111"
150
+ }
151
+ ],
152
+ "args": [
153
+ {
154
+ "name": "vault_id",
155
+ "type": "u16"
156
+ },
157
+ {
158
+ "name": "next_position_id",
159
+ "type": "u32"
160
+ }
161
+ ]
162
+ },
163
+ {
164
+ "name": "borrow_operate",
165
+ "docs": [
166
+ "Operate a Jupiter Borrow position.",
167
+ "",
168
+ "Required permissions are derived from signed deltas:",
169
+ "positive collateral = deposit, negative collateral = withdraw,",
170
+ "positive debt = borrow, negative debt = repay."
171
+ ],
172
+ "discriminator": [
173
+ 46,
174
+ 121,
175
+ 58,
176
+ 48,
177
+ 13,
178
+ 5,
179
+ 117,
180
+ 188
181
+ ],
182
+ "accounts": [
183
+ {
184
+ "name": "glam_state",
185
+ "writable": true
186
+ },
187
+ {
188
+ "name": "glam_vault",
189
+ "writable": true,
190
+ "pda": {
191
+ "seeds": [
192
+ {
193
+ "kind": "const",
194
+ "value": [
195
+ 118,
196
+ 97,
197
+ 117,
198
+ 108,
199
+ 116
200
+ ]
201
+ },
202
+ {
203
+ "kind": "account",
204
+ "path": "glam_state"
205
+ }
206
+ ],
207
+ "program": {
208
+ "kind": "account",
209
+ "path": "glam_protocol_program"
210
+ }
211
+ }
212
+ },
213
+ {
214
+ "name": "glam_signer",
215
+ "writable": true,
216
+ "signer": true
217
+ },
218
+ {
219
+ "name": "integration_authority",
220
+ "pda": {
221
+ "seeds": [
222
+ {
223
+ "kind": "const",
224
+ "value": [
225
+ 105,
226
+ 110,
227
+ 116,
228
+ 101,
229
+ 103,
230
+ 114,
231
+ 97,
232
+ 116,
233
+ 105,
234
+ 111,
235
+ 110,
236
+ 45,
237
+ 97,
238
+ 117,
239
+ 116,
240
+ 104,
241
+ 111,
242
+ 114,
243
+ 105,
244
+ 116,
245
+ 121
246
+ ]
247
+ }
248
+ ]
249
+ }
250
+ },
251
+ {
252
+ "name": "cpi_program",
253
+ "address": "jupr81YtYssSyPt8jbnGuiWon5f6x9TcDEFxYe3Bdzi"
254
+ },
255
+ {
256
+ "name": "glam_protocol_program",
257
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
258
+ },
259
+ {
260
+ "name": "system_program",
261
+ "address": "11111111111111111111111111111111"
262
+ },
263
+ {
264
+ "name": "signer_supply_token_account",
265
+ "writable": true
266
+ },
267
+ {
268
+ "name": "signer_borrow_token_account",
269
+ "writable": true
270
+ },
271
+ {
272
+ "name": "recipient",
273
+ "optional": true
274
+ },
275
+ {
276
+ "name": "recipient_borrow_token_account",
277
+ "writable": true,
278
+ "optional": true
279
+ },
280
+ {
281
+ "name": "recipient_supply_token_account",
282
+ "writable": true,
283
+ "optional": true
284
+ },
285
+ {
286
+ "name": "vault_config"
287
+ },
288
+ {
289
+ "name": "vault_state",
290
+ "writable": true
291
+ },
292
+ {
293
+ "name": "supply_token"
294
+ },
295
+ {
296
+ "name": "borrow_token"
297
+ },
298
+ {
299
+ "name": "oracle"
300
+ },
301
+ {
302
+ "name": "position",
303
+ "writable": true
304
+ },
305
+ {
306
+ "name": "position_token_account"
307
+ },
308
+ {
309
+ "name": "current_position_tick",
310
+ "writable": true
311
+ },
312
+ {
313
+ "name": "final_position_tick",
314
+ "writable": true
315
+ },
316
+ {
317
+ "name": "current_position_tick_id"
318
+ },
319
+ {
320
+ "name": "final_position_tick_id",
321
+ "writable": true
322
+ },
323
+ {
324
+ "name": "new_branch",
325
+ "writable": true
326
+ },
327
+ {
328
+ "name": "supply_token_reserves_liquidity",
329
+ "writable": true
330
+ },
331
+ {
332
+ "name": "borrow_token_reserves_liquidity",
333
+ "writable": true
334
+ },
335
+ {
336
+ "name": "vault_supply_position_on_liquidity",
337
+ "writable": true
338
+ },
339
+ {
340
+ "name": "vault_borrow_position_on_liquidity",
341
+ "writable": true
342
+ },
343
+ {
344
+ "name": "supply_rate_model"
345
+ },
346
+ {
347
+ "name": "borrow_rate_model"
348
+ },
349
+ {
350
+ "name": "vault_supply_token_account",
351
+ "writable": true
352
+ },
353
+ {
354
+ "name": "vault_borrow_token_account",
355
+ "writable": true
356
+ },
357
+ {
358
+ "name": "supply_token_claim_account",
359
+ "writable": true,
360
+ "optional": true
361
+ },
362
+ {
363
+ "name": "borrow_token_claim_account",
364
+ "writable": true,
365
+ "optional": true
366
+ },
367
+ {
368
+ "name": "liquidity"
369
+ },
370
+ {
371
+ "name": "liquidity_program",
372
+ "address": "jupeiUmn818Jg1ekPURTpr4mFo29p46vygyykFJ3wZC"
373
+ },
374
+ {
375
+ "name": "oracle_program",
376
+ "address": "jupnw4B6Eqs7ft6rxpzYLJZYSnrpRgPcr589n5Kv4oc"
377
+ },
378
+ {
379
+ "name": "supply_token_program"
380
+ },
381
+ {
382
+ "name": "borrow_token_program"
383
+ },
384
+ {
385
+ "name": "associated_token_program",
386
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
387
+ }
388
+ ],
389
+ "args": [
390
+ {
391
+ "name": "new_col",
392
+ "type": "i128"
393
+ },
394
+ {
395
+ "name": "new_debt",
396
+ "type": "i128"
397
+ },
398
+ {
399
+ "name": "transfer_type",
400
+ "type": {
401
+ "option": {
402
+ "defined": {
403
+ "name": "TransferType"
404
+ }
405
+ }
406
+ }
407
+ },
408
+ {
409
+ "name": "remaining_accounts_indices",
410
+ "type": "bytes"
411
+ }
412
+ ]
413
+ },
414
+ {
415
+ "name": "earn_deposit",
416
+ "docs": [
417
+ "Deposit underlying tokens into Jupiter Earn and mint jlTokens to the GLAM vault.",
418
+ "",
419
+ "- Permission: `EarnPermissions::Deposit`.",
420
+ "- Policy: underlying `mint` must be in `EarnPolicy::mints_allowlist`."
421
+ ],
422
+ "discriminator": [
423
+ 81,
424
+ 98,
425
+ 113,
426
+ 207,
427
+ 82,
428
+ 192,
429
+ 187,
430
+ 234
431
+ ],
432
+ "accounts": [
433
+ {
434
+ "name": "glam_state",
435
+ "writable": true
436
+ },
437
+ {
438
+ "name": "glam_vault",
439
+ "writable": true,
440
+ "pda": {
441
+ "seeds": [
442
+ {
443
+ "kind": "const",
444
+ "value": [
445
+ 118,
446
+ 97,
447
+ 117,
448
+ 108,
449
+ 116
450
+ ]
451
+ },
452
+ {
453
+ "kind": "account",
454
+ "path": "glam_state"
455
+ }
456
+ ],
457
+ "program": {
458
+ "kind": "account",
459
+ "path": "glam_protocol_program"
460
+ }
461
+ }
462
+ },
463
+ {
464
+ "name": "glam_signer",
465
+ "writable": true,
466
+ "signer": true
467
+ },
468
+ {
469
+ "name": "integration_authority",
470
+ "pda": {
471
+ "seeds": [
472
+ {
473
+ "kind": "const",
474
+ "value": [
475
+ 105,
476
+ 110,
477
+ 116,
478
+ 101,
479
+ 103,
480
+ 114,
481
+ 97,
482
+ 116,
483
+ 105,
484
+ 111,
485
+ 110,
486
+ 45,
487
+ 97,
488
+ 117,
489
+ 116,
490
+ 104,
491
+ 111,
492
+ 114,
493
+ 105,
494
+ 116,
495
+ 121
496
+ ]
497
+ }
498
+ ]
499
+ }
500
+ },
501
+ {
502
+ "name": "cpi_program",
503
+ "address": "jup3YeL8QhtSx1e253b2FDvsMNC87fDrgQZivbrndc9"
504
+ },
505
+ {
506
+ "name": "glam_protocol_program",
507
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
508
+ },
509
+ {
510
+ "name": "system_program",
511
+ "address": "11111111111111111111111111111111"
512
+ },
513
+ {
514
+ "name": "depositor_token_account",
515
+ "writable": true
516
+ },
517
+ {
518
+ "name": "recipient_token_account",
519
+ "writable": true
520
+ },
521
+ {
522
+ "name": "mint"
523
+ },
524
+ {
525
+ "name": "lending_admin"
526
+ },
527
+ {
528
+ "name": "lending",
529
+ "writable": true
530
+ },
531
+ {
532
+ "name": "f_token_mint",
533
+ "writable": true
534
+ },
535
+ {
536
+ "name": "supply_token_reserves_liquidity",
537
+ "writable": true
538
+ },
539
+ {
540
+ "name": "lending_supply_position_on_liquidity",
541
+ "writable": true
542
+ },
543
+ {
544
+ "name": "rate_model"
545
+ },
546
+ {
547
+ "name": "vault",
548
+ "writable": true
549
+ },
550
+ {
551
+ "name": "liquidity",
552
+ "writable": true
553
+ },
554
+ {
555
+ "name": "liquidity_program",
556
+ "writable": true,
557
+ "address": "jupeiUmn818Jg1ekPURTpr4mFo29p46vygyykFJ3wZC"
558
+ },
559
+ {
560
+ "name": "rewards_rate_model"
561
+ },
562
+ {
563
+ "name": "token_program"
564
+ },
565
+ {
566
+ "name": "associated_token_program",
567
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
568
+ }
569
+ ],
570
+ "args": [
571
+ {
572
+ "name": "assets",
573
+ "type": "u64"
574
+ },
575
+ {
576
+ "name": "min_amount_out",
577
+ "type": "u64"
578
+ }
579
+ ]
580
+ },
581
+ {
582
+ "name": "earn_withdraw",
583
+ "docs": [
584
+ "Burn Jupiter Earn jlTokens and withdraw underlying tokens to the GLAM vault.",
585
+ "",
586
+ "- Permission: `EarnPermissions::Withdraw`.",
587
+ "- Policy: underlying `mint` must be in `EarnPolicy::mints_allowlist`."
588
+ ],
589
+ "discriminator": [
590
+ 68,
591
+ 169,
592
+ 40,
593
+ 28,
594
+ 165,
595
+ 60,
596
+ 157,
597
+ 98
598
+ ],
599
+ "accounts": [
600
+ {
601
+ "name": "glam_state",
602
+ "writable": true
603
+ },
604
+ {
605
+ "name": "glam_vault",
606
+ "writable": true,
607
+ "pda": {
608
+ "seeds": [
609
+ {
610
+ "kind": "const",
611
+ "value": [
612
+ 118,
613
+ 97,
614
+ 117,
615
+ 108,
616
+ 116
617
+ ]
618
+ },
619
+ {
620
+ "kind": "account",
621
+ "path": "glam_state"
622
+ }
623
+ ],
624
+ "program": {
625
+ "kind": "account",
626
+ "path": "glam_protocol_program"
627
+ }
628
+ }
629
+ },
630
+ {
631
+ "name": "glam_signer",
632
+ "writable": true,
633
+ "signer": true
634
+ },
635
+ {
636
+ "name": "integration_authority",
637
+ "pda": {
638
+ "seeds": [
639
+ {
640
+ "kind": "const",
641
+ "value": [
642
+ 105,
643
+ 110,
644
+ 116,
645
+ 101,
646
+ 103,
647
+ 114,
648
+ 97,
649
+ 116,
650
+ 105,
651
+ 111,
652
+ 110,
653
+ 45,
654
+ 97,
655
+ 117,
656
+ 116,
657
+ 104,
658
+ 111,
659
+ 114,
660
+ 105,
661
+ 116,
662
+ 121
663
+ ]
664
+ }
665
+ ]
666
+ }
667
+ },
668
+ {
669
+ "name": "cpi_program",
670
+ "address": "jup3YeL8QhtSx1e253b2FDvsMNC87fDrgQZivbrndc9"
671
+ },
672
+ {
673
+ "name": "glam_protocol_program",
674
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
675
+ },
676
+ {
677
+ "name": "system_program",
678
+ "address": "11111111111111111111111111111111"
679
+ },
680
+ {
681
+ "name": "owner_token_account",
682
+ "writable": true
683
+ },
684
+ {
685
+ "name": "recipient_token_account",
686
+ "writable": true
687
+ },
688
+ {
689
+ "name": "lending_admin"
690
+ },
691
+ {
692
+ "name": "lending",
693
+ "writable": true
694
+ },
695
+ {
696
+ "name": "mint"
697
+ },
698
+ {
699
+ "name": "f_token_mint",
700
+ "writable": true
701
+ },
702
+ {
703
+ "name": "supply_token_reserves_liquidity",
704
+ "writable": true
705
+ },
706
+ {
707
+ "name": "lending_supply_position_on_liquidity",
708
+ "writable": true
709
+ },
710
+ {
711
+ "name": "rate_model"
712
+ },
713
+ {
714
+ "name": "vault",
715
+ "writable": true
716
+ },
717
+ {
718
+ "name": "claim_account",
719
+ "writable": true
720
+ },
721
+ {
722
+ "name": "liquidity",
723
+ "writable": true
724
+ },
725
+ {
726
+ "name": "liquidity_program",
727
+ "writable": true,
728
+ "address": "jupeiUmn818Jg1ekPURTpr4mFo29p46vygyykFJ3wZC"
729
+ },
730
+ {
731
+ "name": "rewards_rate_model"
732
+ },
733
+ {
734
+ "name": "token_program"
735
+ },
736
+ {
737
+ "name": "associated_token_program",
738
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
739
+ }
740
+ ],
741
+ "args": [
742
+ {
743
+ "name": "amount",
744
+ "type": "u64"
745
+ },
746
+ {
747
+ "name": "max_shares_burn",
748
+ "type": "u64"
749
+ }
750
+ ]
751
+ },
752
+ {
753
+ "name": "set_borrow_policy",
754
+ "docs": [
755
+ "Set the Jupiter Borrow policy on the GLAM state."
756
+ ],
757
+ "discriminator": [
758
+ 199,
759
+ 94,
760
+ 106,
761
+ 205,
762
+ 150,
763
+ 227,
764
+ 206,
765
+ 68
766
+ ],
767
+ "accounts": [
768
+ {
769
+ "name": "glam_state",
770
+ "writable": true
771
+ },
772
+ {
773
+ "name": "glam_signer",
774
+ "writable": true,
775
+ "signer": true
776
+ },
777
+ {
778
+ "name": "glam_protocol_program",
779
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
780
+ }
781
+ ],
782
+ "args": [
783
+ {
784
+ "name": "policy",
785
+ "type": {
786
+ "defined": {
787
+ "name": "BorrowPolicy"
788
+ }
789
+ }
790
+ }
791
+ ]
792
+ },
793
+ {
794
+ "name": "set_earn_policy",
795
+ "docs": [
796
+ "Set the Jupiter Earn policy on the GLAM state."
797
+ ],
798
+ "discriminator": [
799
+ 48,
800
+ 17,
801
+ 31,
802
+ 62,
803
+ 132,
804
+ 232,
805
+ 114,
806
+ 96
807
+ ],
808
+ "accounts": [
809
+ {
810
+ "name": "glam_state",
811
+ "writable": true
812
+ },
813
+ {
814
+ "name": "glam_signer",
815
+ "writable": true,
816
+ "signer": true
817
+ },
818
+ {
819
+ "name": "glam_protocol_program",
820
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
821
+ }
822
+ ],
823
+ "args": [
824
+ {
825
+ "name": "policy",
826
+ "type": {
827
+ "defined": {
828
+ "name": "EarnPolicy"
829
+ }
830
+ }
831
+ }
832
+ ]
833
+ }
834
+ ],
835
+ "accounts": [
836
+ {
837
+ "name": "StateAccount",
838
+ "discriminator": [
839
+ 142,
840
+ 247,
841
+ 54,
842
+ 95,
843
+ 85,
844
+ 133,
845
+ 249,
846
+ 103
847
+ ]
848
+ }
849
+ ],
850
+ "errors": [
851
+ {
852
+ "code": 6000,
853
+ "name": "UnexpectedSigner",
854
+ "msg": "Unexpected signer privilege passed to Jupiter CPI"
855
+ },
856
+ {
857
+ "code": 6001,
858
+ "name": "InvalidVaultTokenAccount",
859
+ "msg": "Vault token account must be the GLAM vault ATA for the expected mint"
860
+ },
861
+ {
862
+ "code": 6002,
863
+ "name": "InvalidPositionTokenAccount",
864
+ "msg": "Position token account must be controlled by the GLAM vault"
865
+ },
866
+ {
867
+ "code": 6003,
868
+ "name": "InvalidMetadataAccount",
869
+ "msg": "Metadata account must be the Metaplex metadata PDA for the position mint"
870
+ },
871
+ {
872
+ "code": 6004,
873
+ "name": "DuplicateMutableAccount",
874
+ "msg": "Mutable source and destination accounts must differ"
875
+ },
876
+ {
877
+ "code": 6005,
878
+ "name": "InvalidRemainingAccountIndices",
879
+ "msg": "Jupiter operate remaining account indices must contain exactly three counts"
880
+ },
881
+ {
882
+ "code": 6006,
883
+ "name": "RemainingAccountsCountMismatch",
884
+ "msg": "Jupiter operate remaining account counts do not match remaining accounts"
885
+ },
886
+ {
887
+ "code": 6007,
888
+ "name": "NoopOperate",
889
+ "msg": "Jupiter operate instruction must request at least one position change"
890
+ }
891
+ ],
892
+ "types": [
893
+ {
894
+ "name": "AccountType",
895
+ "type": {
896
+ "kind": "enum",
897
+ "variants": [
898
+ {
899
+ "name": "Vault"
900
+ },
901
+ {
902
+ "name": "TokenizedVault"
903
+ },
904
+ {
905
+ "name": "Mint"
906
+ },
907
+ {
908
+ "name": "SingleAssetVault"
909
+ }
910
+ ]
911
+ }
912
+ },
913
+ {
914
+ "name": "AccruedFees",
915
+ "type": {
916
+ "kind": "struct",
917
+ "fields": [
918
+ {
919
+ "name": "vault_subscription_fee",
920
+ "type": "u128"
921
+ },
922
+ {
923
+ "name": "vault_redemption_fee",
924
+ "type": "u128"
925
+ },
926
+ {
927
+ "name": "manager_subscription_fee",
928
+ "type": "u128"
929
+ },
930
+ {
931
+ "name": "manager_redemption_fee",
932
+ "type": "u128"
933
+ },
934
+ {
935
+ "name": "management_fee",
936
+ "type": "u128"
937
+ },
938
+ {
939
+ "name": "performance_fee",
940
+ "type": "u128"
941
+ },
942
+ {
943
+ "name": "protocol_base_fee",
944
+ "type": "u128"
945
+ },
946
+ {
947
+ "name": "protocol_flow_fee",
948
+ "type": "u128"
949
+ }
950
+ ]
951
+ }
952
+ },
953
+ {
954
+ "name": "BorrowPolicy",
955
+ "type": {
956
+ "kind": "struct",
957
+ "fields": [
958
+ {
959
+ "name": "vaults_allowlist",
960
+ "type": {
961
+ "vec": "pubkey"
962
+ }
963
+ },
964
+ {
965
+ "name": "collateral_mints_allowlist",
966
+ "type": {
967
+ "vec": "pubkey"
968
+ }
969
+ },
970
+ {
971
+ "name": "borrow_mints_allowlist",
972
+ "type": {
973
+ "vec": "pubkey"
974
+ }
975
+ }
976
+ ]
977
+ }
978
+ },
979
+ {
980
+ "name": "CreatedModel",
981
+ "type": {
982
+ "kind": "struct",
983
+ "fields": [
984
+ {
985
+ "name": "key",
986
+ "type": {
987
+ "array": [
988
+ "u8",
989
+ 8
990
+ ]
991
+ }
992
+ },
993
+ {
994
+ "name": "created_by",
995
+ "type": "pubkey"
996
+ },
997
+ {
998
+ "name": "created_at",
999
+ "type": "i64"
1000
+ }
1001
+ ]
1002
+ }
1003
+ },
1004
+ {
1005
+ "name": "DelegateAcl",
1006
+ "type": {
1007
+ "kind": "struct",
1008
+ "fields": [
1009
+ {
1010
+ "name": "pubkey",
1011
+ "type": "pubkey"
1012
+ },
1013
+ {
1014
+ "name": "integration_permissions",
1015
+ "type": {
1016
+ "vec": {
1017
+ "defined": {
1018
+ "name": "IntegrationPermissions"
1019
+ }
1020
+ }
1021
+ }
1022
+ },
1023
+ {
1024
+ "name": "expires_at",
1025
+ "type": "i64"
1026
+ }
1027
+ ]
1028
+ }
1029
+ },
1030
+ {
1031
+ "name": "EarnPolicy",
1032
+ "type": {
1033
+ "kind": "struct",
1034
+ "fields": [
1035
+ {
1036
+ "name": "mints_allowlist",
1037
+ "type": {
1038
+ "vec": "pubkey"
1039
+ }
1040
+ }
1041
+ ]
1042
+ }
1043
+ },
1044
+ {
1045
+ "name": "EngineField",
1046
+ "type": {
1047
+ "kind": "struct",
1048
+ "fields": [
1049
+ {
1050
+ "name": "name",
1051
+ "type": {
1052
+ "defined": {
1053
+ "name": "EngineFieldName"
1054
+ }
1055
+ }
1056
+ },
1057
+ {
1058
+ "name": "value",
1059
+ "type": {
1060
+ "defined": {
1061
+ "name": "EngineFieldValue"
1062
+ }
1063
+ }
1064
+ }
1065
+ ]
1066
+ }
1067
+ },
1068
+ {
1069
+ "name": "EngineFieldName",
1070
+ "type": {
1071
+ "kind": "enum",
1072
+ "variants": [
1073
+ {
1074
+ "name": "Owner"
1075
+ },
1076
+ {
1077
+ "name": "PortfolioManagerName"
1078
+ },
1079
+ {
1080
+ "name": "Name"
1081
+ },
1082
+ {
1083
+ "name": "Uri"
1084
+ },
1085
+ {
1086
+ "name": "Assets"
1087
+ },
1088
+ {
1089
+ "name": "DelegateAcls"
1090
+ },
1091
+ {
1092
+ "name": "IntegrationAcls"
1093
+ },
1094
+ {
1095
+ "name": "TimelockDuration"
1096
+ },
1097
+ {
1098
+ "name": "Borrowable"
1099
+ },
1100
+ {
1101
+ "name": "DefaultAccountStateFrozen"
1102
+ },
1103
+ {
1104
+ "name": "PermanentDelegate"
1105
+ },
1106
+ {
1107
+ "name": "NotifyAndSettle"
1108
+ },
1109
+ {
1110
+ "name": "FeeStructure"
1111
+ },
1112
+ {
1113
+ "name": "FeeParams"
1114
+ },
1115
+ {
1116
+ "name": "ClaimableFees"
1117
+ },
1118
+ {
1119
+ "name": "ClaimedFees"
1120
+ },
1121
+ {
1122
+ "name": "OracleConfigs"
1123
+ }
1124
+ ]
1125
+ }
1126
+ },
1127
+ {
1128
+ "name": "EngineFieldValue",
1129
+ "type": {
1130
+ "kind": "enum",
1131
+ "variants": [
1132
+ {
1133
+ "name": "Boolean",
1134
+ "fields": [
1135
+ {
1136
+ "name": "val",
1137
+ "type": "bool"
1138
+ }
1139
+ ]
1140
+ },
1141
+ {
1142
+ "name": "U8",
1143
+ "fields": [
1144
+ {
1145
+ "name": "val",
1146
+ "type": "u8"
1147
+ }
1148
+ ]
1149
+ },
1150
+ {
1151
+ "name": "U32",
1152
+ "fields": [
1153
+ {
1154
+ "name": "val",
1155
+ "type": "u32"
1156
+ }
1157
+ ]
1158
+ },
1159
+ {
1160
+ "name": "U64",
1161
+ "fields": [
1162
+ {
1163
+ "name": "val",
1164
+ "type": "u64"
1165
+ }
1166
+ ]
1167
+ },
1168
+ {
1169
+ "name": "String",
1170
+ "fields": [
1171
+ {
1172
+ "name": "val",
1173
+ "type": "string"
1174
+ }
1175
+ ]
1176
+ },
1177
+ {
1178
+ "name": "Pubkey",
1179
+ "fields": [
1180
+ {
1181
+ "name": "val",
1182
+ "type": "pubkey"
1183
+ }
1184
+ ]
1185
+ },
1186
+ {
1187
+ "name": "VecPubkey",
1188
+ "fields": [
1189
+ {
1190
+ "name": "val",
1191
+ "type": {
1192
+ "vec": "pubkey"
1193
+ }
1194
+ }
1195
+ ]
1196
+ },
1197
+ {
1198
+ "name": "VecU8",
1199
+ "fields": [
1200
+ {
1201
+ "name": "val",
1202
+ "type": "bytes"
1203
+ }
1204
+ ]
1205
+ },
1206
+ {
1207
+ "name": "VecU32",
1208
+ "fields": [
1209
+ {
1210
+ "name": "val",
1211
+ "type": {
1212
+ "vec": "u32"
1213
+ }
1214
+ }
1215
+ ]
1216
+ },
1217
+ {
1218
+ "name": "VecDelegateAcl",
1219
+ "fields": [
1220
+ {
1221
+ "name": "val",
1222
+ "type": {
1223
+ "vec": {
1224
+ "defined": {
1225
+ "name": "DelegateAcl"
1226
+ }
1227
+ }
1228
+ }
1229
+ }
1230
+ ]
1231
+ },
1232
+ {
1233
+ "name": "VecIntegrationAcl",
1234
+ "fields": [
1235
+ {
1236
+ "name": "val",
1237
+ "type": {
1238
+ "vec": {
1239
+ "defined": {
1240
+ "name": "IntegrationAcl"
1241
+ }
1242
+ }
1243
+ }
1244
+ }
1245
+ ]
1246
+ },
1247
+ {
1248
+ "name": "FeeStructure",
1249
+ "fields": [
1250
+ {
1251
+ "name": "val",
1252
+ "type": {
1253
+ "defined": {
1254
+ "name": "FeeStructure"
1255
+ }
1256
+ }
1257
+ }
1258
+ ]
1259
+ },
1260
+ {
1261
+ "name": "FeeParams",
1262
+ "fields": [
1263
+ {
1264
+ "name": "val",
1265
+ "type": {
1266
+ "defined": {
1267
+ "name": "FeeParams"
1268
+ }
1269
+ }
1270
+ }
1271
+ ]
1272
+ },
1273
+ {
1274
+ "name": "AccruedFees",
1275
+ "fields": [
1276
+ {
1277
+ "name": "val",
1278
+ "type": {
1279
+ "defined": {
1280
+ "name": "AccruedFees"
1281
+ }
1282
+ }
1283
+ }
1284
+ ]
1285
+ },
1286
+ {
1287
+ "name": "NotifyAndSettle",
1288
+ "fields": [
1289
+ {
1290
+ "name": "val",
1291
+ "type": {
1292
+ "defined": {
1293
+ "name": "NotifyAndSettle"
1294
+ }
1295
+ }
1296
+ }
1297
+ ]
1298
+ },
1299
+ {
1300
+ "name": "OracleConfigs",
1301
+ "fields": [
1302
+ {
1303
+ "name": "val",
1304
+ "type": {
1305
+ "defined": {
1306
+ "name": "OracleConfigs"
1307
+ }
1308
+ }
1309
+ }
1310
+ ]
1311
+ }
1312
+ ]
1313
+ }
1314
+ },
1315
+ {
1316
+ "name": "EntryExitFees",
1317
+ "type": {
1318
+ "kind": "struct",
1319
+ "fields": [
1320
+ {
1321
+ "name": "subscription_fee_bps",
1322
+ "type": "u16"
1323
+ },
1324
+ {
1325
+ "name": "redemption_fee_bps",
1326
+ "type": "u16"
1327
+ }
1328
+ ]
1329
+ }
1330
+ },
1331
+ {
1332
+ "name": "FeeParams",
1333
+ "type": {
1334
+ "kind": "struct",
1335
+ "fields": [
1336
+ {
1337
+ "name": "year_in_seconds",
1338
+ "type": "u32"
1339
+ },
1340
+ {
1341
+ "name": "pa_high_water_mark",
1342
+ "type": "i128"
1343
+ },
1344
+ {
1345
+ "name": "pa_last_nav",
1346
+ "type": "i128"
1347
+ },
1348
+ {
1349
+ "name": "last_aum",
1350
+ "type": "i128"
1351
+ },
1352
+ {
1353
+ "name": "last_performance_fee_crystallized",
1354
+ "type": "i64"
1355
+ },
1356
+ {
1357
+ "name": "last_management_fee_crystallized",
1358
+ "type": "i64"
1359
+ },
1360
+ {
1361
+ "name": "last_protocol_fee_crystallized",
1362
+ "type": "i64"
1363
+ }
1364
+ ]
1365
+ }
1366
+ },
1367
+ {
1368
+ "name": "FeeStructure",
1369
+ "type": {
1370
+ "kind": "struct",
1371
+ "fields": [
1372
+ {
1373
+ "name": "vault",
1374
+ "type": {
1375
+ "defined": {
1376
+ "name": "EntryExitFees"
1377
+ }
1378
+ }
1379
+ },
1380
+ {
1381
+ "name": "manager",
1382
+ "type": {
1383
+ "defined": {
1384
+ "name": "EntryExitFees"
1385
+ }
1386
+ }
1387
+ },
1388
+ {
1389
+ "name": "management",
1390
+ "type": {
1391
+ "defined": {
1392
+ "name": "ManagementFee"
1393
+ }
1394
+ }
1395
+ },
1396
+ {
1397
+ "name": "performance",
1398
+ "type": {
1399
+ "defined": {
1400
+ "name": "PerformanceFee"
1401
+ }
1402
+ }
1403
+ },
1404
+ {
1405
+ "name": "protocol",
1406
+ "type": {
1407
+ "defined": {
1408
+ "name": "ProtocolFees"
1409
+ }
1410
+ }
1411
+ }
1412
+ ]
1413
+ }
1414
+ },
1415
+ {
1416
+ "name": "HurdleType",
1417
+ "type": {
1418
+ "kind": "enum",
1419
+ "variants": [
1420
+ {
1421
+ "name": "Hard"
1422
+ },
1423
+ {
1424
+ "name": "Soft"
1425
+ }
1426
+ ]
1427
+ }
1428
+ },
1429
+ {
1430
+ "name": "IntegrationAcl",
1431
+ "docs": [
1432
+ "An integration program can have multiple protocols supported.",
1433
+ "Enabled protocols are stored in a bitmask, and each protocol can have its own policy."
1434
+ ],
1435
+ "type": {
1436
+ "kind": "struct",
1437
+ "fields": [
1438
+ {
1439
+ "name": "integration_program",
1440
+ "type": "pubkey"
1441
+ },
1442
+ {
1443
+ "name": "protocols_bitmask",
1444
+ "type": "u16"
1445
+ },
1446
+ {
1447
+ "name": "protocol_policies",
1448
+ "type": {
1449
+ "vec": {
1450
+ "defined": {
1451
+ "name": "ProtocolPolicy"
1452
+ }
1453
+ }
1454
+ }
1455
+ }
1456
+ ]
1457
+ }
1458
+ },
1459
+ {
1460
+ "name": "IntegrationPermissions",
1461
+ "docs": [
1462
+ "Stores delegate permissions for an integration program."
1463
+ ],
1464
+ "type": {
1465
+ "kind": "struct",
1466
+ "fields": [
1467
+ {
1468
+ "name": "integration_program",
1469
+ "type": "pubkey"
1470
+ },
1471
+ {
1472
+ "name": "protocol_permissions",
1473
+ "type": {
1474
+ "vec": {
1475
+ "defined": {
1476
+ "name": "ProtocolPermissions"
1477
+ }
1478
+ }
1479
+ }
1480
+ }
1481
+ ]
1482
+ }
1483
+ },
1484
+ {
1485
+ "name": "ManagementFee",
1486
+ "type": {
1487
+ "kind": "struct",
1488
+ "fields": [
1489
+ {
1490
+ "name": "fee_bps",
1491
+ "type": "u16"
1492
+ }
1493
+ ]
1494
+ }
1495
+ },
1496
+ {
1497
+ "name": "NoticePeriodType",
1498
+ "type": {
1499
+ "kind": "enum",
1500
+ "variants": [
1501
+ {
1502
+ "name": "Hard"
1503
+ },
1504
+ {
1505
+ "name": "Soft"
1506
+ }
1507
+ ]
1508
+ }
1509
+ },
1510
+ {
1511
+ "name": "NotifyAndSettle",
1512
+ "type": {
1513
+ "kind": "struct",
1514
+ "fields": [
1515
+ {
1516
+ "name": "model",
1517
+ "type": {
1518
+ "defined": {
1519
+ "name": "ValuationModel"
1520
+ }
1521
+ }
1522
+ },
1523
+ {
1524
+ "name": "permissionless_fulfillment",
1525
+ "type": "bool"
1526
+ },
1527
+ {
1528
+ "name": "subscribe_notice_period_type",
1529
+ "type": {
1530
+ "defined": {
1531
+ "name": "NoticePeriodType"
1532
+ }
1533
+ }
1534
+ },
1535
+ {
1536
+ "name": "subscribe_notice_period",
1537
+ "type": "u64"
1538
+ },
1539
+ {
1540
+ "name": "subscribe_settlement_period",
1541
+ "type": "u64"
1542
+ },
1543
+ {
1544
+ "name": "subscribe_cancellation_window",
1545
+ "type": "u64"
1546
+ },
1547
+ {
1548
+ "name": "redeem_notice_period_type",
1549
+ "type": {
1550
+ "defined": {
1551
+ "name": "NoticePeriodType"
1552
+ }
1553
+ }
1554
+ },
1555
+ {
1556
+ "name": "redeem_notice_period",
1557
+ "type": "u64"
1558
+ },
1559
+ {
1560
+ "name": "redeem_settlement_period",
1561
+ "type": "u64"
1562
+ },
1563
+ {
1564
+ "name": "redeem_cancellation_window",
1565
+ "type": "u64"
1566
+ },
1567
+ {
1568
+ "name": "time_unit",
1569
+ "type": {
1570
+ "defined": {
1571
+ "name": "TimeUnit"
1572
+ }
1573
+ }
1574
+ },
1575
+ {
1576
+ "name": "_padding",
1577
+ "type": {
1578
+ "array": [
1579
+ "u8",
1580
+ 3
1581
+ ]
1582
+ }
1583
+ }
1584
+ ]
1585
+ }
1586
+ },
1587
+ {
1588
+ "name": "OracleConfigs",
1589
+ "docs": [
1590
+ "Vault-specific oracle configs. If available, these configs are preferred over the global config."
1591
+ ],
1592
+ "type": {
1593
+ "kind": "struct",
1594
+ "fields": [
1595
+ {
1596
+ "name": "max_ages_seconds",
1597
+ "type": {
1598
+ "vec": {
1599
+ "array": [
1600
+ "u16",
1601
+ 2
1602
+ ]
1603
+ }
1604
+ }
1605
+ },
1606
+ {
1607
+ "name": "padding",
1608
+ "type": {
1609
+ "array": [
1610
+ "u8",
1611
+ 12
1612
+ ]
1613
+ }
1614
+ }
1615
+ ]
1616
+ }
1617
+ },
1618
+ {
1619
+ "name": "PerformanceFee",
1620
+ "type": {
1621
+ "kind": "struct",
1622
+ "fields": [
1623
+ {
1624
+ "name": "fee_bps",
1625
+ "type": "u16"
1626
+ },
1627
+ {
1628
+ "name": "hurdle_rate_bps",
1629
+ "type": "u16"
1630
+ },
1631
+ {
1632
+ "name": "hurdle_type",
1633
+ "type": {
1634
+ "defined": {
1635
+ "name": "HurdleType"
1636
+ }
1637
+ }
1638
+ }
1639
+ ]
1640
+ }
1641
+ },
1642
+ {
1643
+ "name": "PricedProtocol",
1644
+ "type": {
1645
+ "kind": "struct",
1646
+ "fields": [
1647
+ {
1648
+ "name": "rent",
1649
+ "type": "u64"
1650
+ },
1651
+ {
1652
+ "name": "amount",
1653
+ "type": "i128"
1654
+ },
1655
+ {
1656
+ "name": "decimals",
1657
+ "type": "u8"
1658
+ },
1659
+ {
1660
+ "name": "last_updated_slot",
1661
+ "type": "u64"
1662
+ },
1663
+ {
1664
+ "name": "integration_program",
1665
+ "type": "pubkey"
1666
+ },
1667
+ {
1668
+ "name": "protocol_bitflag",
1669
+ "type": "u16"
1670
+ },
1671
+ {
1672
+ "name": "positions",
1673
+ "type": {
1674
+ "vec": "pubkey"
1675
+ }
1676
+ }
1677
+ ]
1678
+ }
1679
+ },
1680
+ {
1681
+ "name": "ProtocolFees",
1682
+ "type": {
1683
+ "kind": "struct",
1684
+ "fields": [
1685
+ {
1686
+ "name": "base_fee_bps",
1687
+ "type": "u16"
1688
+ },
1689
+ {
1690
+ "name": "flow_fee_bps",
1691
+ "type": "u16"
1692
+ }
1693
+ ]
1694
+ }
1695
+ },
1696
+ {
1697
+ "name": "ProtocolPermissions",
1698
+ "docs": [
1699
+ "Represents a delegate's permissions for a specific protocol"
1700
+ ],
1701
+ "type": {
1702
+ "kind": "struct",
1703
+ "fields": [
1704
+ {
1705
+ "name": "protocol_bitflag",
1706
+ "type": "u16"
1707
+ },
1708
+ {
1709
+ "name": "permissions_bitmask",
1710
+ "type": "u64"
1711
+ }
1712
+ ]
1713
+ }
1714
+ },
1715
+ {
1716
+ "name": "ProtocolPolicy",
1717
+ "docs": [
1718
+ "Stores policy data for an integrated protocol.",
1719
+ "Integration programs serialize/deserialize this data."
1720
+ ],
1721
+ "type": {
1722
+ "kind": "struct",
1723
+ "fields": [
1724
+ {
1725
+ "name": "protocol_bitflag",
1726
+ "type": "u16"
1727
+ },
1728
+ {
1729
+ "name": "data",
1730
+ "type": "bytes"
1731
+ }
1732
+ ]
1733
+ }
1734
+ },
1735
+ {
1736
+ "name": "StateAccount",
1737
+ "type": {
1738
+ "kind": "struct",
1739
+ "fields": [
1740
+ {
1741
+ "name": "account_type",
1742
+ "type": {
1743
+ "defined": {
1744
+ "name": "AccountType"
1745
+ }
1746
+ }
1747
+ },
1748
+ {
1749
+ "name": "enabled",
1750
+ "type": "bool"
1751
+ },
1752
+ {
1753
+ "name": "vault",
1754
+ "type": "pubkey"
1755
+ },
1756
+ {
1757
+ "name": "owner",
1758
+ "type": "pubkey"
1759
+ },
1760
+ {
1761
+ "name": "portfolio_manager_name",
1762
+ "type": {
1763
+ "array": [
1764
+ "u8",
1765
+ 32
1766
+ ]
1767
+ }
1768
+ },
1769
+ {
1770
+ "name": "created",
1771
+ "type": {
1772
+ "defined": {
1773
+ "name": "CreatedModel"
1774
+ }
1775
+ }
1776
+ },
1777
+ {
1778
+ "name": "base_asset_mint",
1779
+ "type": "pubkey"
1780
+ },
1781
+ {
1782
+ "name": "base_asset_decimals",
1783
+ "type": "u8"
1784
+ },
1785
+ {
1786
+ "name": "base_asset_token_program",
1787
+ "type": "u8"
1788
+ },
1789
+ {
1790
+ "name": "name",
1791
+ "type": {
1792
+ "array": [
1793
+ "u8",
1794
+ 32
1795
+ ]
1796
+ }
1797
+ },
1798
+ {
1799
+ "name": "timelock_duration",
1800
+ "type": "u32"
1801
+ },
1802
+ {
1803
+ "name": "timelock_expires_at",
1804
+ "type": "u64"
1805
+ },
1806
+ {
1807
+ "name": "mint",
1808
+ "type": "pubkey"
1809
+ },
1810
+ {
1811
+ "name": "assets",
1812
+ "type": {
1813
+ "vec": "pubkey"
1814
+ }
1815
+ },
1816
+ {
1817
+ "name": "integration_acls",
1818
+ "type": {
1819
+ "vec": {
1820
+ "defined": {
1821
+ "name": "IntegrationAcl"
1822
+ }
1823
+ }
1824
+ }
1825
+ },
1826
+ {
1827
+ "name": "delegate_acls",
1828
+ "type": {
1829
+ "vec": {
1830
+ "defined": {
1831
+ "name": "DelegateAcl"
1832
+ }
1833
+ }
1834
+ }
1835
+ },
1836
+ {
1837
+ "name": "external_positions",
1838
+ "type": {
1839
+ "vec": "pubkey"
1840
+ }
1841
+ },
1842
+ {
1843
+ "name": "priced_protocols",
1844
+ "type": {
1845
+ "vec": {
1846
+ "defined": {
1847
+ "name": "PricedProtocol"
1848
+ }
1849
+ }
1850
+ }
1851
+ },
1852
+ {
1853
+ "name": "params",
1854
+ "type": {
1855
+ "vec": {
1856
+ "vec": {
1857
+ "defined": {
1858
+ "name": "EngineField"
1859
+ }
1860
+ }
1861
+ }
1862
+ }
1863
+ }
1864
+ ]
1865
+ }
1866
+ },
1867
+ {
1868
+ "name": "TimeUnit",
1869
+ "type": {
1870
+ "kind": "enum",
1871
+ "variants": [
1872
+ {
1873
+ "name": "Second"
1874
+ },
1875
+ {
1876
+ "name": "Slot"
1877
+ }
1878
+ ]
1879
+ }
1880
+ },
1881
+ {
1882
+ "name": "TransferType",
1883
+ "type": {
1884
+ "kind": "enum",
1885
+ "variants": [
1886
+ {
1887
+ "name": "SKIP"
1888
+ },
1889
+ {
1890
+ "name": "DIRECT"
1891
+ },
1892
+ {
1893
+ "name": "CLAIM"
1894
+ }
1895
+ ]
1896
+ }
1897
+ },
1898
+ {
1899
+ "name": "ValuationModel",
1900
+ "type": {
1901
+ "kind": "enum",
1902
+ "variants": [
1903
+ {
1904
+ "name": "Continuous"
1905
+ },
1906
+ {
1907
+ "name": "Periodic"
1908
+ }
1909
+ ]
1910
+ }
1911
+ }
1912
+ ],
1913
+ "constants": [
1914
+ {
1915
+ "name": "PROTO_JUPITER_BORROW",
1916
+ "type": "u16",
1917
+ "value": "2"
1918
+ },
1919
+ {
1920
+ "name": "PROTO_JUPITER_BORROW_PERM_BORROW",
1921
+ "type": "u64",
1922
+ "value": "8"
1923
+ },
1924
+ {
1925
+ "name": "PROTO_JUPITER_BORROW_PERM_DEPOSIT_COLLATERAL",
1926
+ "type": "u64",
1927
+ "value": "2"
1928
+ },
1929
+ {
1930
+ "name": "PROTO_JUPITER_BORROW_PERM_INIT_POSITION",
1931
+ "type": "u64",
1932
+ "value": "1"
1933
+ },
1934
+ {
1935
+ "name": "PROTO_JUPITER_BORROW_PERM_REPAY",
1936
+ "type": "u64",
1937
+ "value": "16"
1938
+ },
1939
+ {
1940
+ "name": "PROTO_JUPITER_BORROW_PERM_WITHDRAW_COLLATERAL",
1941
+ "type": "u64",
1942
+ "value": "4"
1943
+ },
1944
+ {
1945
+ "name": "PROTO_JUPITER_EARN",
1946
+ "type": "u16",
1947
+ "value": "1"
1948
+ },
1949
+ {
1950
+ "name": "PROTO_JUPITER_EARN_PERM_DEPOSIT",
1951
+ "type": "u64",
1952
+ "value": "1"
1953
+ },
1954
+ {
1955
+ "name": "PROTO_JUPITER_EARN_PERM_WITHDRAW",
1956
+ "type": "u64",
1957
+ "value": "2"
1958
+ }
1959
+ ]
1960
+ }