@glamsystems/glam-sdk 1.0.12-alpha.3 → 1.0.13-test

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