@glamsystems/glam-sdk 1.1.0-alpha.1 → 1.1.0-alpha.2

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 (85) hide show
  1. package/index.cjs.js +6583 -2920
  2. package/index.esm.js +6575 -2909
  3. package/package.json +2 -2
  4. package/target/idl/glam_mint-staging.json +18 -15
  5. package/target/idl/glam_protocol-staging.json +5 -0
  6. package/target/idl/glam_protocol.json +5 -0
  7. package/target/types/glam_mint-staging.ts +18 -15
  8. package/target/types/glam_protocol-staging.ts +5 -0
  9. package/target/types/glam_protocol.ts +5 -0
  10. package/src/assets.d.ts +0 -39
  11. package/src/client/access.d.ts +0 -57
  12. package/src/client/base.d.ts +0 -184
  13. package/src/client/bridge.d.ts +0 -183
  14. package/src/client/bridgeRegistry.d.ts +0 -32
  15. package/src/client/cctp.d.ts +0 -156
  16. package/src/client/epi.d.ts +0 -78
  17. package/src/client/fees.d.ts +0 -33
  18. package/src/client/invest.d.ts +0 -37
  19. package/src/client/jupiter.d.ts +0 -45
  20. package/src/client/kamino/farm.d.ts +0 -39
  21. package/src/client/kamino/index.d.ts +0 -4
  22. package/src/client/kamino/lending.d.ts +0 -86
  23. package/src/client/kamino/types.d.ts +0 -56
  24. package/src/client/kamino/vaults.d.ts +0 -31
  25. package/src/client/loopscale.d.ts +0 -84
  26. package/src/client/marinade.d.ts +0 -42
  27. package/src/client/mint.d.ts +0 -127
  28. package/src/client/neutral.d.ts +0 -109
  29. package/src/client/price.d.ts +0 -138
  30. package/src/client/stake-pool.d.ts +0 -39
  31. package/src/client/stake.d.ts +0 -34
  32. package/src/client/state.d.ts +0 -56
  33. package/src/client/timelock.d.ts +0 -31
  34. package/src/client/vault.d.ts +0 -90
  35. package/src/client.d.ts +0 -68
  36. package/src/clientConfig.d.ts +0 -29
  37. package/src/constants.d.ts +0 -84
  38. package/src/deser/base.d.ts +0 -18
  39. package/src/deser/index.d.ts +0 -3
  40. package/src/deser/integrationPolicies.d.ts +0 -120
  41. package/src/deser/kaminoLayouts.d.ts +0 -264
  42. package/src/deser/tokenAclLayouts.d.ts +0 -67
  43. package/src/error.d.ts +0 -29
  44. package/src/glamExports.d.ts +0 -5116
  45. package/src/globalConfig.d.ts +0 -27
  46. package/src/index.d.ts +0 -20
  47. package/src/models/acl.d.ts +0 -43
  48. package/src/models/index.d.ts +0 -8
  49. package/src/models/mint.d.ts +0 -64
  50. package/src/models/state.d.ts +0 -104
  51. package/src/models/types.d.ts +0 -28
  52. package/src/react/cluster-provider.d.ts +0 -22
  53. package/src/react/glam.d.ts +0 -47
  54. package/src/react/index.d.ts +0 -5
  55. package/src/react/query-keys.d.ts +0 -38
  56. package/src/react/useVaultBalanceSubscription.d.ts +0 -17
  57. package/src/utils/accounts.d.ts +0 -72
  58. package/src/utils/bitmask.d.ts +0 -53
  59. package/src/utils/blockhash.d.ts +0 -11
  60. package/src/utils/common.d.ts +0 -37
  61. package/src/utils/computeBudget.d.ts +0 -15
  62. package/src/utils/evm.d.ts +0 -10
  63. package/src/utils/fraction.d.ts +0 -29
  64. package/src/utils/glamPDAs.d.ts +0 -15
  65. package/src/utils/index.d.ts +0 -16
  66. package/src/utils/jupiterApi.d.ts +0 -89
  67. package/src/utils/lookupTables.d.ts +0 -53
  68. package/src/utils/pkmap.d.ts +0 -87
  69. package/src/utils/pkset.d.ts +0 -73
  70. package/src/utils/positionCategorizer.d.ts +0 -36
  71. package/src/utils/rpc.d.ts +0 -33
  72. package/src/utils/timelock.d.ts +0 -52
  73. package/src/utils/transaction.d.ts +0 -13
  74. package/target/types/ext_bridge.d.ts +0 -2385
  75. package/target/types/ext_cctp.d.ts +0 -1268
  76. package/target/types/ext_epi.d.ts +0 -2175
  77. package/target/types/ext_kamino.d.ts +0 -3433
  78. package/target/types/ext_loopscale.d.ts +0 -3547
  79. package/target/types/ext_marinade.d.ts +0 -1593
  80. package/target/types/ext_neutral.d.ts +0 -1670
  81. package/target/types/ext_spl.d.ts +0 -1274
  82. package/target/types/ext_stake_pool.d.ts +0 -1622
  83. package/target/types/glam_config.d.ts +0 -755
  84. package/target/types/glam_mint.d.ts +0 -6106
  85. package/target/types/glam_protocol.d.ts +0 -2708
@@ -1,1670 +0,0 @@
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_neutral.json`.
6
- */
7
- export type ExtNeutral = {
8
- "address": "G1NTNTpbUDVvXHQE6eGgYTBxWpwgLMBBPw4NrZYr5yM5";
9
- "metadata": {
10
- "name": "extNeutral";
11
- "version": "0.1.0";
12
- "spec": "0.1.0";
13
- "description": "Neutral bundle integration for GLAM Protocol";
14
- };
15
- "instructions": [
16
- {
17
- "name": "closeUserBundleAccount";
18
- "docs": [
19
- "Close an empty Neutral user bundle account and remove it from GLAM external positions.",
20
- "",
21
- "- Permission: `CloseUserBundleAccount`.",
22
- "- Policy: `bundle_account` must be present in `NeutralPolicy::bundles_allowlist`."
23
- ];
24
- "discriminator": [
25
- 201,
26
- 195,
27
- 126,
28
- 228,
29
- 9,
30
- 173,
31
- 79,
32
- 215
33
- ];
34
- "accounts": [
35
- {
36
- "name": "glamState";
37
- "writable": true;
38
- },
39
- {
40
- "name": "glamVault";
41
- "writable": true;
42
- "pda": {
43
- "seeds": [
44
- {
45
- "kind": "const";
46
- "value": [
47
- 118,
48
- 97,
49
- 117,
50
- 108,
51
- 116
52
- ];
53
- },
54
- {
55
- "kind": "account";
56
- "path": "glamState";
57
- }
58
- ];
59
- "program": {
60
- "kind": "account";
61
- "path": "glamProtocolProgram";
62
- };
63
- };
64
- },
65
- {
66
- "name": "glamSigner";
67
- "writable": true;
68
- "signer": true;
69
- },
70
- {
71
- "name": "integrationAuthority";
72
- "pda": {
73
- "seeds": [
74
- {
75
- "kind": "const";
76
- "value": [
77
- 105,
78
- 110,
79
- 116,
80
- 101,
81
- 103,
82
- 114,
83
- 97,
84
- 116,
85
- 105,
86
- 111,
87
- 110,
88
- 45,
89
- 97,
90
- 117,
91
- 116,
92
- 104,
93
- 111,
94
- 114,
95
- 105,
96
- 116,
97
- 121
98
- ];
99
- }
100
- ];
101
- };
102
- },
103
- {
104
- "name": "cpiProgram";
105
- "address": "BUNDDh4P5XviMm1f3gCvnq2qKx6TGosAGnoUK12e7cXU";
106
- },
107
- {
108
- "name": "glamProtocolProgram";
109
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
110
- },
111
- {
112
- "name": "systemProgram";
113
- "address": "11111111111111111111111111111111";
114
- },
115
- {
116
- "name": "userBundleAccount";
117
- "writable": true;
118
- },
119
- {
120
- "name": "bundleAccount";
121
- }
122
- ];
123
- "args": [];
124
- },
125
- {
126
- "name": "initializeBundleDepositor";
127
- "docs": [
128
- "Initialize a non-permissioned Neutral user bundle account for the GLAM vault.",
129
- "",
130
- "- Permission: `InitializeBundleDepositor`.",
131
- "- Policy: `bundle_account` must be present in `NeutralPolicy::bundles_allowlist`."
132
- ];
133
- "discriminator": [
134
- 126,
135
- 6,
136
- 242,
137
- 36,
138
- 22,
139
- 209,
140
- 35,
141
- 2
142
- ];
143
- "accounts": [
144
- {
145
- "name": "glamState";
146
- "writable": true;
147
- },
148
- {
149
- "name": "glamVault";
150
- "writable": true;
151
- "pda": {
152
- "seeds": [
153
- {
154
- "kind": "const";
155
- "value": [
156
- 118,
157
- 97,
158
- 117,
159
- 108,
160
- 116
161
- ];
162
- },
163
- {
164
- "kind": "account";
165
- "path": "glamState";
166
- }
167
- ];
168
- "program": {
169
- "kind": "account";
170
- "path": "glamProtocolProgram";
171
- };
172
- };
173
- },
174
- {
175
- "name": "glamSigner";
176
- "writable": true;
177
- "signer": true;
178
- },
179
- {
180
- "name": "integrationAuthority";
181
- "pda": {
182
- "seeds": [
183
- {
184
- "kind": "const";
185
- "value": [
186
- 105,
187
- 110,
188
- 116,
189
- 101,
190
- 103,
191
- 114,
192
- 97,
193
- 116,
194
- 105,
195
- 111,
196
- 110,
197
- 45,
198
- 97,
199
- 117,
200
- 116,
201
- 104,
202
- 111,
203
- 114,
204
- 105,
205
- 116,
206
- 121
207
- ];
208
- }
209
- ];
210
- };
211
- },
212
- {
213
- "name": "cpiProgram";
214
- "address": "BUNDDh4P5XviMm1f3gCvnq2qKx6TGosAGnoUK12e7cXU";
215
- },
216
- {
217
- "name": "glamProtocolProgram";
218
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
219
- },
220
- {
221
- "name": "systemProgram";
222
- "address": "11111111111111111111111111111111";
223
- },
224
- {
225
- "name": "bundleAccount";
226
- "writable": true;
227
- },
228
- {
229
- "name": "userBundleAccount";
230
- "writable": true;
231
- }
232
- ];
233
- "args": [];
234
- },
235
- {
236
- "name": "requestDeposit";
237
- "docs": [
238
- "Request a Neutral bundle deposit from the GLAM vault's token account.",
239
- "",
240
- "- Permission: `RequestDeposit`.",
241
- "- Policy: `bundle_account` must be present in `NeutralPolicy::bundles_allowlist`."
242
- ];
243
- "discriminator": [
244
- 243,
245
- 202,
246
- 197,
247
- 215,
248
- 135,
249
- 97,
250
- 213,
251
- 109
252
- ];
253
- "accounts": [
254
- {
255
- "name": "glamState";
256
- "writable": true;
257
- },
258
- {
259
- "name": "glamVault";
260
- "writable": true;
261
- "pda": {
262
- "seeds": [
263
- {
264
- "kind": "const";
265
- "value": [
266
- 118,
267
- 97,
268
- 117,
269
- 108,
270
- 116
271
- ];
272
- },
273
- {
274
- "kind": "account";
275
- "path": "glamState";
276
- }
277
- ];
278
- "program": {
279
- "kind": "account";
280
- "path": "glamProtocolProgram";
281
- };
282
- };
283
- },
284
- {
285
- "name": "glamSigner";
286
- "writable": true;
287
- "signer": true;
288
- },
289
- {
290
- "name": "integrationAuthority";
291
- "pda": {
292
- "seeds": [
293
- {
294
- "kind": "const";
295
- "value": [
296
- 105,
297
- 110,
298
- 116,
299
- 101,
300
- 103,
301
- 114,
302
- 97,
303
- 116,
304
- 105,
305
- 111,
306
- 110,
307
- 45,
308
- 97,
309
- 117,
310
- 116,
311
- 104,
312
- 111,
313
- 114,
314
- 105,
315
- 116,
316
- 121
317
- ];
318
- }
319
- ];
320
- };
321
- },
322
- {
323
- "name": "cpiProgram";
324
- "address": "BUNDDh4P5XviMm1f3gCvnq2qKx6TGosAGnoUK12e7cXU";
325
- },
326
- {
327
- "name": "glamProtocolProgram";
328
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
329
- },
330
- {
331
- "name": "systemProgram";
332
- "address": "11111111111111111111111111111111";
333
- },
334
- {
335
- "name": "userTokenAccount";
336
- "writable": true;
337
- },
338
- {
339
- "name": "pendingDepositTokenAccount";
340
- "writable": true;
341
- },
342
- {
343
- "name": "treasuryAccount";
344
- "writable": true;
345
- },
346
- {
347
- "name": "userBundleAccount";
348
- "writable": true;
349
- },
350
- {
351
- "name": "assetAddress";
352
- "writable": true;
353
- },
354
- {
355
- "name": "oracleData";
356
- "writable": true;
357
- },
358
- {
359
- "name": "bundleTempData";
360
- "writable": true;
361
- },
362
- {
363
- "name": "bundleAccount";
364
- "writable": true;
365
- },
366
- {
367
- "name": "pendingBundleAssetAuthority";
368
- "writable": true;
369
- },
370
- {
371
- "name": "tokenProgram";
372
- }
373
- ];
374
- "args": [
375
- {
376
- "name": "amount";
377
- "type": "u64";
378
- }
379
- ];
380
- },
381
- {
382
- "name": "requestWithdrawal";
383
- "docs": [
384
- "Request a Neutral bundle withdrawal for the GLAM vault.",
385
- "",
386
- "- Permission: `RequestWithdrawal`.",
387
- "- Policy: `bundle_account` must be present in `NeutralPolicy::bundles_allowlist`."
388
- ];
389
- "discriminator": [
390
- 251,
391
- 85,
392
- 121,
393
- 205,
394
- 56,
395
- 201,
396
- 12,
397
- 177
398
- ];
399
- "accounts": [
400
- {
401
- "name": "glamState";
402
- "writable": true;
403
- },
404
- {
405
- "name": "glamVault";
406
- "writable": true;
407
- "pda": {
408
- "seeds": [
409
- {
410
- "kind": "const";
411
- "value": [
412
- 118,
413
- 97,
414
- 117,
415
- 108,
416
- 116
417
- ];
418
- },
419
- {
420
- "kind": "account";
421
- "path": "glamState";
422
- }
423
- ];
424
- "program": {
425
- "kind": "account";
426
- "path": "glamProtocolProgram";
427
- };
428
- };
429
- },
430
- {
431
- "name": "glamSigner";
432
- "writable": true;
433
- "signer": true;
434
- },
435
- {
436
- "name": "integrationAuthority";
437
- "pda": {
438
- "seeds": [
439
- {
440
- "kind": "const";
441
- "value": [
442
- 105,
443
- 110,
444
- 116,
445
- 101,
446
- 103,
447
- 114,
448
- 97,
449
- 116,
450
- 105,
451
- 111,
452
- 110,
453
- 45,
454
- 97,
455
- 117,
456
- 116,
457
- 104,
458
- 111,
459
- 114,
460
- 105,
461
- 116,
462
- 121
463
- ];
464
- }
465
- ];
466
- };
467
- },
468
- {
469
- "name": "cpiProgram";
470
- "address": "BUNDDh4P5XviMm1f3gCvnq2qKx6TGosAGnoUK12e7cXU";
471
- },
472
- {
473
- "name": "glamProtocolProgram";
474
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
475
- },
476
- {
477
- "name": "systemProgram";
478
- "address": "11111111111111111111111111111111";
479
- },
480
- {
481
- "name": "userBundleAccount";
482
- "writable": true;
483
- },
484
- {
485
- "name": "bundleAccount";
486
- "writable": true;
487
- },
488
- {
489
- "name": "oracleData";
490
- "writable": true;
491
- },
492
- {
493
- "name": "bundleTempData";
494
- "writable": true;
495
- },
496
- {
497
- "name": "tokenProgram";
498
- "address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
499
- },
500
- {
501
- "name": "rent";
502
- "address": "SysvarRent111111111111111111111111111111111";
503
- }
504
- ];
505
- "args": [
506
- {
507
- "name": "sharesAmount";
508
- "type": "u128";
509
- },
510
- {
511
- "name": "minEstimatedValue";
512
- "type": "u64";
513
- }
514
- ];
515
- },
516
- {
517
- "name": "setNeutralPolicy";
518
- "docs": [
519
- "Set the Neutral bundle allowlist policy."
520
- ];
521
- "discriminator": [
522
- 82,
523
- 190,
524
- 30,
525
- 24,
526
- 221,
527
- 135,
528
- 158,
529
- 215
530
- ];
531
- "accounts": [
532
- {
533
- "name": "glamState";
534
- "writable": true;
535
- },
536
- {
537
- "name": "glamSigner";
538
- "writable": true;
539
- "signer": true;
540
- },
541
- {
542
- "name": "glamProtocolProgram";
543
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
544
- }
545
- ];
546
- "args": [
547
- {
548
- "name": "policy";
549
- "type": {
550
- "defined": {
551
- "name": "neutralPolicy";
552
- };
553
- };
554
- }
555
- ];
556
- }
557
- ];
558
- "accounts": [
559
- {
560
- "name": "stateAccount";
561
- "discriminator": [
562
- 142,
563
- 247,
564
- 54,
565
- 95,
566
- 85,
567
- 133,
568
- 249,
569
- 103
570
- ];
571
- }
572
- ];
573
- "errors": [
574
- {
575
- "code": 6000;
576
- "name": "invalidNeutralAccount";
577
- "msg": "Invalid Neutral account";
578
- },
579
- {
580
- "code": 6001;
581
- "name": "invalidNeutralDiscriminator";
582
- "msg": "Invalid Neutral account discriminator";
583
- },
584
- {
585
- "code": 6002;
586
- "name": "invalidNeutralPda";
587
- "msg": "Invalid Neutral PDA";
588
- },
589
- {
590
- "code": 6003;
591
- "name": "invalidTokenAccount";
592
- "msg": "Invalid token account";
593
- },
594
- {
595
- "code": 6004;
596
- "name": "invalidAmount";
597
- "msg": "Invalid amount";
598
- },
599
- {
600
- "code": 6005;
601
- "name": "bundleAllowlistTooLarge";
602
- "msg": "Neutral bundle allowlist exceeds the maximum length";
603
- },
604
- {
605
- "code": 6006;
606
- "name": "defaultBundleNotAllowed";
607
- "msg": "Neutral bundle allowlist contains the default pubkey";
608
- },
609
- {
610
- "code": 6007;
611
- "name": "duplicateBundle";
612
- "msg": "Neutral bundle allowlist contains a duplicate bundle";
613
- },
614
- {
615
- "code": 6008;
616
- "name": "invalidPermissionMode";
617
- "msg": "Neutral bundle permission mode does not match the instruction";
618
- },
619
- {
620
- "code": 6009;
621
- "name": "unexpectedSigner";
622
- "msg": "Unexpected signer passed to Neutral CPI";
623
- },
624
- {
625
- "code": 6010;
626
- "name": "duplicateAccount";
627
- "msg": "Duplicate account passed to Neutral CPI";
628
- },
629
- {
630
- "code": 6011;
631
- "name": "arithmeticOverflow";
632
- "msg": "Arithmetic overflow during Neutral validation";
633
- },
634
- {
635
- "code": 6012;
636
- "name": "invalidUserBundleAccount";
637
- "msg": "Invalid user bundle account";
638
- },
639
- {
640
- "code": 6013;
641
- "name": "userBundleAccountNotEmpty";
642
- "msg": "User bundle account is not empty";
643
- },
644
- {
645
- "code": 6014;
646
- "name": "userBundleAccountAlreadyInitialized";
647
- "msg": "User bundle account is already initialized";
648
- },
649
- {
650
- "code": 6015;
651
- "name": "userBundleAccountNotClosed";
652
- "msg": "User bundle account was not closed";
653
- },
654
- {
655
- "code": 6016;
656
- "name": "unsupportedTokenProgram";
657
- "msg": "Neutral asset mint must be owned by the legacy SPL Token program";
658
- },
659
- {
660
- "code": 6017;
661
- "name": "estimatedWithdrawalValueTooLow";
662
- "msg": "Estimated withdrawal value is below the caller minimum";
663
- }
664
- ];
665
- "types": [
666
- {
667
- "name": "accountType";
668
- "type": {
669
- "kind": "enum";
670
- "variants": [
671
- {
672
- "name": "vault";
673
- },
674
- {
675
- "name": "tokenizedVault";
676
- },
677
- {
678
- "name": "mint";
679
- },
680
- {
681
- "name": "singleAssetVault";
682
- }
683
- ];
684
- };
685
- },
686
- {
687
- "name": "accruedFees";
688
- "type": {
689
- "kind": "struct";
690
- "fields": [
691
- {
692
- "name": "vaultSubscriptionFee";
693
- "type": "u128";
694
- },
695
- {
696
- "name": "vaultRedemptionFee";
697
- "type": "u128";
698
- },
699
- {
700
- "name": "managerSubscriptionFee";
701
- "type": "u128";
702
- },
703
- {
704
- "name": "managerRedemptionFee";
705
- "type": "u128";
706
- },
707
- {
708
- "name": "managementFee";
709
- "type": "u128";
710
- },
711
- {
712
- "name": "performanceFee";
713
- "type": "u128";
714
- },
715
- {
716
- "name": "protocolBaseFee";
717
- "type": "u128";
718
- },
719
- {
720
- "name": "protocolFlowFee";
721
- "type": "u128";
722
- }
723
- ];
724
- };
725
- },
726
- {
727
- "name": "createdModel";
728
- "type": {
729
- "kind": "struct";
730
- "fields": [
731
- {
732
- "name": "key";
733
- "type": {
734
- "array": [
735
- "u8",
736
- 8
737
- ];
738
- };
739
- },
740
- {
741
- "name": "createdBy";
742
- "type": "pubkey";
743
- },
744
- {
745
- "name": "createdAt";
746
- "type": "i64";
747
- }
748
- ];
749
- };
750
- },
751
- {
752
- "name": "delegateAcl";
753
- "type": {
754
- "kind": "struct";
755
- "fields": [
756
- {
757
- "name": "pubkey";
758
- "type": "pubkey";
759
- },
760
- {
761
- "name": "integrationPermissions";
762
- "type": {
763
- "vec": {
764
- "defined": {
765
- "name": "integrationPermissions";
766
- };
767
- };
768
- };
769
- },
770
- {
771
- "name": "expiresAt";
772
- "type": "i64";
773
- }
774
- ];
775
- };
776
- },
777
- {
778
- "name": "engineField";
779
- "type": {
780
- "kind": "struct";
781
- "fields": [
782
- {
783
- "name": "name";
784
- "type": {
785
- "defined": {
786
- "name": "engineFieldName";
787
- };
788
- };
789
- },
790
- {
791
- "name": "value";
792
- "type": {
793
- "defined": {
794
- "name": "engineFieldValue";
795
- };
796
- };
797
- }
798
- ];
799
- };
800
- },
801
- {
802
- "name": "engineFieldName";
803
- "type": {
804
- "kind": "enum";
805
- "variants": [
806
- {
807
- "name": "owner";
808
- },
809
- {
810
- "name": "portfolioManagerName";
811
- },
812
- {
813
- "name": "name";
814
- },
815
- {
816
- "name": "uri";
817
- },
818
- {
819
- "name": "assets";
820
- },
821
- {
822
- "name": "delegateAcls";
823
- },
824
- {
825
- "name": "integrationAcls";
826
- },
827
- {
828
- "name": "timelockDuration";
829
- },
830
- {
831
- "name": "borrowable";
832
- },
833
- {
834
- "name": "defaultAccountStateFrozen";
835
- },
836
- {
837
- "name": "permanentDelegate";
838
- },
839
- {
840
- "name": "notifyAndSettle";
841
- },
842
- {
843
- "name": "feeStructure";
844
- },
845
- {
846
- "name": "feeParams";
847
- },
848
- {
849
- "name": "claimableFees";
850
- },
851
- {
852
- "name": "claimedFees";
853
- },
854
- {
855
- "name": "oracleConfigs";
856
- }
857
- ];
858
- };
859
- },
860
- {
861
- "name": "engineFieldValue";
862
- "type": {
863
- "kind": "enum";
864
- "variants": [
865
- {
866
- "name": "boolean";
867
- "fields": [
868
- {
869
- "name": "val";
870
- "type": "bool";
871
- }
872
- ];
873
- },
874
- {
875
- "name": "u8";
876
- "fields": [
877
- {
878
- "name": "val";
879
- "type": "u8";
880
- }
881
- ];
882
- },
883
- {
884
- "name": "u32";
885
- "fields": [
886
- {
887
- "name": "val";
888
- "type": "u32";
889
- }
890
- ];
891
- },
892
- {
893
- "name": "u64";
894
- "fields": [
895
- {
896
- "name": "val";
897
- "type": "u64";
898
- }
899
- ];
900
- },
901
- {
902
- "name": "string";
903
- "fields": [
904
- {
905
- "name": "val";
906
- "type": "string";
907
- }
908
- ];
909
- },
910
- {
911
- "name": "pubkey";
912
- "fields": [
913
- {
914
- "name": "val";
915
- "type": "pubkey";
916
- }
917
- ];
918
- },
919
- {
920
- "name": "vecPubkey";
921
- "fields": [
922
- {
923
- "name": "val";
924
- "type": {
925
- "vec": "pubkey";
926
- };
927
- }
928
- ];
929
- },
930
- {
931
- "name": "vecU8";
932
- "fields": [
933
- {
934
- "name": "val";
935
- "type": "bytes";
936
- }
937
- ];
938
- },
939
- {
940
- "name": "vecU32";
941
- "fields": [
942
- {
943
- "name": "val";
944
- "type": {
945
- "vec": "u32";
946
- };
947
- }
948
- ];
949
- },
950
- {
951
- "name": "vecDelegateAcl";
952
- "fields": [
953
- {
954
- "name": "val";
955
- "type": {
956
- "vec": {
957
- "defined": {
958
- "name": "delegateAcl";
959
- };
960
- };
961
- };
962
- }
963
- ];
964
- },
965
- {
966
- "name": "vecIntegrationAcl";
967
- "fields": [
968
- {
969
- "name": "val";
970
- "type": {
971
- "vec": {
972
- "defined": {
973
- "name": "integrationAcl";
974
- };
975
- };
976
- };
977
- }
978
- ];
979
- },
980
- {
981
- "name": "feeStructure";
982
- "fields": [
983
- {
984
- "name": "val";
985
- "type": {
986
- "defined": {
987
- "name": "feeStructure";
988
- };
989
- };
990
- }
991
- ];
992
- },
993
- {
994
- "name": "feeParams";
995
- "fields": [
996
- {
997
- "name": "val";
998
- "type": {
999
- "defined": {
1000
- "name": "feeParams";
1001
- };
1002
- };
1003
- }
1004
- ];
1005
- },
1006
- {
1007
- "name": "accruedFees";
1008
- "fields": [
1009
- {
1010
- "name": "val";
1011
- "type": {
1012
- "defined": {
1013
- "name": "accruedFees";
1014
- };
1015
- };
1016
- }
1017
- ];
1018
- },
1019
- {
1020
- "name": "notifyAndSettle";
1021
- "fields": [
1022
- {
1023
- "name": "val";
1024
- "type": {
1025
- "defined": {
1026
- "name": "notifyAndSettle";
1027
- };
1028
- };
1029
- }
1030
- ];
1031
- },
1032
- {
1033
- "name": "oracleConfigs";
1034
- "fields": [
1035
- {
1036
- "name": "val";
1037
- "type": {
1038
- "defined": {
1039
- "name": "oracleConfigs";
1040
- };
1041
- };
1042
- }
1043
- ];
1044
- }
1045
- ];
1046
- };
1047
- },
1048
- {
1049
- "name": "entryExitFees";
1050
- "type": {
1051
- "kind": "struct";
1052
- "fields": [
1053
- {
1054
- "name": "subscriptionFeeBps";
1055
- "type": "u16";
1056
- },
1057
- {
1058
- "name": "redemptionFeeBps";
1059
- "type": "u16";
1060
- }
1061
- ];
1062
- };
1063
- },
1064
- {
1065
- "name": "feeParams";
1066
- "type": {
1067
- "kind": "struct";
1068
- "fields": [
1069
- {
1070
- "name": "yearInSeconds";
1071
- "type": "u32";
1072
- },
1073
- {
1074
- "name": "paHighWaterMark";
1075
- "type": "i128";
1076
- },
1077
- {
1078
- "name": "paLastNav";
1079
- "type": "i128";
1080
- },
1081
- {
1082
- "name": "lastAum";
1083
- "type": "i128";
1084
- },
1085
- {
1086
- "name": "lastPerformanceFeeCrystallized";
1087
- "type": "i64";
1088
- },
1089
- {
1090
- "name": "lastManagementFeeCrystallized";
1091
- "type": "i64";
1092
- },
1093
- {
1094
- "name": "lastProtocolFeeCrystallized";
1095
- "type": "i64";
1096
- }
1097
- ];
1098
- };
1099
- },
1100
- {
1101
- "name": "feeStructure";
1102
- "type": {
1103
- "kind": "struct";
1104
- "fields": [
1105
- {
1106
- "name": "vault";
1107
- "type": {
1108
- "defined": {
1109
- "name": "entryExitFees";
1110
- };
1111
- };
1112
- },
1113
- {
1114
- "name": "manager";
1115
- "type": {
1116
- "defined": {
1117
- "name": "entryExitFees";
1118
- };
1119
- };
1120
- },
1121
- {
1122
- "name": "management";
1123
- "type": {
1124
- "defined": {
1125
- "name": "managementFee";
1126
- };
1127
- };
1128
- },
1129
- {
1130
- "name": "performance";
1131
- "type": {
1132
- "defined": {
1133
- "name": "performanceFee";
1134
- };
1135
- };
1136
- },
1137
- {
1138
- "name": "protocol";
1139
- "type": {
1140
- "defined": {
1141
- "name": "protocolFees";
1142
- };
1143
- };
1144
- }
1145
- ];
1146
- };
1147
- },
1148
- {
1149
- "name": "hurdleType";
1150
- "type": {
1151
- "kind": "enum";
1152
- "variants": [
1153
- {
1154
- "name": "hard";
1155
- },
1156
- {
1157
- "name": "soft";
1158
- }
1159
- ];
1160
- };
1161
- },
1162
- {
1163
- "name": "integrationAcl";
1164
- "docs": [
1165
- "An integration program can have multiple protocols supported.",
1166
- "Enabled protocols are stored in a bitmask, and each protocol can have its own policy."
1167
- ];
1168
- "type": {
1169
- "kind": "struct";
1170
- "fields": [
1171
- {
1172
- "name": "integrationProgram";
1173
- "type": "pubkey";
1174
- },
1175
- {
1176
- "name": "protocolsBitmask";
1177
- "type": "u16";
1178
- },
1179
- {
1180
- "name": "protocolPolicies";
1181
- "type": {
1182
- "vec": {
1183
- "defined": {
1184
- "name": "protocolPolicy";
1185
- };
1186
- };
1187
- };
1188
- }
1189
- ];
1190
- };
1191
- },
1192
- {
1193
- "name": "integrationPermissions";
1194
- "docs": [
1195
- "Stores delegate permissions for an integration program."
1196
- ];
1197
- "type": {
1198
- "kind": "struct";
1199
- "fields": [
1200
- {
1201
- "name": "integrationProgram";
1202
- "type": "pubkey";
1203
- },
1204
- {
1205
- "name": "protocolPermissions";
1206
- "type": {
1207
- "vec": {
1208
- "defined": {
1209
- "name": "protocolPermissions";
1210
- };
1211
- };
1212
- };
1213
- }
1214
- ];
1215
- };
1216
- },
1217
- {
1218
- "name": "managementFee";
1219
- "type": {
1220
- "kind": "struct";
1221
- "fields": [
1222
- {
1223
- "name": "feeBps";
1224
- "type": "u16";
1225
- }
1226
- ];
1227
- };
1228
- },
1229
- {
1230
- "name": "neutralPolicy";
1231
- "type": {
1232
- "kind": "struct";
1233
- "fields": [
1234
- {
1235
- "name": "bundlesAllowlist";
1236
- "type": {
1237
- "vec": "pubkey";
1238
- };
1239
- }
1240
- ];
1241
- };
1242
- },
1243
- {
1244
- "name": "noticePeriodType";
1245
- "type": {
1246
- "kind": "enum";
1247
- "variants": [
1248
- {
1249
- "name": "hard";
1250
- },
1251
- {
1252
- "name": "soft";
1253
- }
1254
- ];
1255
- };
1256
- },
1257
- {
1258
- "name": "notifyAndSettle";
1259
- "type": {
1260
- "kind": "struct";
1261
- "fields": [
1262
- {
1263
- "name": "model";
1264
- "type": {
1265
- "defined": {
1266
- "name": "valuationModel";
1267
- };
1268
- };
1269
- },
1270
- {
1271
- "name": "permissionlessFulfillment";
1272
- "type": "bool";
1273
- },
1274
- {
1275
- "name": "subscribeNoticePeriodType";
1276
- "type": {
1277
- "defined": {
1278
- "name": "noticePeriodType";
1279
- };
1280
- };
1281
- },
1282
- {
1283
- "name": "subscribeNoticePeriod";
1284
- "type": "u64";
1285
- },
1286
- {
1287
- "name": "subscribeSettlementPeriod";
1288
- "type": "u64";
1289
- },
1290
- {
1291
- "name": "subscribeCancellationWindow";
1292
- "type": "u64";
1293
- },
1294
- {
1295
- "name": "redeemNoticePeriodType";
1296
- "type": {
1297
- "defined": {
1298
- "name": "noticePeriodType";
1299
- };
1300
- };
1301
- },
1302
- {
1303
- "name": "redeemNoticePeriod";
1304
- "type": "u64";
1305
- },
1306
- {
1307
- "name": "redeemSettlementPeriod";
1308
- "type": "u64";
1309
- },
1310
- {
1311
- "name": "redeemCancellationWindow";
1312
- "type": "u64";
1313
- },
1314
- {
1315
- "name": "timeUnit";
1316
- "type": {
1317
- "defined": {
1318
- "name": "timeUnit";
1319
- };
1320
- };
1321
- },
1322
- {
1323
- "name": "padding";
1324
- "type": {
1325
- "array": [
1326
- "u8",
1327
- 3
1328
- ];
1329
- };
1330
- }
1331
- ];
1332
- };
1333
- },
1334
- {
1335
- "name": "oracleConfigs";
1336
- "docs": [
1337
- "Vault-specific oracle configs. If available, these configs are preferred over the global config."
1338
- ];
1339
- "type": {
1340
- "kind": "struct";
1341
- "fields": [
1342
- {
1343
- "name": "maxAgesSeconds";
1344
- "type": {
1345
- "vec": {
1346
- "array": [
1347
- "u16",
1348
- 2
1349
- ];
1350
- };
1351
- };
1352
- },
1353
- {
1354
- "name": "padding";
1355
- "type": {
1356
- "array": [
1357
- "u8",
1358
- 12
1359
- ];
1360
- };
1361
- }
1362
- ];
1363
- };
1364
- },
1365
- {
1366
- "name": "performanceFee";
1367
- "type": {
1368
- "kind": "struct";
1369
- "fields": [
1370
- {
1371
- "name": "feeBps";
1372
- "type": "u16";
1373
- },
1374
- {
1375
- "name": "hurdleRateBps";
1376
- "type": "u16";
1377
- },
1378
- {
1379
- "name": "hurdleType";
1380
- "type": {
1381
- "defined": {
1382
- "name": "hurdleType";
1383
- };
1384
- };
1385
- }
1386
- ];
1387
- };
1388
- },
1389
- {
1390
- "name": "pricedProtocol";
1391
- "type": {
1392
- "kind": "struct";
1393
- "fields": [
1394
- {
1395
- "name": "rent";
1396
- "type": "u64";
1397
- },
1398
- {
1399
- "name": "amount";
1400
- "type": "i128";
1401
- },
1402
- {
1403
- "name": "decimals";
1404
- "type": "u8";
1405
- },
1406
- {
1407
- "name": "lastUpdatedSlot";
1408
- "type": "u64";
1409
- },
1410
- {
1411
- "name": "integrationProgram";
1412
- "type": "pubkey";
1413
- },
1414
- {
1415
- "name": "protocolBitflag";
1416
- "type": "u16";
1417
- },
1418
- {
1419
- "name": "positions";
1420
- "type": {
1421
- "vec": "pubkey";
1422
- };
1423
- }
1424
- ];
1425
- };
1426
- },
1427
- {
1428
- "name": "protocolFees";
1429
- "type": {
1430
- "kind": "struct";
1431
- "fields": [
1432
- {
1433
- "name": "baseFeeBps";
1434
- "type": "u16";
1435
- },
1436
- {
1437
- "name": "flowFeeBps";
1438
- "type": "u16";
1439
- }
1440
- ];
1441
- };
1442
- },
1443
- {
1444
- "name": "protocolPermissions";
1445
- "docs": [
1446
- "Represents a delegate's permissions for a specific protocol"
1447
- ];
1448
- "type": {
1449
- "kind": "struct";
1450
- "fields": [
1451
- {
1452
- "name": "protocolBitflag";
1453
- "type": "u16";
1454
- },
1455
- {
1456
- "name": "permissionsBitmask";
1457
- "type": "u64";
1458
- }
1459
- ];
1460
- };
1461
- },
1462
- {
1463
- "name": "protocolPolicy";
1464
- "docs": [
1465
- "Stores policy data for an integrated protocol.",
1466
- "Integration programs serialize/deserialize this data."
1467
- ];
1468
- "type": {
1469
- "kind": "struct";
1470
- "fields": [
1471
- {
1472
- "name": "protocolBitflag";
1473
- "type": "u16";
1474
- },
1475
- {
1476
- "name": "data";
1477
- "type": "bytes";
1478
- }
1479
- ];
1480
- };
1481
- },
1482
- {
1483
- "name": "stateAccount";
1484
- "type": {
1485
- "kind": "struct";
1486
- "fields": [
1487
- {
1488
- "name": "accountType";
1489
- "type": {
1490
- "defined": {
1491
- "name": "accountType";
1492
- };
1493
- };
1494
- },
1495
- {
1496
- "name": "enabled";
1497
- "type": "bool";
1498
- },
1499
- {
1500
- "name": "vault";
1501
- "type": "pubkey";
1502
- },
1503
- {
1504
- "name": "owner";
1505
- "type": "pubkey";
1506
- },
1507
- {
1508
- "name": "portfolioManagerName";
1509
- "type": {
1510
- "array": [
1511
- "u8",
1512
- 32
1513
- ];
1514
- };
1515
- },
1516
- {
1517
- "name": "created";
1518
- "type": {
1519
- "defined": {
1520
- "name": "createdModel";
1521
- };
1522
- };
1523
- },
1524
- {
1525
- "name": "baseAssetMint";
1526
- "type": "pubkey";
1527
- },
1528
- {
1529
- "name": "baseAssetDecimals";
1530
- "type": "u8";
1531
- },
1532
- {
1533
- "name": "baseAssetTokenProgram";
1534
- "type": "u8";
1535
- },
1536
- {
1537
- "name": "name";
1538
- "type": {
1539
- "array": [
1540
- "u8",
1541
- 32
1542
- ];
1543
- };
1544
- },
1545
- {
1546
- "name": "timelockDuration";
1547
- "type": "u32";
1548
- },
1549
- {
1550
- "name": "timelockExpiresAt";
1551
- "type": "u64";
1552
- },
1553
- {
1554
- "name": "mint";
1555
- "type": "pubkey";
1556
- },
1557
- {
1558
- "name": "assets";
1559
- "type": {
1560
- "vec": "pubkey";
1561
- };
1562
- },
1563
- {
1564
- "name": "integrationAcls";
1565
- "type": {
1566
- "vec": {
1567
- "defined": {
1568
- "name": "integrationAcl";
1569
- };
1570
- };
1571
- };
1572
- },
1573
- {
1574
- "name": "delegateAcls";
1575
- "type": {
1576
- "vec": {
1577
- "defined": {
1578
- "name": "delegateAcl";
1579
- };
1580
- };
1581
- };
1582
- },
1583
- {
1584
- "name": "externalPositions";
1585
- "type": {
1586
- "vec": "pubkey";
1587
- };
1588
- },
1589
- {
1590
- "name": "pricedProtocols";
1591
- "type": {
1592
- "vec": {
1593
- "defined": {
1594
- "name": "pricedProtocol";
1595
- };
1596
- };
1597
- };
1598
- },
1599
- {
1600
- "name": "params";
1601
- "type": {
1602
- "vec": {
1603
- "vec": {
1604
- "defined": {
1605
- "name": "engineField";
1606
- };
1607
- };
1608
- };
1609
- };
1610
- }
1611
- ];
1612
- };
1613
- },
1614
- {
1615
- "name": "timeUnit";
1616
- "type": {
1617
- "kind": "enum";
1618
- "variants": [
1619
- {
1620
- "name": "second";
1621
- },
1622
- {
1623
- "name": "slot";
1624
- }
1625
- ];
1626
- };
1627
- },
1628
- {
1629
- "name": "valuationModel";
1630
- "type": {
1631
- "kind": "enum";
1632
- "variants": [
1633
- {
1634
- "name": "continuous";
1635
- },
1636
- {
1637
- "name": "periodic";
1638
- }
1639
- ];
1640
- };
1641
- }
1642
- ];
1643
- "constants": [
1644
- {
1645
- "name": "protoNeutral";
1646
- "type": "u16";
1647
- "value": "1";
1648
- },
1649
- {
1650
- "name": "protoNeutralPermCloseUserBundleAccount";
1651
- "type": "u64";
1652
- "value": "8";
1653
- },
1654
- {
1655
- "name": "protoNeutralPermInitializeBundleDepositor";
1656
- "type": "u64";
1657
- "value": "1";
1658
- },
1659
- {
1660
- "name": "protoNeutralPermRequestDeposit";
1661
- "type": "u64";
1662
- "value": "2";
1663
- },
1664
- {
1665
- "name": "protoNeutralPermRequestWithdrawal";
1666
- "type": "u64";
1667
- "value": "4";
1668
- }
1669
- ];
1670
- };