@glamsystems/glam-sdk 1.0.12 → 1.0.14-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 (75) hide show
  1. package/README.md +1 -1
  2. package/index.cjs.js +23827 -26772
  3. package/index.esm.js +23795 -26716
  4. package/package.json +2 -2
  5. package/src/assets.d.ts +9 -15
  6. package/src/client/access.d.ts +13 -0
  7. package/src/client/base.d.ts +27 -6
  8. package/src/client/bridge.d.ts +184 -0
  9. package/src/client/bridgeRegistry.d.ts +32 -0
  10. package/src/client/epi.d.ts +78 -0
  11. package/src/client/fees.d.ts +4 -0
  12. package/src/client/invest.d.ts +1 -1
  13. package/src/client/jupiter.d.ts +22 -18
  14. package/src/client/mint.d.ts +54 -1
  15. package/src/client/price.d.ts +13 -37
  16. package/src/client.d.ts +6 -5
  17. package/src/constants.d.ts +10 -7
  18. package/src/deser/index.d.ts +1 -1
  19. package/src/deser/integrationPolicies.d.ts +23 -20
  20. package/src/deser/tokenAclLayouts.d.ts +67 -0
  21. package/src/error.d.ts +2 -1
  22. package/src/glamExports.d.ts +2344 -1758
  23. package/src/globalConfig.d.ts +22 -0
  24. package/src/index.d.ts +4 -1
  25. package/src/react/glam.d.ts +0 -4
  26. package/src/react/query-keys.d.ts +1 -3
  27. package/src/utils/accounts.d.ts +9 -1
  28. package/src/utils/bitmask.d.ts +3 -0
  29. package/src/utils/common.d.ts +2 -0
  30. package/src/utils/glamPDAs.d.ts +5 -0
  31. package/src/utils/index.d.ts +0 -1
  32. package/src/utils/positionCategorizer.d.ts +3 -21
  33. package/target/idl/ext_cctp.json +1 -1
  34. package/target/idl/ext_kamino-staging.json +1 -1
  35. package/target/idl/ext_kamino.json +109 -1
  36. package/target/idl/ext_spl-staging.json +1 -1
  37. package/target/idl/ext_spl.json +1 -1
  38. package/target/idl/glam_config.json +78 -9
  39. package/target/idl/glam_mint-staging.json +865 -0
  40. package/target/idl/glam_mint.json +227 -8
  41. package/target/idl/glam_policies.json +2 -7
  42. package/target/idl/glam_protocol-staging.json +176 -275
  43. package/target/idl/glam_protocol.json +212 -114
  44. package/target/types/ext_bridge.d.ts +2397 -0
  45. package/target/types/ext_cctp.d.ts +1 -1
  46. package/target/types/ext_cctp.ts +1 -1
  47. package/target/types/ext_epi.d.ts +2175 -0
  48. package/target/types/ext_kamino-staging.ts +1 -1
  49. package/target/types/ext_kamino.d.ts +109 -1
  50. package/target/types/ext_kamino.ts +109 -1
  51. package/target/types/ext_spl-staging.ts +1 -1
  52. package/target/types/ext_spl.d.ts +1 -1
  53. package/target/types/ext_spl.ts +1 -1
  54. package/target/types/glam_config.d.ts +78 -9
  55. package/target/types/glam_config.ts +78 -9
  56. package/target/types/glam_mint-staging.ts +865 -0
  57. package/target/types/glam_mint.d.ts +227 -8
  58. package/target/types/glam_mint.ts +227 -8
  59. package/target/types/glam_policies.ts +2 -7
  60. package/target/types/glam_protocol-staging.ts +176 -275
  61. package/target/types/glam_protocol.d.ts +212 -114
  62. package/target/types/glam_protocol.ts +212 -114
  63. package/src/client/drift/index.d.ts +0 -2
  64. package/src/client/drift/protocol-v2.d.ts +0 -93
  65. package/src/client/drift/vaults.d.ts +0 -60
  66. package/src/deser/driftLayouts.d.ts +0 -217
  67. package/src/utils/drift/index.d.ts +0 -2
  68. package/src/utils/drift/orderParams.d.ts +0 -28
  69. package/src/utils/drift/types.d.ts +0 -522
  70. package/target/idl/ext_drift-staging.json +0 -3993
  71. package/target/idl/ext_drift.json +0 -3993
  72. package/target/types/ext_drift-staging.ts +0 -3999
  73. package/target/types/ext_drift.d.ts +0 -3999
  74. package/target/types/ext_drift.ts +0 -3999
  75. package/target/types/ext_offchain.d.ts +0 -1074
@@ -0,0 +1,2397 @@
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_bridge.json`.
6
+ */
7
+ export type ExtBridge = {
8
+ "address": "G1NTbnLcjMex9Tjo8ocmNK9S2zBCiGVuxKUUNGhYZztx";
9
+ "metadata": {
10
+ "name": "extBridge";
11
+ "version": "1.0.0";
12
+ "spec": "0.1.0";
13
+ "description": "Bridge integration for GLAM Protocol";
14
+ };
15
+ "instructions": [
16
+ {
17
+ "name": "addLayerzeroOftRoute";
18
+ "discriminator": [
19
+ 53,
20
+ 181,
21
+ 204,
22
+ 38,
23
+ 240,
24
+ 57,
25
+ 218,
26
+ 148
27
+ ];
28
+ "accounts": [
29
+ {
30
+ "name": "glamState";
31
+ "writable": true;
32
+ },
33
+ {
34
+ "name": "glamSigner";
35
+ "writable": true;
36
+ "signer": true;
37
+ },
38
+ {
39
+ "name": "glamProtocolProgram";
40
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
41
+ }
42
+ ];
43
+ "args": [
44
+ {
45
+ "name": "route";
46
+ "type": {
47
+ "defined": {
48
+ "name": "layerzeroOftRoute";
49
+ };
50
+ };
51
+ }
52
+ ];
53
+ },
54
+ {
55
+ "name": "cleanupTransferRecord";
56
+ "docs": [
57
+ "Closes a finalized transfer record and returns its rent."
58
+ ];
59
+ "discriminator": [
60
+ 65,
61
+ 224,
62
+ 219,
63
+ 143,
64
+ 99,
65
+ 204,
66
+ 215,
67
+ 6
68
+ ];
69
+ "accounts": [
70
+ {
71
+ "name": "glamState";
72
+ },
73
+ {
74
+ "name": "glamSigner";
75
+ "writable": true;
76
+ "signer": true;
77
+ },
78
+ {
79
+ "name": "transferRecord";
80
+ "writable": true;
81
+ }
82
+ ];
83
+ "args": [];
84
+ },
85
+ {
86
+ "name": "commitOftTransfer";
87
+ "docs": [
88
+ "Verifies the OFT send completed and records the resulting transfer."
89
+ ];
90
+ "discriminator": [
91
+ 246,
92
+ 116,
93
+ 17,
94
+ 13,
95
+ 64,
96
+ 227,
97
+ 248,
98
+ 78
99
+ ];
100
+ "accounts": [
101
+ {
102
+ "name": "glamState";
103
+ "writable": true;
104
+ },
105
+ {
106
+ "name": "glamVault";
107
+ "pda": {
108
+ "seeds": [
109
+ {
110
+ "kind": "const";
111
+ "value": [
112
+ 118,
113
+ 97,
114
+ 117,
115
+ 108,
116
+ 116
117
+ ];
118
+ },
119
+ {
120
+ "kind": "account";
121
+ "path": "glamState";
122
+ }
123
+ ];
124
+ "program": {
125
+ "kind": "account";
126
+ "path": "glamProtocolProgram";
127
+ };
128
+ };
129
+ },
130
+ {
131
+ "name": "glamSigner";
132
+ "writable": true;
133
+ "signer": true;
134
+ },
135
+ {
136
+ "name": "integrationAuthority";
137
+ "pda": {
138
+ "seeds": [
139
+ {
140
+ "kind": "const";
141
+ "value": [
142
+ 105,
143
+ 110,
144
+ 116,
145
+ 101,
146
+ 103,
147
+ 114,
148
+ 97,
149
+ 116,
150
+ 105,
151
+ 111,
152
+ 110,
153
+ 45,
154
+ 97,
155
+ 117,
156
+ 116,
157
+ 104,
158
+ 111,
159
+ 114,
160
+ 105,
161
+ 116,
162
+ 121
163
+ ];
164
+ }
165
+ ];
166
+ };
167
+ },
168
+ {
169
+ "name": "cpiProgram";
170
+ },
171
+ {
172
+ "name": "glamProtocolProgram";
173
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
174
+ },
175
+ {
176
+ "name": "systemProgram";
177
+ "address": "11111111111111111111111111111111";
178
+ },
179
+ {
180
+ "name": "instructions";
181
+ "address": "Sysvar1nstructions1111111111111111111111111";
182
+ },
183
+ {
184
+ "name": "bridgeRegistry";
185
+ "writable": true;
186
+ "pda": {
187
+ "seeds": [
188
+ {
189
+ "kind": "const";
190
+ "value": [
191
+ 98,
192
+ 114,
193
+ 105,
194
+ 100,
195
+ 103,
196
+ 101,
197
+ 45,
198
+ 114,
199
+ 101,
200
+ 103,
201
+ 105,
202
+ 115,
203
+ 116,
204
+ 114,
205
+ 121
206
+ ];
207
+ },
208
+ {
209
+ "kind": "account";
210
+ "path": "glamState";
211
+ }
212
+ ];
213
+ };
214
+ },
215
+ {
216
+ "name": "bridgeSession";
217
+ "writable": true;
218
+ "pda": {
219
+ "seeds": [
220
+ {
221
+ "kind": "const";
222
+ "value": [
223
+ 98,
224
+ 114,
225
+ 105,
226
+ 100,
227
+ 103,
228
+ 101,
229
+ 45,
230
+ 115,
231
+ 101,
232
+ 115,
233
+ 115,
234
+ 105,
235
+ 111,
236
+ 110
237
+ ];
238
+ },
239
+ {
240
+ "kind": "account";
241
+ "path": "glamState";
242
+ },
243
+ {
244
+ "kind": "arg";
245
+ "path": "args.transfer_id";
246
+ }
247
+ ];
248
+ };
249
+ },
250
+ {
251
+ "name": "transferRecord";
252
+ "writable": true;
253
+ "pda": {
254
+ "seeds": [
255
+ {
256
+ "kind": "const";
257
+ "value": [
258
+ 98,
259
+ 114,
260
+ 105,
261
+ 100,
262
+ 103,
263
+ 101,
264
+ 45,
265
+ 116,
266
+ 114,
267
+ 97,
268
+ 110,
269
+ 115,
270
+ 102,
271
+ 101,
272
+ 114,
273
+ 45,
274
+ 114,
275
+ 101,
276
+ 99,
277
+ 111,
278
+ 114,
279
+ 100
280
+ ];
281
+ },
282
+ {
283
+ "kind": "account";
284
+ "path": "glamState";
285
+ },
286
+ {
287
+ "kind": "arg";
288
+ "path": "args.transfer_id";
289
+ }
290
+ ];
291
+ };
292
+ },
293
+ {
294
+ "name": "sourceTokenAccount";
295
+ "writable": true;
296
+ },
297
+ {
298
+ "name": "sourceMint";
299
+ },
300
+ {
301
+ "name": "auxiliaryTokenAccount";
302
+ "writable": true;
303
+ }
304
+ ];
305
+ "args": [
306
+ {
307
+ "name": "args";
308
+ "type": {
309
+ "defined": {
310
+ "name": "commitOftTransferArgs";
311
+ };
312
+ };
313
+ }
314
+ ];
315
+ },
316
+ {
317
+ "name": "deleteLayerzeroOftRoute";
318
+ "discriminator": [
319
+ 122,
320
+ 191,
321
+ 90,
322
+ 182,
323
+ 160,
324
+ 67,
325
+ 86,
326
+ 227
327
+ ];
328
+ "accounts": [
329
+ {
330
+ "name": "glamState";
331
+ "writable": true;
332
+ },
333
+ {
334
+ "name": "glamSigner";
335
+ "writable": true;
336
+ "signer": true;
337
+ },
338
+ {
339
+ "name": "glamProtocolProgram";
340
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
341
+ }
342
+ ];
343
+ "args": [
344
+ {
345
+ "name": "route";
346
+ "type": {
347
+ "defined": {
348
+ "name": "layerzeroOftRoute";
349
+ };
350
+ };
351
+ }
352
+ ];
353
+ },
354
+ {
355
+ "name": "failOrCancelManagedTransfer";
356
+ "docs": [
357
+ "Marks a managed inflight transfer as failed or cancelled."
358
+ ];
359
+ "discriminator": [
360
+ 39,
361
+ 37,
362
+ 213,
363
+ 118,
364
+ 191,
365
+ 18,
366
+ 194,
367
+ 119
368
+ ];
369
+ "accounts": [
370
+ {
371
+ "name": "glamState";
372
+ "writable": true;
373
+ },
374
+ {
375
+ "name": "glamVault";
376
+ "pda": {
377
+ "seeds": [
378
+ {
379
+ "kind": "const";
380
+ "value": [
381
+ 118,
382
+ 97,
383
+ 117,
384
+ 108,
385
+ 116
386
+ ];
387
+ },
388
+ {
389
+ "kind": "account";
390
+ "path": "glamState";
391
+ }
392
+ ];
393
+ "program": {
394
+ "kind": "account";
395
+ "path": "glamProtocolProgram";
396
+ };
397
+ };
398
+ },
399
+ {
400
+ "name": "glamSigner";
401
+ "signer": true;
402
+ },
403
+ {
404
+ "name": "integrationAuthority";
405
+ "pda": {
406
+ "seeds": [
407
+ {
408
+ "kind": "const";
409
+ "value": [
410
+ 105,
411
+ 110,
412
+ 116,
413
+ 101,
414
+ 103,
415
+ 114,
416
+ 97,
417
+ 116,
418
+ 105,
419
+ 111,
420
+ 110,
421
+ 45,
422
+ 97,
423
+ 117,
424
+ 116,
425
+ 104,
426
+ 111,
427
+ 114,
428
+ 105,
429
+ 116,
430
+ 121
431
+ ];
432
+ }
433
+ ];
434
+ };
435
+ },
436
+ {
437
+ "name": "glamProtocolProgram";
438
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
439
+ },
440
+ {
441
+ "name": "systemProgram";
442
+ "address": "11111111111111111111111111111111";
443
+ },
444
+ {
445
+ "name": "bridgeRegistry";
446
+ "writable": true;
447
+ "pda": {
448
+ "seeds": [
449
+ {
450
+ "kind": "const";
451
+ "value": [
452
+ 98,
453
+ 114,
454
+ 105,
455
+ 100,
456
+ 103,
457
+ 101,
458
+ 45,
459
+ 114,
460
+ 101,
461
+ 103,
462
+ 105,
463
+ 115,
464
+ 116,
465
+ 114,
466
+ 121
467
+ ];
468
+ },
469
+ {
470
+ "kind": "account";
471
+ "path": "glamState";
472
+ }
473
+ ];
474
+ };
475
+ },
476
+ {
477
+ "name": "transferRecord";
478
+ "writable": true;
479
+ }
480
+ ];
481
+ "args": [
482
+ {
483
+ "name": "failureReason";
484
+ "type": "u8";
485
+ }
486
+ ];
487
+ },
488
+ {
489
+ "name": "prepareOftTransfer";
490
+ "docs": [
491
+ "Prepares the auxiliary token account used by the OFT transfer flow."
492
+ ];
493
+ "discriminator": [
494
+ 192,
495
+ 75,
496
+ 97,
497
+ 92,
498
+ 178,
499
+ 246,
500
+ 220,
501
+ 8
502
+ ];
503
+ "accounts": [
504
+ {
505
+ "name": "glamState";
506
+ "writable": true;
507
+ },
508
+ {
509
+ "name": "glamVault";
510
+ "writable": true;
511
+ "pda": {
512
+ "seeds": [
513
+ {
514
+ "kind": "const";
515
+ "value": [
516
+ 118,
517
+ 97,
518
+ 117,
519
+ 108,
520
+ 116
521
+ ];
522
+ },
523
+ {
524
+ "kind": "account";
525
+ "path": "glamState";
526
+ }
527
+ ];
528
+ "program": {
529
+ "kind": "account";
530
+ "path": "glamProtocolProgram";
531
+ };
532
+ };
533
+ },
534
+ {
535
+ "name": "glamSigner";
536
+ "writable": true;
537
+ "signer": true;
538
+ },
539
+ {
540
+ "name": "integrationAuthority";
541
+ "pda": {
542
+ "seeds": [
543
+ {
544
+ "kind": "const";
545
+ "value": [
546
+ 105,
547
+ 110,
548
+ 116,
549
+ 101,
550
+ 103,
551
+ 114,
552
+ 97,
553
+ 116,
554
+ 105,
555
+ 111,
556
+ 110,
557
+ 45,
558
+ 97,
559
+ 117,
560
+ 116,
561
+ 104,
562
+ 111,
563
+ 114,
564
+ 105,
565
+ 116,
566
+ 121
567
+ ];
568
+ }
569
+ ];
570
+ };
571
+ },
572
+ {
573
+ "name": "bridgeRegistry";
574
+ "writable": true;
575
+ "pda": {
576
+ "seeds": [
577
+ {
578
+ "kind": "const";
579
+ "value": [
580
+ 98,
581
+ 114,
582
+ 105,
583
+ 100,
584
+ 103,
585
+ 101,
586
+ 45,
587
+ 114,
588
+ 101,
589
+ 103,
590
+ 105,
591
+ 115,
592
+ 116,
593
+ 114,
594
+ 121
595
+ ];
596
+ },
597
+ {
598
+ "kind": "account";
599
+ "path": "glamState";
600
+ }
601
+ ];
602
+ };
603
+ },
604
+ {
605
+ "name": "bridgeSession";
606
+ "writable": true;
607
+ "pda": {
608
+ "seeds": [
609
+ {
610
+ "kind": "const";
611
+ "value": [
612
+ 98,
613
+ 114,
614
+ 105,
615
+ 100,
616
+ 103,
617
+ 101,
618
+ 45,
619
+ 115,
620
+ 101,
621
+ 115,
622
+ 115,
623
+ 105,
624
+ 111,
625
+ 110
626
+ ];
627
+ },
628
+ {
629
+ "kind": "account";
630
+ "path": "glamState";
631
+ },
632
+ {
633
+ "kind": "arg";
634
+ "path": "args.transfer_id";
635
+ }
636
+ ];
637
+ };
638
+ },
639
+ {
640
+ "name": "sourceTokenAccount";
641
+ "writable": true;
642
+ },
643
+ {
644
+ "name": "sourceMint";
645
+ },
646
+ {
647
+ "name": "auxiliaryTokenAccount";
648
+ "writable": true;
649
+ },
650
+ {
651
+ "name": "cpiProgram";
652
+ },
653
+ {
654
+ "name": "glamProtocolProgram";
655
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
656
+ },
657
+ {
658
+ "name": "systemProgram";
659
+ "address": "11111111111111111111111111111111";
660
+ },
661
+ {
662
+ "name": "instructions";
663
+ "address": "Sysvar1nstructions1111111111111111111111111";
664
+ }
665
+ ];
666
+ "args": [
667
+ {
668
+ "name": "args";
669
+ "type": {
670
+ "defined": {
671
+ "name": "prepareOftTransferArgs";
672
+ };
673
+ };
674
+ }
675
+ ];
676
+ },
677
+ {
678
+ "name": "reconcileManagedTransfer";
679
+ "docs": [
680
+ "Reconciles a managed inflight transfer back into normal pricing state."
681
+ ];
682
+ "discriminator": [
683
+ 137,
684
+ 31,
685
+ 188,
686
+ 80,
687
+ 28,
688
+ 252,
689
+ 192,
690
+ 50
691
+ ];
692
+ "accounts": [
693
+ {
694
+ "name": "glamState";
695
+ "writable": true;
696
+ },
697
+ {
698
+ "name": "glamVault";
699
+ "pda": {
700
+ "seeds": [
701
+ {
702
+ "kind": "const";
703
+ "value": [
704
+ 118,
705
+ 97,
706
+ 117,
707
+ 108,
708
+ 116
709
+ ];
710
+ },
711
+ {
712
+ "kind": "account";
713
+ "path": "glamState";
714
+ }
715
+ ];
716
+ "program": {
717
+ "kind": "account";
718
+ "path": "glamProtocolProgram";
719
+ };
720
+ };
721
+ },
722
+ {
723
+ "name": "glamSigner";
724
+ "signer": true;
725
+ },
726
+ {
727
+ "name": "integrationAuthority";
728
+ "pda": {
729
+ "seeds": [
730
+ {
731
+ "kind": "const";
732
+ "value": [
733
+ 105,
734
+ 110,
735
+ 116,
736
+ 101,
737
+ 103,
738
+ 114,
739
+ 97,
740
+ 116,
741
+ 105,
742
+ 111,
743
+ 110,
744
+ 45,
745
+ 97,
746
+ 117,
747
+ 116,
748
+ 104,
749
+ 111,
750
+ 114,
751
+ 105,
752
+ 116,
753
+ 121
754
+ ];
755
+ }
756
+ ];
757
+ };
758
+ },
759
+ {
760
+ "name": "glamProtocolProgram";
761
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
762
+ },
763
+ {
764
+ "name": "systemProgram";
765
+ "address": "11111111111111111111111111111111";
766
+ },
767
+ {
768
+ "name": "bridgeRegistry";
769
+ "writable": true;
770
+ "pda": {
771
+ "seeds": [
772
+ {
773
+ "kind": "const";
774
+ "value": [
775
+ 98,
776
+ 114,
777
+ 105,
778
+ 100,
779
+ 103,
780
+ 101,
781
+ 45,
782
+ 114,
783
+ 101,
784
+ 103,
785
+ 105,
786
+ 115,
787
+ 116,
788
+ 114,
789
+ 121
790
+ ];
791
+ },
792
+ {
793
+ "kind": "account";
794
+ "path": "glamState";
795
+ }
796
+ ];
797
+ };
798
+ },
799
+ {
800
+ "name": "transferRecord";
801
+ "writable": true;
802
+ }
803
+ ];
804
+ "args": [];
805
+ },
806
+ {
807
+ "name": "settleManagedTransfer";
808
+ "docs": [
809
+ "Marks a managed inflight transfer as settled on the destination side."
810
+ ];
811
+ "discriminator": [
812
+ 197,
813
+ 87,
814
+ 37,
815
+ 239,
816
+ 24,
817
+ 244,
818
+ 152,
819
+ 135
820
+ ];
821
+ "accounts": [
822
+ {
823
+ "name": "glamState";
824
+ },
825
+ {
826
+ "name": "glamSigner";
827
+ "signer": true;
828
+ },
829
+ {
830
+ "name": "transferRecord";
831
+ "writable": true;
832
+ }
833
+ ];
834
+ "args": [];
835
+ },
836
+ {
837
+ "name": "updateLayerzeroOftRoute";
838
+ "discriminator": [
839
+ 77,
840
+ 162,
841
+ 99,
842
+ 1,
843
+ 182,
844
+ 142,
845
+ 66,
846
+ 172
847
+ ];
848
+ "accounts": [
849
+ {
850
+ "name": "glamState";
851
+ "writable": true;
852
+ },
853
+ {
854
+ "name": "glamSigner";
855
+ "writable": true;
856
+ "signer": true;
857
+ },
858
+ {
859
+ "name": "glamProtocolProgram";
860
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
861
+ }
862
+ ];
863
+ "args": [
864
+ {
865
+ "name": "route";
866
+ "type": {
867
+ "defined": {
868
+ "name": "layerzeroOftRoute";
869
+ };
870
+ };
871
+ }
872
+ ];
873
+ }
874
+ ];
875
+ "accounts": [
876
+ {
877
+ "name": "bridgeRegistry";
878
+ "discriminator": [
879
+ 178,
880
+ 207,
881
+ 65,
882
+ 53,
883
+ 51,
884
+ 157,
885
+ 148,
886
+ 202
887
+ ];
888
+ },
889
+ {
890
+ "name": "bridgeSession";
891
+ "discriminator": [
892
+ 235,
893
+ 118,
894
+ 90,
895
+ 227,
896
+ 230,
897
+ 173,
898
+ 141,
899
+ 184
900
+ ];
901
+ },
902
+ {
903
+ "name": "bridgeTransferRecord";
904
+ "discriminator": [
905
+ 46,
906
+ 131,
907
+ 253,
908
+ 32,
909
+ 218,
910
+ 137,
911
+ 45,
912
+ 96
913
+ ];
914
+ },
915
+ {
916
+ "name": "stateAccount";
917
+ "discriminator": [
918
+ 142,
919
+ 247,
920
+ 54,
921
+ 95,
922
+ 85,
923
+ 133,
924
+ 249,
925
+ 103
926
+ ];
927
+ }
928
+ ];
929
+ "errors": [
930
+ {
931
+ "code": 6000;
932
+ "name": "unsupportedProtocol";
933
+ "msg": "Unsupported bridge protocol";
934
+ },
935
+ {
936
+ "code": 6001;
937
+ "name": "policyNotFound";
938
+ "msg": "A matching bridge policy was not found";
939
+ },
940
+ {
941
+ "code": 6002;
942
+ "name": "amountTooSmall";
943
+ "msg": "Bridge amount is below the policy minimum";
944
+ },
945
+ {
946
+ "code": 6003;
947
+ "name": "amountTooLarge";
948
+ "msg": "Bridge amount exceeds the policy maximum";
949
+ },
950
+ {
951
+ "code": 6004;
952
+ "name": "invalidProviderProgram";
953
+ "msg": "The provider program does not match the approved policy";
954
+ },
955
+ {
956
+ "code": 6005;
957
+ "name": "invalidSourceTokenAccount";
958
+ "msg": "The source token account is invalid";
959
+ },
960
+ {
961
+ "code": 6006;
962
+ "name": "invalidSourceBalance";
963
+ "msg": "The source token balance did not change as expected";
964
+ },
965
+ {
966
+ "code": 6007;
967
+ "name": "invalidProviderReceipt";
968
+ "msg": "The bridge receipt metadata is invalid";
969
+ },
970
+ {
971
+ "code": 6008;
972
+ "name": "invalidTransferStatus";
973
+ "msg": "The bridge transfer status does not allow this action";
974
+ },
975
+ {
976
+ "code": 6009;
977
+ "name": "transferNotManaged";
978
+ "msg": "Only managed transfers can use this instruction";
979
+ },
980
+ {
981
+ "code": 6010;
982
+ "name": "mathOverflow";
983
+ "msg": "Arithmetic overflow";
984
+ },
985
+ {
986
+ "code": 6011;
987
+ "name": "invalidTransferRecord";
988
+ "msg": "The transfer record does not belong to this vault";
989
+ },
990
+ {
991
+ "code": 6012;
992
+ "name": "tooManyProviderInstructions";
993
+ "msg": "Too many provider instructions were supplied";
994
+ },
995
+ {
996
+ "code": 6013;
997
+ "name": "duplicateBridgeRoute";
998
+ "msg": "Bridge policy contains overlapping duplicate routes";
999
+ },
1000
+ {
1001
+ "code": 6014;
1002
+ "name": "bridgeRouteNotFound";
1003
+ "msg": "The bridge route was not found in the existing policy";
1004
+ },
1005
+ {
1006
+ "code": 6015;
1007
+ "name": "ambiguousBridgeRoute";
1008
+ "msg": "Multiple bridge routes matched; disambiguate the provider identity";
1009
+ },
1010
+ {
1011
+ "code": 6016;
1012
+ "name": "invalidOftAuxiliaryTokenAccount";
1013
+ "msg": "The OFT auxiliary token account is invalid";
1014
+ },
1015
+ {
1016
+ "code": 6017;
1017
+ "name": "oftAuxiliaryTokenAccountAlreadyExists";
1018
+ "msg": "The OFT auxiliary token account already exists";
1019
+ },
1020
+ {
1021
+ "code": 6018;
1022
+ "name": "missingEndOftInstruction";
1023
+ "msg": "Transaction must include a matching commit_oft_transfer instruction";
1024
+ },
1025
+ {
1026
+ "code": 6019;
1027
+ "name": "invalidOftInstructionSet";
1028
+ "msg": "The OFT middle instruction set is invalid";
1029
+ },
1030
+ {
1031
+ "code": 6020;
1032
+ "name": "invalidOftAuxiliaryBalance";
1033
+ "msg": "The OFT auxiliary token balance did not change as expected";
1034
+ }
1035
+ ];
1036
+ "types": [
1037
+ {
1038
+ "name": "accountType";
1039
+ "type": {
1040
+ "kind": "enum";
1041
+ "variants": [
1042
+ {
1043
+ "name": "vault";
1044
+ },
1045
+ {
1046
+ "name": "tokenizedVault";
1047
+ },
1048
+ {
1049
+ "name": "mint";
1050
+ },
1051
+ {
1052
+ "name": "singleAssetVault";
1053
+ }
1054
+ ];
1055
+ };
1056
+ },
1057
+ {
1058
+ "name": "accruedFees";
1059
+ "type": {
1060
+ "kind": "struct";
1061
+ "fields": [
1062
+ {
1063
+ "name": "vaultSubscriptionFee";
1064
+ "type": "u128";
1065
+ },
1066
+ {
1067
+ "name": "vaultRedemptionFee";
1068
+ "type": "u128";
1069
+ },
1070
+ {
1071
+ "name": "managerSubscriptionFee";
1072
+ "type": "u128";
1073
+ },
1074
+ {
1075
+ "name": "managerRedemptionFee";
1076
+ "type": "u128";
1077
+ },
1078
+ {
1079
+ "name": "managementFee";
1080
+ "type": "u128";
1081
+ },
1082
+ {
1083
+ "name": "performanceFee";
1084
+ "type": "u128";
1085
+ },
1086
+ {
1087
+ "name": "protocolBaseFee";
1088
+ "type": "u128";
1089
+ },
1090
+ {
1091
+ "name": "protocolFlowFee";
1092
+ "type": "u128";
1093
+ }
1094
+ ];
1095
+ };
1096
+ },
1097
+ {
1098
+ "name": "bridgeRegistry";
1099
+ "type": {
1100
+ "kind": "struct";
1101
+ "fields": [
1102
+ {
1103
+ "name": "glamState";
1104
+ "type": "pubkey";
1105
+ },
1106
+ {
1107
+ "name": "managedTransferCount";
1108
+ "type": "u64";
1109
+ },
1110
+ {
1111
+ "name": "bump";
1112
+ "type": "u8";
1113
+ }
1114
+ ];
1115
+ };
1116
+ },
1117
+ {
1118
+ "name": "bridgeSession";
1119
+ "type": {
1120
+ "kind": "struct";
1121
+ "fields": [
1122
+ {
1123
+ "name": "glamState";
1124
+ "type": "pubkey";
1125
+ },
1126
+ {
1127
+ "name": "signer";
1128
+ "type": "pubkey";
1129
+ },
1130
+ {
1131
+ "name": "transferId";
1132
+ "type": {
1133
+ "array": [
1134
+ "u8",
1135
+ 32
1136
+ ];
1137
+ };
1138
+ },
1139
+ {
1140
+ "name": "protocol";
1141
+ "type": "u16";
1142
+ },
1143
+ {
1144
+ "name": "managed";
1145
+ "type": "bool";
1146
+ },
1147
+ {
1148
+ "name": "sourceMint";
1149
+ "type": "pubkey";
1150
+ },
1151
+ {
1152
+ "name": "sourceTokenAccount";
1153
+ "type": "pubkey";
1154
+ },
1155
+ {
1156
+ "name": "providerProgram";
1157
+ "type": "pubkey";
1158
+ },
1159
+ {
1160
+ "name": "providerConfig";
1161
+ "type": "pubkey";
1162
+ },
1163
+ {
1164
+ "name": "providerSender";
1165
+ "type": "pubkey";
1166
+ },
1167
+ {
1168
+ "name": "providerDelegate";
1169
+ "type": "pubkey";
1170
+ },
1171
+ {
1172
+ "name": "providerReceipt";
1173
+ "type": "pubkey";
1174
+ },
1175
+ {
1176
+ "name": "providerInstructionHash";
1177
+ "type": {
1178
+ "array": [
1179
+ "u8",
1180
+ 32
1181
+ ];
1182
+ };
1183
+ },
1184
+ {
1185
+ "name": "providerInstructionCount";
1186
+ "type": "u16";
1187
+ },
1188
+ {
1189
+ "name": "sourceAmount";
1190
+ "type": "u64";
1191
+ },
1192
+ {
1193
+ "name": "quotedOutAmount";
1194
+ "type": "u64";
1195
+ },
1196
+ {
1197
+ "name": "initialSourceBalance";
1198
+ "type": "u64";
1199
+ },
1200
+ {
1201
+ "name": "initialProviderSequence";
1202
+ "type": "u64";
1203
+ },
1204
+ {
1205
+ "name": "destinationChain";
1206
+ "type": "u16";
1207
+ },
1208
+ {
1209
+ "name": "destinationRecipient";
1210
+ "type": "pubkey";
1211
+ },
1212
+ {
1213
+ "name": "quoteExpiresAt";
1214
+ "type": "i64";
1215
+ },
1216
+ {
1217
+ "name": "preparedSlot";
1218
+ "type": "u64";
1219
+ },
1220
+ {
1221
+ "name": "bump";
1222
+ "type": "u8";
1223
+ }
1224
+ ];
1225
+ };
1226
+ },
1227
+ {
1228
+ "name": "bridgeTransferRecord";
1229
+ "type": {
1230
+ "kind": "struct";
1231
+ "fields": [
1232
+ {
1233
+ "name": "glamState";
1234
+ "type": "pubkey";
1235
+ },
1236
+ {
1237
+ "name": "transferId";
1238
+ "type": {
1239
+ "array": [
1240
+ "u8",
1241
+ 32
1242
+ ];
1243
+ };
1244
+ },
1245
+ {
1246
+ "name": "protocol";
1247
+ "type": "u16";
1248
+ },
1249
+ {
1250
+ "name": "status";
1251
+ "type": {
1252
+ "defined": {
1253
+ "name": "bridgeTransferStatus";
1254
+ };
1255
+ };
1256
+ },
1257
+ {
1258
+ "name": "managed";
1259
+ "type": "bool";
1260
+ },
1261
+ {
1262
+ "name": "receiptVerified";
1263
+ "type": "bool";
1264
+ },
1265
+ {
1266
+ "name": "sourceMint";
1267
+ "type": "pubkey";
1268
+ },
1269
+ {
1270
+ "name": "sourceTokenAccount";
1271
+ "type": "pubkey";
1272
+ },
1273
+ {
1274
+ "name": "providerProgram";
1275
+ "type": "pubkey";
1276
+ },
1277
+ {
1278
+ "name": "providerConfig";
1279
+ "type": "pubkey";
1280
+ },
1281
+ {
1282
+ "name": "sourceAmount";
1283
+ "type": "u64";
1284
+ },
1285
+ {
1286
+ "name": "quotedOutAmount";
1287
+ "type": "u64";
1288
+ },
1289
+ {
1290
+ "name": "destinationChain";
1291
+ "type": "u16";
1292
+ },
1293
+ {
1294
+ "name": "destinationRecipient";
1295
+ "type": "pubkey";
1296
+ },
1297
+ {
1298
+ "name": "providerTransferId";
1299
+ "type": {
1300
+ "array": [
1301
+ "u8",
1302
+ 32
1303
+ ];
1304
+ };
1305
+ },
1306
+ {
1307
+ "name": "providerEmitter";
1308
+ "type": "pubkey";
1309
+ },
1310
+ {
1311
+ "name": "providerSequence";
1312
+ "type": "u64";
1313
+ },
1314
+ {
1315
+ "name": "committedSlot";
1316
+ "type": "u64";
1317
+ },
1318
+ {
1319
+ "name": "settledSlot";
1320
+ "type": "u64";
1321
+ },
1322
+ {
1323
+ "name": "reconciledSlot";
1324
+ "type": "u64";
1325
+ },
1326
+ {
1327
+ "name": "failureReason";
1328
+ "type": "u8";
1329
+ },
1330
+ {
1331
+ "name": "bump";
1332
+ "type": "u8";
1333
+ }
1334
+ ];
1335
+ };
1336
+ },
1337
+ {
1338
+ "name": "bridgeTransferStatus";
1339
+ "type": {
1340
+ "kind": "enum";
1341
+ "variants": [
1342
+ {
1343
+ "name": "committed";
1344
+ },
1345
+ {
1346
+ "name": "settled";
1347
+ },
1348
+ {
1349
+ "name": "reconciled";
1350
+ },
1351
+ {
1352
+ "name": "failed";
1353
+ }
1354
+ ];
1355
+ };
1356
+ },
1357
+ {
1358
+ "name": "commitOftTransferArgs";
1359
+ "type": {
1360
+ "kind": "struct";
1361
+ "fields": [
1362
+ {
1363
+ "name": "transferId";
1364
+ "type": {
1365
+ "array": [
1366
+ "u8",
1367
+ 32
1368
+ ];
1369
+ };
1370
+ }
1371
+ ];
1372
+ };
1373
+ },
1374
+ {
1375
+ "name": "createdModel";
1376
+ "type": {
1377
+ "kind": "struct";
1378
+ "fields": [
1379
+ {
1380
+ "name": "key";
1381
+ "type": {
1382
+ "array": [
1383
+ "u8",
1384
+ 8
1385
+ ];
1386
+ };
1387
+ },
1388
+ {
1389
+ "name": "createdBy";
1390
+ "type": "pubkey";
1391
+ },
1392
+ {
1393
+ "name": "createdAt";
1394
+ "type": "i64";
1395
+ }
1396
+ ];
1397
+ };
1398
+ },
1399
+ {
1400
+ "name": "delegateAcl";
1401
+ "type": {
1402
+ "kind": "struct";
1403
+ "fields": [
1404
+ {
1405
+ "name": "pubkey";
1406
+ "type": "pubkey";
1407
+ },
1408
+ {
1409
+ "name": "integrationPermissions";
1410
+ "type": {
1411
+ "vec": {
1412
+ "defined": {
1413
+ "name": "integrationPermissions";
1414
+ };
1415
+ };
1416
+ };
1417
+ },
1418
+ {
1419
+ "name": "expiresAt";
1420
+ "type": "i64";
1421
+ }
1422
+ ];
1423
+ };
1424
+ },
1425
+ {
1426
+ "name": "engineField";
1427
+ "type": {
1428
+ "kind": "struct";
1429
+ "fields": [
1430
+ {
1431
+ "name": "name";
1432
+ "type": {
1433
+ "defined": {
1434
+ "name": "engineFieldName";
1435
+ };
1436
+ };
1437
+ },
1438
+ {
1439
+ "name": "value";
1440
+ "type": {
1441
+ "defined": {
1442
+ "name": "engineFieldValue";
1443
+ };
1444
+ };
1445
+ }
1446
+ ];
1447
+ };
1448
+ },
1449
+ {
1450
+ "name": "engineFieldName";
1451
+ "type": {
1452
+ "kind": "enum";
1453
+ "variants": [
1454
+ {
1455
+ "name": "owner";
1456
+ },
1457
+ {
1458
+ "name": "portfolioManagerName";
1459
+ },
1460
+ {
1461
+ "name": "name";
1462
+ },
1463
+ {
1464
+ "name": "uri";
1465
+ },
1466
+ {
1467
+ "name": "assets";
1468
+ },
1469
+ {
1470
+ "name": "delegateAcls";
1471
+ },
1472
+ {
1473
+ "name": "integrationAcls";
1474
+ },
1475
+ {
1476
+ "name": "timelockDuration";
1477
+ },
1478
+ {
1479
+ "name": "borrowable";
1480
+ },
1481
+ {
1482
+ "name": "defaultAccountStateFrozen";
1483
+ },
1484
+ {
1485
+ "name": "permanentDelegate";
1486
+ },
1487
+ {
1488
+ "name": "notifyAndSettle";
1489
+ },
1490
+ {
1491
+ "name": "feeStructure";
1492
+ },
1493
+ {
1494
+ "name": "feeParams";
1495
+ },
1496
+ {
1497
+ "name": "claimableFees";
1498
+ },
1499
+ {
1500
+ "name": "claimedFees";
1501
+ },
1502
+ {
1503
+ "name": "oracleConfigs";
1504
+ }
1505
+ ];
1506
+ };
1507
+ },
1508
+ {
1509
+ "name": "engineFieldValue";
1510
+ "type": {
1511
+ "kind": "enum";
1512
+ "variants": [
1513
+ {
1514
+ "name": "boolean";
1515
+ "fields": [
1516
+ {
1517
+ "name": "val";
1518
+ "type": "bool";
1519
+ }
1520
+ ];
1521
+ },
1522
+ {
1523
+ "name": "u8";
1524
+ "fields": [
1525
+ {
1526
+ "name": "val";
1527
+ "type": "u8";
1528
+ }
1529
+ ];
1530
+ },
1531
+ {
1532
+ "name": "u32";
1533
+ "fields": [
1534
+ {
1535
+ "name": "val";
1536
+ "type": "u32";
1537
+ }
1538
+ ];
1539
+ },
1540
+ {
1541
+ "name": "u64";
1542
+ "fields": [
1543
+ {
1544
+ "name": "val";
1545
+ "type": "u64";
1546
+ }
1547
+ ];
1548
+ },
1549
+ {
1550
+ "name": "string";
1551
+ "fields": [
1552
+ {
1553
+ "name": "val";
1554
+ "type": "string";
1555
+ }
1556
+ ];
1557
+ },
1558
+ {
1559
+ "name": "pubkey";
1560
+ "fields": [
1561
+ {
1562
+ "name": "val";
1563
+ "type": "pubkey";
1564
+ }
1565
+ ];
1566
+ },
1567
+ {
1568
+ "name": "vecPubkey";
1569
+ "fields": [
1570
+ {
1571
+ "name": "val";
1572
+ "type": {
1573
+ "vec": "pubkey";
1574
+ };
1575
+ }
1576
+ ];
1577
+ },
1578
+ {
1579
+ "name": "vecU8";
1580
+ "fields": [
1581
+ {
1582
+ "name": "val";
1583
+ "type": "bytes";
1584
+ }
1585
+ ];
1586
+ },
1587
+ {
1588
+ "name": "vecU32";
1589
+ "fields": [
1590
+ {
1591
+ "name": "val";
1592
+ "type": {
1593
+ "vec": "u32";
1594
+ };
1595
+ }
1596
+ ];
1597
+ },
1598
+ {
1599
+ "name": "vecDelegateAcl";
1600
+ "fields": [
1601
+ {
1602
+ "name": "val";
1603
+ "type": {
1604
+ "vec": {
1605
+ "defined": {
1606
+ "name": "delegateAcl";
1607
+ };
1608
+ };
1609
+ };
1610
+ }
1611
+ ];
1612
+ },
1613
+ {
1614
+ "name": "vecIntegrationAcl";
1615
+ "fields": [
1616
+ {
1617
+ "name": "val";
1618
+ "type": {
1619
+ "vec": {
1620
+ "defined": {
1621
+ "name": "integrationAcl";
1622
+ };
1623
+ };
1624
+ };
1625
+ }
1626
+ ];
1627
+ },
1628
+ {
1629
+ "name": "feeStructure";
1630
+ "fields": [
1631
+ {
1632
+ "name": "val";
1633
+ "type": {
1634
+ "defined": {
1635
+ "name": "feeStructure";
1636
+ };
1637
+ };
1638
+ }
1639
+ ];
1640
+ },
1641
+ {
1642
+ "name": "feeParams";
1643
+ "fields": [
1644
+ {
1645
+ "name": "val";
1646
+ "type": {
1647
+ "defined": {
1648
+ "name": "feeParams";
1649
+ };
1650
+ };
1651
+ }
1652
+ ];
1653
+ },
1654
+ {
1655
+ "name": "accruedFees";
1656
+ "fields": [
1657
+ {
1658
+ "name": "val";
1659
+ "type": {
1660
+ "defined": {
1661
+ "name": "accruedFees";
1662
+ };
1663
+ };
1664
+ }
1665
+ ];
1666
+ },
1667
+ {
1668
+ "name": "notifyAndSettle";
1669
+ "fields": [
1670
+ {
1671
+ "name": "val";
1672
+ "type": {
1673
+ "defined": {
1674
+ "name": "notifyAndSettle";
1675
+ };
1676
+ };
1677
+ }
1678
+ ];
1679
+ },
1680
+ {
1681
+ "name": "oracleConfigs";
1682
+ "fields": [
1683
+ {
1684
+ "name": "val";
1685
+ "type": {
1686
+ "defined": {
1687
+ "name": "oracleConfigs";
1688
+ };
1689
+ };
1690
+ }
1691
+ ];
1692
+ }
1693
+ ];
1694
+ };
1695
+ },
1696
+ {
1697
+ "name": "entryExitFees";
1698
+ "type": {
1699
+ "kind": "struct";
1700
+ "fields": [
1701
+ {
1702
+ "name": "subscriptionFeeBps";
1703
+ "type": "u16";
1704
+ },
1705
+ {
1706
+ "name": "redemptionFeeBps";
1707
+ "type": "u16";
1708
+ }
1709
+ ];
1710
+ };
1711
+ },
1712
+ {
1713
+ "name": "feeParams";
1714
+ "type": {
1715
+ "kind": "struct";
1716
+ "fields": [
1717
+ {
1718
+ "name": "yearInSeconds";
1719
+ "type": "u32";
1720
+ },
1721
+ {
1722
+ "name": "paHighWaterMark";
1723
+ "type": "i128";
1724
+ },
1725
+ {
1726
+ "name": "paLastNav";
1727
+ "type": "i128";
1728
+ },
1729
+ {
1730
+ "name": "lastAum";
1731
+ "type": "i128";
1732
+ },
1733
+ {
1734
+ "name": "lastPerformanceFeeCrystallized";
1735
+ "type": "i64";
1736
+ },
1737
+ {
1738
+ "name": "lastManagementFeeCrystallized";
1739
+ "type": "i64";
1740
+ },
1741
+ {
1742
+ "name": "lastProtocolFeeCrystallized";
1743
+ "type": "i64";
1744
+ }
1745
+ ];
1746
+ };
1747
+ },
1748
+ {
1749
+ "name": "feeStructure";
1750
+ "type": {
1751
+ "kind": "struct";
1752
+ "fields": [
1753
+ {
1754
+ "name": "vault";
1755
+ "type": {
1756
+ "defined": {
1757
+ "name": "entryExitFees";
1758
+ };
1759
+ };
1760
+ },
1761
+ {
1762
+ "name": "manager";
1763
+ "type": {
1764
+ "defined": {
1765
+ "name": "entryExitFees";
1766
+ };
1767
+ };
1768
+ },
1769
+ {
1770
+ "name": "management";
1771
+ "type": {
1772
+ "defined": {
1773
+ "name": "managementFee";
1774
+ };
1775
+ };
1776
+ },
1777
+ {
1778
+ "name": "performance";
1779
+ "type": {
1780
+ "defined": {
1781
+ "name": "performanceFee";
1782
+ };
1783
+ };
1784
+ },
1785
+ {
1786
+ "name": "protocol";
1787
+ "type": {
1788
+ "defined": {
1789
+ "name": "protocolFees";
1790
+ };
1791
+ };
1792
+ }
1793
+ ];
1794
+ };
1795
+ },
1796
+ {
1797
+ "name": "hurdleType";
1798
+ "type": {
1799
+ "kind": "enum";
1800
+ "variants": [
1801
+ {
1802
+ "name": "hard";
1803
+ },
1804
+ {
1805
+ "name": "soft";
1806
+ }
1807
+ ];
1808
+ };
1809
+ },
1810
+ {
1811
+ "name": "integrationAcl";
1812
+ "docs": [
1813
+ "An integration program can have multiple protocols supported.",
1814
+ "Enabled protocols are stored in a bitmask, and each protocol can have its own policy."
1815
+ ];
1816
+ "type": {
1817
+ "kind": "struct";
1818
+ "fields": [
1819
+ {
1820
+ "name": "integrationProgram";
1821
+ "type": "pubkey";
1822
+ },
1823
+ {
1824
+ "name": "protocolsBitmask";
1825
+ "type": "u16";
1826
+ },
1827
+ {
1828
+ "name": "protocolPolicies";
1829
+ "type": {
1830
+ "vec": {
1831
+ "defined": {
1832
+ "name": "protocolPolicy";
1833
+ };
1834
+ };
1835
+ };
1836
+ }
1837
+ ];
1838
+ };
1839
+ },
1840
+ {
1841
+ "name": "integrationPermissions";
1842
+ "docs": [
1843
+ "Stores delegate permissions for an integration program."
1844
+ ];
1845
+ "type": {
1846
+ "kind": "struct";
1847
+ "fields": [
1848
+ {
1849
+ "name": "integrationProgram";
1850
+ "type": "pubkey";
1851
+ },
1852
+ {
1853
+ "name": "protocolPermissions";
1854
+ "type": {
1855
+ "vec": {
1856
+ "defined": {
1857
+ "name": "protocolPermissions";
1858
+ };
1859
+ };
1860
+ };
1861
+ }
1862
+ ];
1863
+ };
1864
+ },
1865
+ {
1866
+ "name": "layerzeroOftRoute";
1867
+ "docs": [
1868
+ "source_mint, destination_chain, destination_recipient, provider_program uniquely identify a route"
1869
+ ];
1870
+ "type": {
1871
+ "kind": "struct";
1872
+ "fields": [
1873
+ {
1874
+ "name": "sourceMint";
1875
+ "type": "pubkey";
1876
+ },
1877
+ {
1878
+ "name": "destinationChain";
1879
+ "type": "u32";
1880
+ },
1881
+ {
1882
+ "name": "destinationRecipient";
1883
+ "type": "pubkey";
1884
+ },
1885
+ {
1886
+ "name": "providerProgram";
1887
+ "type": "pubkey";
1888
+ },
1889
+ {
1890
+ "name": "managementMode";
1891
+ "type": {
1892
+ "defined": {
1893
+ "name": "routeManagementMode";
1894
+ };
1895
+ };
1896
+ },
1897
+ {
1898
+ "name": "minAmount";
1899
+ "type": "u64";
1900
+ },
1901
+ {
1902
+ "name": "maxAmount";
1903
+ "type": "u64";
1904
+ }
1905
+ ];
1906
+ };
1907
+ },
1908
+ {
1909
+ "name": "managementFee";
1910
+ "type": {
1911
+ "kind": "struct";
1912
+ "fields": [
1913
+ {
1914
+ "name": "feeBps";
1915
+ "type": "u16";
1916
+ }
1917
+ ];
1918
+ };
1919
+ },
1920
+ {
1921
+ "name": "noticePeriodType";
1922
+ "type": {
1923
+ "kind": "enum";
1924
+ "variants": [
1925
+ {
1926
+ "name": "hard";
1927
+ },
1928
+ {
1929
+ "name": "soft";
1930
+ }
1931
+ ];
1932
+ };
1933
+ },
1934
+ {
1935
+ "name": "notifyAndSettle";
1936
+ "type": {
1937
+ "kind": "struct";
1938
+ "fields": [
1939
+ {
1940
+ "name": "model";
1941
+ "type": {
1942
+ "defined": {
1943
+ "name": "valuationModel";
1944
+ };
1945
+ };
1946
+ },
1947
+ {
1948
+ "name": "permissionlessFulfillment";
1949
+ "type": "bool";
1950
+ },
1951
+ {
1952
+ "name": "subscribeNoticePeriodType";
1953
+ "type": {
1954
+ "defined": {
1955
+ "name": "noticePeriodType";
1956
+ };
1957
+ };
1958
+ },
1959
+ {
1960
+ "name": "subscribeNoticePeriod";
1961
+ "type": "u64";
1962
+ },
1963
+ {
1964
+ "name": "subscribeSettlementPeriod";
1965
+ "type": "u64";
1966
+ },
1967
+ {
1968
+ "name": "subscribeCancellationWindow";
1969
+ "type": "u64";
1970
+ },
1971
+ {
1972
+ "name": "redeemNoticePeriodType";
1973
+ "type": {
1974
+ "defined": {
1975
+ "name": "noticePeriodType";
1976
+ };
1977
+ };
1978
+ },
1979
+ {
1980
+ "name": "redeemNoticePeriod";
1981
+ "type": "u64";
1982
+ },
1983
+ {
1984
+ "name": "redeemSettlementPeriod";
1985
+ "type": "u64";
1986
+ },
1987
+ {
1988
+ "name": "redeemCancellationWindow";
1989
+ "type": "u64";
1990
+ },
1991
+ {
1992
+ "name": "timeUnit";
1993
+ "type": {
1994
+ "defined": {
1995
+ "name": "timeUnit";
1996
+ };
1997
+ };
1998
+ },
1999
+ {
2000
+ "name": "padding";
2001
+ "type": {
2002
+ "array": [
2003
+ "u8",
2004
+ 3
2005
+ ];
2006
+ };
2007
+ }
2008
+ ];
2009
+ };
2010
+ },
2011
+ {
2012
+ "name": "oracleConfigs";
2013
+ "docs": [
2014
+ "Vault-specific oracle configs. If available, these configs are preferred over the global config."
2015
+ ];
2016
+ "type": {
2017
+ "kind": "struct";
2018
+ "fields": [
2019
+ {
2020
+ "name": "maxAgesSeconds";
2021
+ "type": {
2022
+ "vec": {
2023
+ "array": [
2024
+ "u16",
2025
+ 2
2026
+ ];
2027
+ };
2028
+ };
2029
+ },
2030
+ {
2031
+ "name": "padding";
2032
+ "type": {
2033
+ "array": [
2034
+ "u8",
2035
+ 12
2036
+ ];
2037
+ };
2038
+ }
2039
+ ];
2040
+ };
2041
+ },
2042
+ {
2043
+ "name": "performanceFee";
2044
+ "type": {
2045
+ "kind": "struct";
2046
+ "fields": [
2047
+ {
2048
+ "name": "feeBps";
2049
+ "type": "u16";
2050
+ },
2051
+ {
2052
+ "name": "hurdleRateBps";
2053
+ "type": "u16";
2054
+ },
2055
+ {
2056
+ "name": "hurdleType";
2057
+ "type": {
2058
+ "defined": {
2059
+ "name": "hurdleType";
2060
+ };
2061
+ };
2062
+ }
2063
+ ];
2064
+ };
2065
+ },
2066
+ {
2067
+ "name": "prepareOftTransferArgs";
2068
+ "type": {
2069
+ "kind": "struct";
2070
+ "fields": [
2071
+ {
2072
+ "name": "transferId";
2073
+ "type": {
2074
+ "array": [
2075
+ "u8",
2076
+ 32
2077
+ ];
2078
+ };
2079
+ },
2080
+ {
2081
+ "name": "middleInstructionHash";
2082
+ "type": {
2083
+ "array": [
2084
+ "u8",
2085
+ 32
2086
+ ];
2087
+ };
2088
+ },
2089
+ {
2090
+ "name": "middleInstructionCount";
2091
+ "type": "u16";
2092
+ },
2093
+ {
2094
+ "name": "sourceAmount";
2095
+ "type": "u64";
2096
+ },
2097
+ {
2098
+ "name": "managed";
2099
+ "type": "bool";
2100
+ }
2101
+ ];
2102
+ };
2103
+ },
2104
+ {
2105
+ "name": "pricedProtocol";
2106
+ "type": {
2107
+ "kind": "struct";
2108
+ "fields": [
2109
+ {
2110
+ "name": "rent";
2111
+ "type": "u64";
2112
+ },
2113
+ {
2114
+ "name": "amount";
2115
+ "type": "i128";
2116
+ },
2117
+ {
2118
+ "name": "decimals";
2119
+ "type": "u8";
2120
+ },
2121
+ {
2122
+ "name": "lastUpdatedSlot";
2123
+ "type": "u64";
2124
+ },
2125
+ {
2126
+ "name": "integrationProgram";
2127
+ "type": "pubkey";
2128
+ },
2129
+ {
2130
+ "name": "protocolBitflag";
2131
+ "type": "u16";
2132
+ },
2133
+ {
2134
+ "name": "positions";
2135
+ "type": {
2136
+ "vec": "pubkey";
2137
+ };
2138
+ }
2139
+ ];
2140
+ };
2141
+ },
2142
+ {
2143
+ "name": "protocolFees";
2144
+ "type": {
2145
+ "kind": "struct";
2146
+ "fields": [
2147
+ {
2148
+ "name": "baseFeeBps";
2149
+ "type": "u16";
2150
+ },
2151
+ {
2152
+ "name": "flowFeeBps";
2153
+ "type": "u16";
2154
+ }
2155
+ ];
2156
+ };
2157
+ },
2158
+ {
2159
+ "name": "protocolPermissions";
2160
+ "docs": [
2161
+ "Represents a delegate's permissions for a specific protocol"
2162
+ ];
2163
+ "type": {
2164
+ "kind": "struct";
2165
+ "fields": [
2166
+ {
2167
+ "name": "protocolBitflag";
2168
+ "type": "u16";
2169
+ },
2170
+ {
2171
+ "name": "permissionsBitmask";
2172
+ "type": "u64";
2173
+ }
2174
+ ];
2175
+ };
2176
+ },
2177
+ {
2178
+ "name": "protocolPolicy";
2179
+ "docs": [
2180
+ "Stores policy data for an integrated protocol.",
2181
+ "Integration programs serialize/deserialize this data."
2182
+ ];
2183
+ "type": {
2184
+ "kind": "struct";
2185
+ "fields": [
2186
+ {
2187
+ "name": "protocolBitflag";
2188
+ "type": "u16";
2189
+ },
2190
+ {
2191
+ "name": "data";
2192
+ "type": "bytes";
2193
+ }
2194
+ ];
2195
+ };
2196
+ },
2197
+ {
2198
+ "name": "routeManagementMode";
2199
+ "type": {
2200
+ "kind": "enum";
2201
+ "variants": [
2202
+ {
2203
+ "name": "unmanagedOnly";
2204
+ },
2205
+ {
2206
+ "name": "managedOnly";
2207
+ },
2208
+ {
2209
+ "name": "either";
2210
+ }
2211
+ ];
2212
+ };
2213
+ },
2214
+ {
2215
+ "name": "stateAccount";
2216
+ "type": {
2217
+ "kind": "struct";
2218
+ "fields": [
2219
+ {
2220
+ "name": "accountType";
2221
+ "type": {
2222
+ "defined": {
2223
+ "name": "accountType";
2224
+ };
2225
+ };
2226
+ },
2227
+ {
2228
+ "name": "enabled";
2229
+ "type": "bool";
2230
+ },
2231
+ {
2232
+ "name": "vault";
2233
+ "type": "pubkey";
2234
+ },
2235
+ {
2236
+ "name": "owner";
2237
+ "type": "pubkey";
2238
+ },
2239
+ {
2240
+ "name": "portfolioManagerName";
2241
+ "type": {
2242
+ "array": [
2243
+ "u8",
2244
+ 32
2245
+ ];
2246
+ };
2247
+ },
2248
+ {
2249
+ "name": "created";
2250
+ "type": {
2251
+ "defined": {
2252
+ "name": "createdModel";
2253
+ };
2254
+ };
2255
+ },
2256
+ {
2257
+ "name": "baseAssetMint";
2258
+ "type": "pubkey";
2259
+ },
2260
+ {
2261
+ "name": "baseAssetDecimals";
2262
+ "type": "u8";
2263
+ },
2264
+ {
2265
+ "name": "baseAssetTokenProgram";
2266
+ "type": "u8";
2267
+ },
2268
+ {
2269
+ "name": "name";
2270
+ "type": {
2271
+ "array": [
2272
+ "u8",
2273
+ 32
2274
+ ];
2275
+ };
2276
+ },
2277
+ {
2278
+ "name": "timelockDuration";
2279
+ "type": "u32";
2280
+ },
2281
+ {
2282
+ "name": "timelockExpiresAt";
2283
+ "type": "u64";
2284
+ },
2285
+ {
2286
+ "name": "mint";
2287
+ "type": "pubkey";
2288
+ },
2289
+ {
2290
+ "name": "assets";
2291
+ "type": {
2292
+ "vec": "pubkey";
2293
+ };
2294
+ },
2295
+ {
2296
+ "name": "integrationAcls";
2297
+ "type": {
2298
+ "vec": {
2299
+ "defined": {
2300
+ "name": "integrationAcl";
2301
+ };
2302
+ };
2303
+ };
2304
+ },
2305
+ {
2306
+ "name": "delegateAcls";
2307
+ "type": {
2308
+ "vec": {
2309
+ "defined": {
2310
+ "name": "delegateAcl";
2311
+ };
2312
+ };
2313
+ };
2314
+ },
2315
+ {
2316
+ "name": "externalPositions";
2317
+ "type": {
2318
+ "vec": "pubkey";
2319
+ };
2320
+ },
2321
+ {
2322
+ "name": "pricedProtocols";
2323
+ "type": {
2324
+ "vec": {
2325
+ "defined": {
2326
+ "name": "pricedProtocol";
2327
+ };
2328
+ };
2329
+ };
2330
+ },
2331
+ {
2332
+ "name": "params";
2333
+ "type": {
2334
+ "vec": {
2335
+ "vec": {
2336
+ "defined": {
2337
+ "name": "engineField";
2338
+ };
2339
+ };
2340
+ };
2341
+ };
2342
+ }
2343
+ ];
2344
+ };
2345
+ },
2346
+ {
2347
+ "name": "timeUnit";
2348
+ "type": {
2349
+ "kind": "enum";
2350
+ "variants": [
2351
+ {
2352
+ "name": "second";
2353
+ },
2354
+ {
2355
+ "name": "slot";
2356
+ }
2357
+ ];
2358
+ };
2359
+ },
2360
+ {
2361
+ "name": "valuationModel";
2362
+ "type": {
2363
+ "kind": "enum";
2364
+ "variants": [
2365
+ {
2366
+ "name": "continuous";
2367
+ },
2368
+ {
2369
+ "name": "periodic";
2370
+ }
2371
+ ];
2372
+ };
2373
+ }
2374
+ ];
2375
+ "constants": [
2376
+ {
2377
+ "name": "protoBridgePermReconcile";
2378
+ "type": "u64";
2379
+ "value": "2";
2380
+ },
2381
+ {
2382
+ "name": "protoBridgePermSend";
2383
+ "type": "u64";
2384
+ "value": "1";
2385
+ },
2386
+ {
2387
+ "name": "protoLayerzeroOft";
2388
+ "type": "u16";
2389
+ "value": "4";
2390
+ },
2391
+ {
2392
+ "name": "protoManagedInflight";
2393
+ "type": "u16";
2394
+ "value": "4";
2395
+ }
2396
+ ];
2397
+ };