@glamsystems/glam-sdk 1.0.10 → 1.0.12-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.
Files changed (43) hide show
  1. package/index.cjs.js +11052 -7904
  2. package/index.esm.js +11046 -7904
  3. package/package.json +1 -1
  4. package/src/client/base.d.ts +5 -1
  5. package/src/client/fees.d.ts +3 -0
  6. package/src/client/mint.d.ts +5 -1
  7. package/src/client/price.d.ts +3 -2
  8. package/src/clientConfig.d.ts +1 -0
  9. package/src/constants.d.ts +3 -3
  10. package/src/deser/integrationPolicies.d.ts +29 -1
  11. package/src/glamExports.d.ts +527 -47
  12. package/src/models/state.d.ts +3 -1
  13. package/src/react/glam.d.ts +1 -0
  14. package/src/react/index.d.ts +2 -0
  15. package/src/react/query-keys.d.ts +39 -0
  16. package/src/react/useVaultBalanceSubscription.d.ts +17 -0
  17. package/src/utils/bitmask.d.ts +4 -3
  18. package/src/utils/index.d.ts +0 -1
  19. package/src/utils/lookupTables.d.ts +45 -1
  20. package/src/utils/timelock.d.ts +11 -4
  21. package/src/utils/transaction.d.ts +1 -1
  22. package/target/idl/ext_drift-staging.json +4 -0
  23. package/target/idl/ext_drift.json +4 -0
  24. package/target/idl/glam_config.json +12 -2
  25. package/target/idl/glam_mint-staging.json +16 -186
  26. package/target/idl/glam_mint.json +16 -186
  27. package/target/idl/glam_policies.json +6 -1
  28. package/target/idl/glam_protocol-staging.json +536 -7
  29. package/target/idl/glam_protocol.json +536 -7
  30. package/target/types/ext_drift-staging.ts +4 -0
  31. package/target/types/ext_drift.d.ts +4 -0
  32. package/target/types/ext_drift.ts +4 -0
  33. package/target/types/ext_offchain.d.ts +1080 -0
  34. package/target/types/glam_config.d.ts +12 -2
  35. package/target/types/glam_config.ts +12 -2
  36. package/target/types/glam_mint-staging.ts +16 -186
  37. package/target/types/glam_mint.d.ts +16 -186
  38. package/target/types/glam_mint.ts +16 -186
  39. package/target/types/glam_policies.ts +6 -1
  40. package/target/types/glam_protocol-staging.ts +536 -7
  41. package/target/types/glam_protocol.d.ts +536 -7
  42. package/target/types/glam_protocol.ts +536 -7
  43. package/src/utils/glamApi.d.ts +0 -12
@@ -0,0 +1,1080 @@
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_offchain.json`.
6
+ */
7
+ export type ExtOffchain = {
8
+ "address": "G1NToc8Syn5cPU1k3pPDydqkAFCFbfPQ9377Tt96F29m";
9
+ "metadata": {
10
+ "name": "extOffchain";
11
+ "version": "1.0.0";
12
+ "spec": "0.1.0";
13
+ "description": "Off-chain AUM reporting integration for GLAM Protocol";
14
+ };
15
+ "instructions": [
16
+ {
17
+ "name": "updateOffchainAum";
18
+ "discriminator": [
19
+ 152,
20
+ 206,
21
+ 102,
22
+ 69,
23
+ 11,
24
+ 81,
25
+ 234,
26
+ 229
27
+ ];
28
+ "accounts": [
29
+ {
30
+ "name": "glamState";
31
+ "writable": true;
32
+ },
33
+ {
34
+ "name": "glamSigner";
35
+ "signer": true;
36
+ },
37
+ {
38
+ "name": "integrationAuthority";
39
+ "pda": {
40
+ "seeds": [
41
+ {
42
+ "kind": "const";
43
+ "value": [
44
+ 105,
45
+ 110,
46
+ 116,
47
+ 101,
48
+ 103,
49
+ 114,
50
+ 97,
51
+ 116,
52
+ 105,
53
+ 111,
54
+ 110,
55
+ 45,
56
+ 97,
57
+ 117,
58
+ 116,
59
+ 104,
60
+ 111,
61
+ 114,
62
+ 105,
63
+ 116,
64
+ 121
65
+ ];
66
+ }
67
+ ];
68
+ };
69
+ },
70
+ {
71
+ "name": "glamProtocolProgram";
72
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
73
+ }
74
+ ];
75
+ "args": [
76
+ {
77
+ "name": "amount";
78
+ "type": "i128";
79
+ }
80
+ ];
81
+ }
82
+ ];
83
+ "accounts": [
84
+ {
85
+ "name": "stateAccount";
86
+ "discriminator": [
87
+ 142,
88
+ 247,
89
+ 54,
90
+ 95,
91
+ 85,
92
+ 133,
93
+ 249,
94
+ 103
95
+ ];
96
+ }
97
+ ];
98
+ "types": [
99
+ {
100
+ "name": "accountType";
101
+ "type": {
102
+ "kind": "enum";
103
+ "variants": [
104
+ {
105
+ "name": "vault";
106
+ },
107
+ {
108
+ "name": "tokenizedVault";
109
+ },
110
+ {
111
+ "name": "mint";
112
+ },
113
+ {
114
+ "name": "singleAssetVault";
115
+ }
116
+ ];
117
+ };
118
+ },
119
+ {
120
+ "name": "accruedFees";
121
+ "type": {
122
+ "kind": "struct";
123
+ "fields": [
124
+ {
125
+ "name": "vaultSubscriptionFee";
126
+ "type": "u128";
127
+ },
128
+ {
129
+ "name": "vaultRedemptionFee";
130
+ "type": "u128";
131
+ },
132
+ {
133
+ "name": "managerSubscriptionFee";
134
+ "type": "u128";
135
+ },
136
+ {
137
+ "name": "managerRedemptionFee";
138
+ "type": "u128";
139
+ },
140
+ {
141
+ "name": "managementFee";
142
+ "type": "u128";
143
+ },
144
+ {
145
+ "name": "performanceFee";
146
+ "type": "u128";
147
+ },
148
+ {
149
+ "name": "protocolBaseFee";
150
+ "type": "u128";
151
+ },
152
+ {
153
+ "name": "protocolFlowFee";
154
+ "type": "u128";
155
+ }
156
+ ];
157
+ };
158
+ },
159
+ {
160
+ "name": "createdModel";
161
+ "type": {
162
+ "kind": "struct";
163
+ "fields": [
164
+ {
165
+ "name": "key";
166
+ "type": {
167
+ "array": [
168
+ "u8",
169
+ 8
170
+ ];
171
+ };
172
+ },
173
+ {
174
+ "name": "createdBy";
175
+ "type": "pubkey";
176
+ },
177
+ {
178
+ "name": "createdAt";
179
+ "type": "i64";
180
+ }
181
+ ];
182
+ };
183
+ },
184
+ {
185
+ "name": "delegateAcl";
186
+ "type": {
187
+ "kind": "struct";
188
+ "fields": [
189
+ {
190
+ "name": "pubkey";
191
+ "type": "pubkey";
192
+ },
193
+ {
194
+ "name": "integrationPermissions";
195
+ "type": {
196
+ "vec": {
197
+ "defined": {
198
+ "name": "integrationPermissions";
199
+ };
200
+ };
201
+ };
202
+ },
203
+ {
204
+ "name": "expiresAt";
205
+ "type": "i64";
206
+ }
207
+ ];
208
+ };
209
+ },
210
+ {
211
+ "name": "engineField";
212
+ "type": {
213
+ "kind": "struct";
214
+ "fields": [
215
+ {
216
+ "name": "name";
217
+ "type": {
218
+ "defined": {
219
+ "name": "engineFieldName";
220
+ };
221
+ };
222
+ },
223
+ {
224
+ "name": "value";
225
+ "type": {
226
+ "defined": {
227
+ "name": "engineFieldValue";
228
+ };
229
+ };
230
+ }
231
+ ];
232
+ };
233
+ },
234
+ {
235
+ "name": "engineFieldName";
236
+ "type": {
237
+ "kind": "enum";
238
+ "variants": [
239
+ {
240
+ "name": "owner";
241
+ },
242
+ {
243
+ "name": "portfolioManagerName";
244
+ },
245
+ {
246
+ "name": "name";
247
+ },
248
+ {
249
+ "name": "uri";
250
+ },
251
+ {
252
+ "name": "assets";
253
+ },
254
+ {
255
+ "name": "delegateAcls";
256
+ },
257
+ {
258
+ "name": "integrationAcls";
259
+ },
260
+ {
261
+ "name": "timelockDuration";
262
+ },
263
+ {
264
+ "name": "borrowable";
265
+ },
266
+ {
267
+ "name": "defaultAccountStateFrozen";
268
+ },
269
+ {
270
+ "name": "permanentDelegate";
271
+ },
272
+ {
273
+ "name": "notifyAndSettle";
274
+ },
275
+ {
276
+ "name": "feeStructure";
277
+ },
278
+ {
279
+ "name": "feeParams";
280
+ },
281
+ {
282
+ "name": "claimableFees";
283
+ },
284
+ {
285
+ "name": "claimedFees";
286
+ },
287
+ {
288
+ "name": "oracleConfigs";
289
+ },
290
+ {
291
+ "name": "reduceOnly";
292
+ },
293
+ {
294
+ "name": "anyLst";
295
+ }
296
+ ];
297
+ };
298
+ },
299
+ {
300
+ "name": "engineFieldValue";
301
+ "type": {
302
+ "kind": "enum";
303
+ "variants": [
304
+ {
305
+ "name": "boolean";
306
+ "fields": [
307
+ {
308
+ "name": "val";
309
+ "type": "bool";
310
+ }
311
+ ];
312
+ },
313
+ {
314
+ "name": "u8";
315
+ "fields": [
316
+ {
317
+ "name": "val";
318
+ "type": "u8";
319
+ }
320
+ ];
321
+ },
322
+ {
323
+ "name": "u32";
324
+ "fields": [
325
+ {
326
+ "name": "val";
327
+ "type": "u32";
328
+ }
329
+ ];
330
+ },
331
+ {
332
+ "name": "u64";
333
+ "fields": [
334
+ {
335
+ "name": "val";
336
+ "type": "u64";
337
+ }
338
+ ];
339
+ },
340
+ {
341
+ "name": "string";
342
+ "fields": [
343
+ {
344
+ "name": "val";
345
+ "type": "string";
346
+ }
347
+ ];
348
+ },
349
+ {
350
+ "name": "pubkey";
351
+ "fields": [
352
+ {
353
+ "name": "val";
354
+ "type": "pubkey";
355
+ }
356
+ ];
357
+ },
358
+ {
359
+ "name": "vecPubkey";
360
+ "fields": [
361
+ {
362
+ "name": "val";
363
+ "type": {
364
+ "vec": "pubkey";
365
+ };
366
+ }
367
+ ];
368
+ },
369
+ {
370
+ "name": "vecU8";
371
+ "fields": [
372
+ {
373
+ "name": "val";
374
+ "type": "bytes";
375
+ }
376
+ ];
377
+ },
378
+ {
379
+ "name": "vecU32";
380
+ "fields": [
381
+ {
382
+ "name": "val";
383
+ "type": {
384
+ "vec": "u32";
385
+ };
386
+ }
387
+ ];
388
+ },
389
+ {
390
+ "name": "vecDelegateAcl";
391
+ "fields": [
392
+ {
393
+ "name": "val";
394
+ "type": {
395
+ "vec": {
396
+ "defined": {
397
+ "name": "delegateAcl";
398
+ };
399
+ };
400
+ };
401
+ }
402
+ ];
403
+ },
404
+ {
405
+ "name": "vecIntegrationAcl";
406
+ "fields": [
407
+ {
408
+ "name": "val";
409
+ "type": {
410
+ "vec": {
411
+ "defined": {
412
+ "name": "integrationAcl";
413
+ };
414
+ };
415
+ };
416
+ }
417
+ ];
418
+ },
419
+ {
420
+ "name": "feeStructure";
421
+ "fields": [
422
+ {
423
+ "name": "val";
424
+ "type": {
425
+ "defined": {
426
+ "name": "feeStructure";
427
+ };
428
+ };
429
+ }
430
+ ];
431
+ },
432
+ {
433
+ "name": "feeParams";
434
+ "fields": [
435
+ {
436
+ "name": "val";
437
+ "type": {
438
+ "defined": {
439
+ "name": "feeParams";
440
+ };
441
+ };
442
+ }
443
+ ];
444
+ },
445
+ {
446
+ "name": "accruedFees";
447
+ "fields": [
448
+ {
449
+ "name": "val";
450
+ "type": {
451
+ "defined": {
452
+ "name": "accruedFees";
453
+ };
454
+ };
455
+ }
456
+ ];
457
+ },
458
+ {
459
+ "name": "notifyAndSettle";
460
+ "fields": [
461
+ {
462
+ "name": "val";
463
+ "type": {
464
+ "defined": {
465
+ "name": "notifyAndSettle";
466
+ };
467
+ };
468
+ }
469
+ ];
470
+ },
471
+ {
472
+ "name": "oracleConfigs";
473
+ "fields": [
474
+ {
475
+ "name": "val";
476
+ "type": {
477
+ "defined": {
478
+ "name": "oracleConfigs";
479
+ };
480
+ };
481
+ }
482
+ ];
483
+ }
484
+ ];
485
+ };
486
+ },
487
+ {
488
+ "name": "entryExitFees";
489
+ "type": {
490
+ "kind": "struct";
491
+ "fields": [
492
+ {
493
+ "name": "subscriptionFeeBps";
494
+ "type": "u16";
495
+ },
496
+ {
497
+ "name": "redemptionFeeBps";
498
+ "type": "u16";
499
+ }
500
+ ];
501
+ };
502
+ },
503
+ {
504
+ "name": "feeParams";
505
+ "type": {
506
+ "kind": "struct";
507
+ "fields": [
508
+ {
509
+ "name": "yearInSeconds";
510
+ "type": "u32";
511
+ },
512
+ {
513
+ "name": "paHighWaterMark";
514
+ "type": "i128";
515
+ },
516
+ {
517
+ "name": "paLastNav";
518
+ "type": "i128";
519
+ },
520
+ {
521
+ "name": "lastAum";
522
+ "type": "i128";
523
+ },
524
+ {
525
+ "name": "lastPerformanceFeeCrystallized";
526
+ "type": "i64";
527
+ },
528
+ {
529
+ "name": "lastManagementFeeCrystallized";
530
+ "type": "i64";
531
+ },
532
+ {
533
+ "name": "lastProtocolFeeCrystallized";
534
+ "type": "i64";
535
+ }
536
+ ];
537
+ };
538
+ },
539
+ {
540
+ "name": "feeStructure";
541
+ "type": {
542
+ "kind": "struct";
543
+ "fields": [
544
+ {
545
+ "name": "vault";
546
+ "type": {
547
+ "defined": {
548
+ "name": "entryExitFees";
549
+ };
550
+ };
551
+ },
552
+ {
553
+ "name": "manager";
554
+ "type": {
555
+ "defined": {
556
+ "name": "entryExitFees";
557
+ };
558
+ };
559
+ },
560
+ {
561
+ "name": "management";
562
+ "type": {
563
+ "defined": {
564
+ "name": "managementFee";
565
+ };
566
+ };
567
+ },
568
+ {
569
+ "name": "performance";
570
+ "type": {
571
+ "defined": {
572
+ "name": "performanceFee";
573
+ };
574
+ };
575
+ },
576
+ {
577
+ "name": "protocol";
578
+ "type": {
579
+ "defined": {
580
+ "name": "protocolFees";
581
+ };
582
+ };
583
+ }
584
+ ];
585
+ };
586
+ },
587
+ {
588
+ "name": "hurdleType";
589
+ "type": {
590
+ "kind": "enum";
591
+ "variants": [
592
+ {
593
+ "name": "hard";
594
+ },
595
+ {
596
+ "name": "soft";
597
+ }
598
+ ];
599
+ };
600
+ },
601
+ {
602
+ "name": "integrationAcl";
603
+ "docs": [
604
+ "An integration program can have multiple protocols supported.",
605
+ "Enabled protocols are stored in a bitmask, and each protocol can have its own policy."
606
+ ];
607
+ "type": {
608
+ "kind": "struct";
609
+ "fields": [
610
+ {
611
+ "name": "integrationProgram";
612
+ "type": "pubkey";
613
+ },
614
+ {
615
+ "name": "protocolsBitmask";
616
+ "type": "u16";
617
+ },
618
+ {
619
+ "name": "protocolPolicies";
620
+ "type": {
621
+ "vec": {
622
+ "defined": {
623
+ "name": "protocolPolicy";
624
+ };
625
+ };
626
+ };
627
+ }
628
+ ];
629
+ };
630
+ },
631
+ {
632
+ "name": "integrationPermissions";
633
+ "docs": [
634
+ "Stores delegate permissions for an integration program."
635
+ ];
636
+ "type": {
637
+ "kind": "struct";
638
+ "fields": [
639
+ {
640
+ "name": "integrationProgram";
641
+ "type": "pubkey";
642
+ },
643
+ {
644
+ "name": "protocolPermissions";
645
+ "type": {
646
+ "vec": {
647
+ "defined": {
648
+ "name": "protocolPermissions";
649
+ };
650
+ };
651
+ };
652
+ }
653
+ ];
654
+ };
655
+ },
656
+ {
657
+ "name": "managementFee";
658
+ "type": {
659
+ "kind": "struct";
660
+ "fields": [
661
+ {
662
+ "name": "feeBps";
663
+ "type": "u16";
664
+ }
665
+ ];
666
+ };
667
+ },
668
+ {
669
+ "name": "noticePeriodType";
670
+ "type": {
671
+ "kind": "enum";
672
+ "variants": [
673
+ {
674
+ "name": "hard";
675
+ },
676
+ {
677
+ "name": "soft";
678
+ }
679
+ ];
680
+ };
681
+ },
682
+ {
683
+ "name": "notifyAndSettle";
684
+ "type": {
685
+ "kind": "struct";
686
+ "fields": [
687
+ {
688
+ "name": "model";
689
+ "type": {
690
+ "defined": {
691
+ "name": "valuationModel";
692
+ };
693
+ };
694
+ },
695
+ {
696
+ "name": "permissionlessFulfillment";
697
+ "type": "bool";
698
+ },
699
+ {
700
+ "name": "subscribeNoticePeriodType";
701
+ "type": {
702
+ "defined": {
703
+ "name": "noticePeriodType";
704
+ };
705
+ };
706
+ },
707
+ {
708
+ "name": "subscribeNoticePeriod";
709
+ "type": "u64";
710
+ },
711
+ {
712
+ "name": "subscribeSettlementPeriod";
713
+ "type": "u64";
714
+ },
715
+ {
716
+ "name": "subscribeCancellationWindow";
717
+ "type": "u64";
718
+ },
719
+ {
720
+ "name": "redeemNoticePeriodType";
721
+ "type": {
722
+ "defined": {
723
+ "name": "noticePeriodType";
724
+ };
725
+ };
726
+ },
727
+ {
728
+ "name": "redeemNoticePeriod";
729
+ "type": "u64";
730
+ },
731
+ {
732
+ "name": "redeemSettlementPeriod";
733
+ "type": "u64";
734
+ },
735
+ {
736
+ "name": "redeemCancellationWindow";
737
+ "type": "u64";
738
+ },
739
+ {
740
+ "name": "timeUnit";
741
+ "type": {
742
+ "defined": {
743
+ "name": "timeUnit";
744
+ };
745
+ };
746
+ },
747
+ {
748
+ "name": "padding";
749
+ "type": {
750
+ "array": [
751
+ "u8",
752
+ 3
753
+ ];
754
+ };
755
+ }
756
+ ];
757
+ };
758
+ },
759
+ {
760
+ "name": "oracleConfigs";
761
+ "docs": [
762
+ "Vault-specific oracle configs. If available, these configs are preferred over the global config."
763
+ ];
764
+ "type": {
765
+ "kind": "struct";
766
+ "fields": [
767
+ {
768
+ "name": "maxAgesSeconds";
769
+ "type": {
770
+ "vec": {
771
+ "array": [
772
+ "u16",
773
+ 2
774
+ ];
775
+ };
776
+ };
777
+ },
778
+ {
779
+ "name": "padding";
780
+ "type": {
781
+ "array": [
782
+ "u8",
783
+ 12
784
+ ];
785
+ };
786
+ }
787
+ ];
788
+ };
789
+ },
790
+ {
791
+ "name": "performanceFee";
792
+ "type": {
793
+ "kind": "struct";
794
+ "fields": [
795
+ {
796
+ "name": "feeBps";
797
+ "type": "u16";
798
+ },
799
+ {
800
+ "name": "hurdleRateBps";
801
+ "type": "u16";
802
+ },
803
+ {
804
+ "name": "hurdleType";
805
+ "type": {
806
+ "defined": {
807
+ "name": "hurdleType";
808
+ };
809
+ };
810
+ }
811
+ ];
812
+ };
813
+ },
814
+ {
815
+ "name": "pricedProtocol";
816
+ "type": {
817
+ "kind": "struct";
818
+ "fields": [
819
+ {
820
+ "name": "rent";
821
+ "type": "u64";
822
+ },
823
+ {
824
+ "name": "amount";
825
+ "type": "i128";
826
+ },
827
+ {
828
+ "name": "decimals";
829
+ "type": "u8";
830
+ },
831
+ {
832
+ "name": "lastUpdatedSlot";
833
+ "type": "u64";
834
+ },
835
+ {
836
+ "name": "integrationProgram";
837
+ "type": "pubkey";
838
+ },
839
+ {
840
+ "name": "protocolBitflag";
841
+ "type": "u16";
842
+ },
843
+ {
844
+ "name": "positions";
845
+ "type": {
846
+ "vec": "pubkey";
847
+ };
848
+ }
849
+ ];
850
+ };
851
+ },
852
+ {
853
+ "name": "protocolFees";
854
+ "type": {
855
+ "kind": "struct";
856
+ "fields": [
857
+ {
858
+ "name": "baseFeeBps";
859
+ "type": "u16";
860
+ },
861
+ {
862
+ "name": "flowFeeBps";
863
+ "type": "u16";
864
+ }
865
+ ];
866
+ };
867
+ },
868
+ {
869
+ "name": "protocolPermissions";
870
+ "docs": [
871
+ "Represents a delegate's permissions for a specific protocol"
872
+ ];
873
+ "type": {
874
+ "kind": "struct";
875
+ "fields": [
876
+ {
877
+ "name": "protocolBitflag";
878
+ "type": "u16";
879
+ },
880
+ {
881
+ "name": "permissionsBitmask";
882
+ "type": "u64";
883
+ }
884
+ ];
885
+ };
886
+ },
887
+ {
888
+ "name": "protocolPolicy";
889
+ "docs": [
890
+ "Stores policy data for an integrated protocol.",
891
+ "Integration programs serialize/deserialize this data."
892
+ ];
893
+ "type": {
894
+ "kind": "struct";
895
+ "fields": [
896
+ {
897
+ "name": "protocolBitflag";
898
+ "type": "u16";
899
+ },
900
+ {
901
+ "name": "data";
902
+ "type": "bytes";
903
+ }
904
+ ];
905
+ };
906
+ },
907
+ {
908
+ "name": "stateAccount";
909
+ "type": {
910
+ "kind": "struct";
911
+ "fields": [
912
+ {
913
+ "name": "accountType";
914
+ "type": {
915
+ "defined": {
916
+ "name": "accountType";
917
+ };
918
+ };
919
+ },
920
+ {
921
+ "name": "enabled";
922
+ "type": "bool";
923
+ },
924
+ {
925
+ "name": "vault";
926
+ "type": "pubkey";
927
+ },
928
+ {
929
+ "name": "owner";
930
+ "type": "pubkey";
931
+ },
932
+ {
933
+ "name": "portfolioManagerName";
934
+ "type": {
935
+ "array": [
936
+ "u8",
937
+ 32
938
+ ];
939
+ };
940
+ },
941
+ {
942
+ "name": "created";
943
+ "type": {
944
+ "defined": {
945
+ "name": "createdModel";
946
+ };
947
+ };
948
+ },
949
+ {
950
+ "name": "baseAssetMint";
951
+ "type": "pubkey";
952
+ },
953
+ {
954
+ "name": "baseAssetDecimals";
955
+ "type": "u8";
956
+ },
957
+ {
958
+ "name": "baseAssetTokenProgram";
959
+ "type": "u8";
960
+ },
961
+ {
962
+ "name": "name";
963
+ "type": {
964
+ "array": [
965
+ "u8",
966
+ 32
967
+ ];
968
+ };
969
+ },
970
+ {
971
+ "name": "timelockDuration";
972
+ "type": "u32";
973
+ },
974
+ {
975
+ "name": "timelockExpiresAt";
976
+ "type": "u64";
977
+ },
978
+ {
979
+ "name": "mint";
980
+ "type": "pubkey";
981
+ },
982
+ {
983
+ "name": "assets";
984
+ "type": {
985
+ "vec": "pubkey";
986
+ };
987
+ },
988
+ {
989
+ "name": "integrationAcls";
990
+ "type": {
991
+ "vec": {
992
+ "defined": {
993
+ "name": "integrationAcl";
994
+ };
995
+ };
996
+ };
997
+ },
998
+ {
999
+ "name": "delegateAcls";
1000
+ "type": {
1001
+ "vec": {
1002
+ "defined": {
1003
+ "name": "delegateAcl";
1004
+ };
1005
+ };
1006
+ };
1007
+ },
1008
+ {
1009
+ "name": "externalPositions";
1010
+ "type": {
1011
+ "vec": "pubkey";
1012
+ };
1013
+ },
1014
+ {
1015
+ "name": "pricedProtocols";
1016
+ "type": {
1017
+ "vec": {
1018
+ "defined": {
1019
+ "name": "pricedProtocol";
1020
+ };
1021
+ };
1022
+ };
1023
+ },
1024
+ {
1025
+ "name": "params";
1026
+ "type": {
1027
+ "vec": {
1028
+ "vec": {
1029
+ "defined": {
1030
+ "name": "engineField";
1031
+ };
1032
+ };
1033
+ };
1034
+ };
1035
+ }
1036
+ ];
1037
+ };
1038
+ },
1039
+ {
1040
+ "name": "timeUnit";
1041
+ "type": {
1042
+ "kind": "enum";
1043
+ "variants": [
1044
+ {
1045
+ "name": "second";
1046
+ },
1047
+ {
1048
+ "name": "slot";
1049
+ }
1050
+ ];
1051
+ };
1052
+ },
1053
+ {
1054
+ "name": "valuationModel";
1055
+ "type": {
1056
+ "kind": "enum";
1057
+ "variants": [
1058
+ {
1059
+ "name": "continuous";
1060
+ },
1061
+ {
1062
+ "name": "periodic";
1063
+ }
1064
+ ];
1065
+ };
1066
+ }
1067
+ ];
1068
+ "constants": [
1069
+ {
1070
+ "name": "protoOffchainAum";
1071
+ "type": "u16";
1072
+ "value": "1";
1073
+ },
1074
+ {
1075
+ "name": "protoOffchainAumPermUpdate";
1076
+ "type": "u64";
1077
+ "value": "1";
1078
+ }
1079
+ ];
1080
+ };