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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/index.cjs.js +50322 -20832
  2. package/index.esm.js +50167 -20833
  3. package/package.json +3 -3
  4. package/target/idl/ext_jupiter-staging.json +1960 -0
  5. package/target/idl/ext_jupiter.json +1960 -0
  6. package/target/idl/ext_orca-staging.json +2797 -0
  7. package/target/idl/ext_orca.json +2797 -0
  8. package/target/idl/glam_mint-staging.json +1452 -80
  9. package/target/idl/glam_mint.json +256 -1
  10. package/target/idl/glam_protocol-staging.json +22 -2
  11. package/target/idl/glam_protocol.json +584 -0
  12. package/target/types/ext_jupiter-staging.ts +1966 -0
  13. package/target/types/ext_jupiter.ts +1966 -0
  14. package/target/types/ext_orca-staging.ts +2803 -0
  15. package/target/types/ext_orca.ts +2803 -0
  16. package/target/types/glam_mint-staging.ts +1452 -80
  17. package/target/types/glam_mint.ts +256 -1
  18. package/target/types/glam_protocol-staging.ts +22 -2
  19. package/target/types/glam_protocol.ts +584 -0
  20. package/src/assets.d.ts +0 -40
  21. package/src/client/access.d.ts +0 -57
  22. package/src/client/base.d.ts +0 -180
  23. package/src/client/bridge.d.ts +0 -185
  24. package/src/client/bridgeRegistry.d.ts +0 -32
  25. package/src/client/cctp.d.ts +0 -156
  26. package/src/client/epi.d.ts +0 -78
  27. package/src/client/fees.d.ts +0 -33
  28. package/src/client/invest.d.ts +0 -37
  29. package/src/client/jupiter.d.ts +0 -45
  30. package/src/client/kamino/farm.d.ts +0 -39
  31. package/src/client/kamino/index.d.ts +0 -4
  32. package/src/client/kamino/lending.d.ts +0 -86
  33. package/src/client/kamino/types.d.ts +0 -56
  34. package/src/client/kamino/vaults.d.ts +0 -31
  35. package/src/client/marinade.d.ts +0 -42
  36. package/src/client/mint.d.ts +0 -127
  37. package/src/client/price.d.ts +0 -128
  38. package/src/client/stake-pool.d.ts +0 -39
  39. package/src/client/stake.d.ts +0 -34
  40. package/src/client/state.d.ts +0 -56
  41. package/src/client/timelock.d.ts +0 -31
  42. package/src/client/vault.d.ts +0 -90
  43. package/src/client.d.ts +0 -62
  44. package/src/clientConfig.d.ts +0 -29
  45. package/src/constants.d.ts +0 -82
  46. package/src/deser/base.d.ts +0 -18
  47. package/src/deser/index.d.ts +0 -3
  48. package/src/deser/integrationPolicies.d.ts +0 -106
  49. package/src/deser/kaminoLayouts.d.ts +0 -264
  50. package/src/deser/tokenAclLayouts.d.ts +0 -67
  51. package/src/error.d.ts +0 -29
  52. package/src/glamExports.d.ts +0 -5563
  53. package/src/globalConfig.d.ts +0 -22
  54. package/src/index.d.ts +0 -18
  55. package/src/models/acl.d.ts +0 -43
  56. package/src/models/index.d.ts +0 -8
  57. package/src/models/mint.d.ts +0 -64
  58. package/src/models/state.d.ts +0 -104
  59. package/src/models/types.d.ts +0 -28
  60. package/src/react/cluster-provider.d.ts +0 -22
  61. package/src/react/glam.d.ts +0 -47
  62. package/src/react/index.d.ts +0 -5
  63. package/src/react/query-keys.d.ts +0 -38
  64. package/src/react/useVaultBalanceSubscription.d.ts +0 -17
  65. package/src/utils/accounts.d.ts +0 -72
  66. package/src/utils/bitmask.d.ts +0 -53
  67. package/src/utils/blockhash.d.ts +0 -11
  68. package/src/utils/common.d.ts +0 -37
  69. package/src/utils/computeBudget.d.ts +0 -15
  70. package/src/utils/evm.d.ts +0 -10
  71. package/src/utils/fraction.d.ts +0 -29
  72. package/src/utils/glamPDAs.d.ts +0 -14
  73. package/src/utils/index.d.ts +0 -16
  74. package/src/utils/jupiterApi.d.ts +0 -89
  75. package/src/utils/lookupTables.d.ts +0 -53
  76. package/src/utils/pkmap.d.ts +0 -82
  77. package/src/utils/pkset.d.ts +0 -73
  78. package/src/utils/positionCategorizer.d.ts +0 -36
  79. package/src/utils/rpc.d.ts +0 -33
  80. package/src/utils/timelock.d.ts +0 -52
  81. package/src/utils/transaction.d.ts +0 -13
  82. package/target/types/ext_bridge.d.ts +0 -2385
  83. package/target/types/ext_cctp.d.ts +0 -1268
  84. package/target/types/ext_epi.d.ts +0 -2175
  85. package/target/types/ext_kamino.d.ts +0 -3433
  86. package/target/types/ext_marinade.d.ts +0 -1593
  87. package/target/types/ext_spl.d.ts +0 -1274
  88. package/target/types/ext_stake_pool.d.ts +0 -1622
  89. package/target/types/glam_config.d.ts +0 -755
  90. package/target/types/glam_mint.d.ts +0 -6094
  91. package/target/types/glam_protocol.d.ts +0 -2708
@@ -0,0 +1,2803 @@
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_orca.json`.
6
+ */
7
+ export type ExtOrca = {
8
+ "address": "gstgo1EgmTp2PbLSaL6Qg57P7uADx3aiRZrMsewEdSy",
9
+ "metadata": {
10
+ "name": "extOrca",
11
+ "version": "0.1.0",
12
+ "spec": "0.1.0",
13
+ "description": "Orca Whirlpools integration for GLAM Protocol"
14
+ },
15
+ "instructions": [
16
+ {
17
+ "name": "closePositionWithTokenExtensions",
18
+ "docs": [
19
+ "Close an empty Token-2022 Orca Whirlpools position owned by the GLAM vault.",
20
+ "",
21
+ "- Permission: `ClosePosition`.",
22
+ "- Policy: Whirlpool and both pool token mints must be allowlisted."
23
+ ],
24
+ "discriminator": [
25
+ 1,
26
+ 182,
27
+ 135,
28
+ 59,
29
+ 155,
30
+ 25,
31
+ 99,
32
+ 223
33
+ ],
34
+ "accounts": [
35
+ {
36
+ "name": "glamState",
37
+ "writable": true
38
+ },
39
+ {
40
+ "name": "glamVault",
41
+ "writable": true,
42
+ "pda": {
43
+ "seeds": [
44
+ {
45
+ "kind": "const",
46
+ "value": [
47
+ 118,
48
+ 97,
49
+ 117,
50
+ 108,
51
+ 116
52
+ ]
53
+ },
54
+ {
55
+ "kind": "account",
56
+ "path": "glamState"
57
+ }
58
+ ],
59
+ "program": {
60
+ "kind": "account",
61
+ "path": "glamProtocolProgram"
62
+ }
63
+ }
64
+ },
65
+ {
66
+ "name": "glamSigner",
67
+ "writable": true,
68
+ "signer": true
69
+ },
70
+ {
71
+ "name": "integrationAuthority",
72
+ "pda": {
73
+ "seeds": [
74
+ {
75
+ "kind": "const",
76
+ "value": [
77
+ 105,
78
+ 110,
79
+ 116,
80
+ 101,
81
+ 103,
82
+ 114,
83
+ 97,
84
+ 116,
85
+ 105,
86
+ 111,
87
+ 110,
88
+ 45,
89
+ 97,
90
+ 117,
91
+ 116,
92
+ 104,
93
+ 111,
94
+ 114,
95
+ 105,
96
+ 116,
97
+ 121
98
+ ]
99
+ }
100
+ ]
101
+ }
102
+ },
103
+ {
104
+ "name": "cpiProgram",
105
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
106
+ },
107
+ {
108
+ "name": "glamProtocolProgram",
109
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
110
+ },
111
+ {
112
+ "name": "systemProgram",
113
+ "address": "11111111111111111111111111111111"
114
+ },
115
+ {
116
+ "name": "whirlpool"
117
+ },
118
+ {
119
+ "name": "position",
120
+ "writable": true
121
+ },
122
+ {
123
+ "name": "positionMint",
124
+ "writable": true
125
+ },
126
+ {
127
+ "name": "positionTokenAccount",
128
+ "writable": true
129
+ },
130
+ {
131
+ "name": "token2022Program",
132
+ "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
133
+ }
134
+ ],
135
+ "args": []
136
+ },
137
+ {
138
+ "name": "collectFeesV2",
139
+ "docs": [
140
+ "Collect accrued pool fees using Token-2022-aware accounts.",
141
+ "",
142
+ "- Permission: `CollectFees`.",
143
+ "- Policy: Whirlpool and both pool token mints must be allowlisted."
144
+ ],
145
+ "discriminator": [
146
+ 207,
147
+ 117,
148
+ 95,
149
+ 191,
150
+ 229,
151
+ 180,
152
+ 226,
153
+ 15
154
+ ],
155
+ "accounts": [
156
+ {
157
+ "name": "glamState",
158
+ "writable": true
159
+ },
160
+ {
161
+ "name": "glamVault",
162
+ "writable": true,
163
+ "pda": {
164
+ "seeds": [
165
+ {
166
+ "kind": "const",
167
+ "value": [
168
+ 118,
169
+ 97,
170
+ 117,
171
+ 108,
172
+ 116
173
+ ]
174
+ },
175
+ {
176
+ "kind": "account",
177
+ "path": "glamState"
178
+ }
179
+ ],
180
+ "program": {
181
+ "kind": "account",
182
+ "path": "glamProtocolProgram"
183
+ }
184
+ }
185
+ },
186
+ {
187
+ "name": "glamSigner",
188
+ "writable": true,
189
+ "signer": true
190
+ },
191
+ {
192
+ "name": "integrationAuthority",
193
+ "pda": {
194
+ "seeds": [
195
+ {
196
+ "kind": "const",
197
+ "value": [
198
+ 105,
199
+ 110,
200
+ 116,
201
+ 101,
202
+ 103,
203
+ 114,
204
+ 97,
205
+ 116,
206
+ 105,
207
+ 111,
208
+ 110,
209
+ 45,
210
+ 97,
211
+ 117,
212
+ 116,
213
+ 104,
214
+ 111,
215
+ 114,
216
+ 105,
217
+ 116,
218
+ 121
219
+ ]
220
+ }
221
+ ]
222
+ }
223
+ },
224
+ {
225
+ "name": "cpiProgram",
226
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
227
+ },
228
+ {
229
+ "name": "glamProtocolProgram",
230
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
231
+ },
232
+ {
233
+ "name": "systemProgram",
234
+ "address": "11111111111111111111111111111111"
235
+ },
236
+ {
237
+ "name": "whirlpool"
238
+ },
239
+ {
240
+ "name": "position",
241
+ "writable": true
242
+ },
243
+ {
244
+ "name": "positionTokenAccount"
245
+ },
246
+ {
247
+ "name": "tokenMintA"
248
+ },
249
+ {
250
+ "name": "tokenMintB"
251
+ },
252
+ {
253
+ "name": "tokenOwnerAccountA",
254
+ "writable": true
255
+ },
256
+ {
257
+ "name": "tokenVaultA",
258
+ "writable": true
259
+ },
260
+ {
261
+ "name": "tokenOwnerAccountB",
262
+ "writable": true
263
+ },
264
+ {
265
+ "name": "tokenVaultB",
266
+ "writable": true
267
+ },
268
+ {
269
+ "name": "tokenProgramA"
270
+ },
271
+ {
272
+ "name": "tokenProgramB"
273
+ },
274
+ {
275
+ "name": "memoProgram"
276
+ }
277
+ ],
278
+ "args": [
279
+ {
280
+ "name": "remainingAccountsInfo",
281
+ "type": {
282
+ "option": {
283
+ "defined": {
284
+ "name": "remainingAccountsInfo"
285
+ }
286
+ }
287
+ }
288
+ }
289
+ ]
290
+ },
291
+ {
292
+ "name": "collectRewardV2",
293
+ "docs": [
294
+ "Collect one reward emission using Token-2022-aware accounts.",
295
+ "",
296
+ "- Permission: `CollectReward`.",
297
+ "- Policy: Whirlpool, pool token mints, and reward mint must be allowlisted."
298
+ ],
299
+ "discriminator": [
300
+ 177,
301
+ 107,
302
+ 37,
303
+ 180,
304
+ 160,
305
+ 19,
306
+ 49,
307
+ 209
308
+ ],
309
+ "accounts": [
310
+ {
311
+ "name": "glamState",
312
+ "writable": true
313
+ },
314
+ {
315
+ "name": "glamVault",
316
+ "writable": true,
317
+ "pda": {
318
+ "seeds": [
319
+ {
320
+ "kind": "const",
321
+ "value": [
322
+ 118,
323
+ 97,
324
+ 117,
325
+ 108,
326
+ 116
327
+ ]
328
+ },
329
+ {
330
+ "kind": "account",
331
+ "path": "glamState"
332
+ }
333
+ ],
334
+ "program": {
335
+ "kind": "account",
336
+ "path": "glamProtocolProgram"
337
+ }
338
+ }
339
+ },
340
+ {
341
+ "name": "glamSigner",
342
+ "writable": true,
343
+ "signer": true
344
+ },
345
+ {
346
+ "name": "integrationAuthority",
347
+ "pda": {
348
+ "seeds": [
349
+ {
350
+ "kind": "const",
351
+ "value": [
352
+ 105,
353
+ 110,
354
+ 116,
355
+ 101,
356
+ 103,
357
+ 114,
358
+ 97,
359
+ 116,
360
+ 105,
361
+ 111,
362
+ 110,
363
+ 45,
364
+ 97,
365
+ 117,
366
+ 116,
367
+ 104,
368
+ 111,
369
+ 114,
370
+ 105,
371
+ 116,
372
+ 121
373
+ ]
374
+ }
375
+ ]
376
+ }
377
+ },
378
+ {
379
+ "name": "cpiProgram",
380
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
381
+ },
382
+ {
383
+ "name": "glamProtocolProgram",
384
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
385
+ },
386
+ {
387
+ "name": "systemProgram",
388
+ "address": "11111111111111111111111111111111"
389
+ },
390
+ {
391
+ "name": "whirlpool"
392
+ },
393
+ {
394
+ "name": "position",
395
+ "writable": true
396
+ },
397
+ {
398
+ "name": "positionTokenAccount"
399
+ },
400
+ {
401
+ "name": "rewardOwnerAccount",
402
+ "writable": true
403
+ },
404
+ {
405
+ "name": "rewardMint"
406
+ },
407
+ {
408
+ "name": "rewardVault",
409
+ "writable": true
410
+ },
411
+ {
412
+ "name": "rewardTokenProgram"
413
+ },
414
+ {
415
+ "name": "memoProgram"
416
+ }
417
+ ],
418
+ "args": [
419
+ {
420
+ "name": "rewardIndex",
421
+ "type": "u8"
422
+ },
423
+ {
424
+ "name": "remainingAccountsInfo",
425
+ "type": {
426
+ "option": {
427
+ "defined": {
428
+ "name": "remainingAccountsInfo"
429
+ }
430
+ }
431
+ }
432
+ }
433
+ ]
434
+ },
435
+ {
436
+ "name": "decreaseLiquidityV2",
437
+ "docs": [
438
+ "Decrease liquidity in an Orca Whirlpools position using Token-2022-aware accounts.",
439
+ "",
440
+ "- Permission: `DecreaseLiquidity`.",
441
+ "- Policy: Whirlpool and both pool token mints must be allowlisted."
442
+ ],
443
+ "discriminator": [
444
+ 58,
445
+ 127,
446
+ 188,
447
+ 62,
448
+ 79,
449
+ 82,
450
+ 196,
451
+ 96
452
+ ],
453
+ "accounts": [
454
+ {
455
+ "name": "glamState",
456
+ "writable": true
457
+ },
458
+ {
459
+ "name": "glamVault",
460
+ "writable": true,
461
+ "pda": {
462
+ "seeds": [
463
+ {
464
+ "kind": "const",
465
+ "value": [
466
+ 118,
467
+ 97,
468
+ 117,
469
+ 108,
470
+ 116
471
+ ]
472
+ },
473
+ {
474
+ "kind": "account",
475
+ "path": "glamState"
476
+ }
477
+ ],
478
+ "program": {
479
+ "kind": "account",
480
+ "path": "glamProtocolProgram"
481
+ }
482
+ }
483
+ },
484
+ {
485
+ "name": "glamSigner",
486
+ "writable": true,
487
+ "signer": true
488
+ },
489
+ {
490
+ "name": "integrationAuthority",
491
+ "pda": {
492
+ "seeds": [
493
+ {
494
+ "kind": "const",
495
+ "value": [
496
+ 105,
497
+ 110,
498
+ 116,
499
+ 101,
500
+ 103,
501
+ 114,
502
+ 97,
503
+ 116,
504
+ 105,
505
+ 111,
506
+ 110,
507
+ 45,
508
+ 97,
509
+ 117,
510
+ 116,
511
+ 104,
512
+ 111,
513
+ 114,
514
+ 105,
515
+ 116,
516
+ 121
517
+ ]
518
+ }
519
+ ]
520
+ }
521
+ },
522
+ {
523
+ "name": "cpiProgram",
524
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
525
+ },
526
+ {
527
+ "name": "glamProtocolProgram",
528
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
529
+ },
530
+ {
531
+ "name": "systemProgram",
532
+ "address": "11111111111111111111111111111111"
533
+ },
534
+ {
535
+ "name": "whirlpool",
536
+ "writable": true
537
+ },
538
+ {
539
+ "name": "tokenProgramA"
540
+ },
541
+ {
542
+ "name": "tokenProgramB"
543
+ },
544
+ {
545
+ "name": "memoProgram"
546
+ },
547
+ {
548
+ "name": "position",
549
+ "writable": true
550
+ },
551
+ {
552
+ "name": "positionTokenAccount"
553
+ },
554
+ {
555
+ "name": "tokenMintA"
556
+ },
557
+ {
558
+ "name": "tokenMintB"
559
+ },
560
+ {
561
+ "name": "tokenOwnerAccountA",
562
+ "writable": true
563
+ },
564
+ {
565
+ "name": "tokenOwnerAccountB",
566
+ "writable": true
567
+ },
568
+ {
569
+ "name": "tokenVaultA",
570
+ "writable": true
571
+ },
572
+ {
573
+ "name": "tokenVaultB",
574
+ "writable": true
575
+ },
576
+ {
577
+ "name": "tickArrayLower",
578
+ "writable": true
579
+ },
580
+ {
581
+ "name": "tickArrayUpper",
582
+ "writable": true
583
+ }
584
+ ],
585
+ "args": [
586
+ {
587
+ "name": "liquidityAmount",
588
+ "type": "u128"
589
+ },
590
+ {
591
+ "name": "tokenMinA",
592
+ "type": "u64"
593
+ },
594
+ {
595
+ "name": "tokenMinB",
596
+ "type": "u64"
597
+ },
598
+ {
599
+ "name": "remainingAccountsInfo",
600
+ "type": {
601
+ "option": {
602
+ "defined": {
603
+ "name": "remainingAccountsInfo"
604
+ }
605
+ }
606
+ }
607
+ }
608
+ ]
609
+ },
610
+ {
611
+ "name": "increaseLiquidityByTokenAmountsV2",
612
+ "docs": [
613
+ "Increase liquidity by token amount bounds using Token-2022-aware accounts."
614
+ ],
615
+ "discriminator": [
616
+ 239,
617
+ 251,
618
+ 9,
619
+ 124,
620
+ 210,
621
+ 198,
622
+ 53,
623
+ 43
624
+ ],
625
+ "accounts": [
626
+ {
627
+ "name": "glamState",
628
+ "writable": true
629
+ },
630
+ {
631
+ "name": "glamVault",
632
+ "writable": true,
633
+ "pda": {
634
+ "seeds": [
635
+ {
636
+ "kind": "const",
637
+ "value": [
638
+ 118,
639
+ 97,
640
+ 117,
641
+ 108,
642
+ 116
643
+ ]
644
+ },
645
+ {
646
+ "kind": "account",
647
+ "path": "glamState"
648
+ }
649
+ ],
650
+ "program": {
651
+ "kind": "account",
652
+ "path": "glamProtocolProgram"
653
+ }
654
+ }
655
+ },
656
+ {
657
+ "name": "glamSigner",
658
+ "writable": true,
659
+ "signer": true
660
+ },
661
+ {
662
+ "name": "integrationAuthority",
663
+ "pda": {
664
+ "seeds": [
665
+ {
666
+ "kind": "const",
667
+ "value": [
668
+ 105,
669
+ 110,
670
+ 116,
671
+ 101,
672
+ 103,
673
+ 114,
674
+ 97,
675
+ 116,
676
+ 105,
677
+ 111,
678
+ 110,
679
+ 45,
680
+ 97,
681
+ 117,
682
+ 116,
683
+ 104,
684
+ 111,
685
+ 114,
686
+ 105,
687
+ 116,
688
+ 121
689
+ ]
690
+ }
691
+ ]
692
+ }
693
+ },
694
+ {
695
+ "name": "cpiProgram",
696
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
697
+ },
698
+ {
699
+ "name": "glamProtocolProgram",
700
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
701
+ },
702
+ {
703
+ "name": "systemProgram",
704
+ "address": "11111111111111111111111111111111"
705
+ },
706
+ {
707
+ "name": "whirlpool",
708
+ "writable": true
709
+ },
710
+ {
711
+ "name": "tokenProgramA"
712
+ },
713
+ {
714
+ "name": "tokenProgramB"
715
+ },
716
+ {
717
+ "name": "memoProgram"
718
+ },
719
+ {
720
+ "name": "position",
721
+ "writable": true
722
+ },
723
+ {
724
+ "name": "positionTokenAccount"
725
+ },
726
+ {
727
+ "name": "tokenMintA"
728
+ },
729
+ {
730
+ "name": "tokenMintB"
731
+ },
732
+ {
733
+ "name": "tokenOwnerAccountA",
734
+ "writable": true
735
+ },
736
+ {
737
+ "name": "tokenOwnerAccountB",
738
+ "writable": true
739
+ },
740
+ {
741
+ "name": "tokenVaultA",
742
+ "writable": true
743
+ },
744
+ {
745
+ "name": "tokenVaultB",
746
+ "writable": true
747
+ },
748
+ {
749
+ "name": "tickArrayLower",
750
+ "writable": true
751
+ },
752
+ {
753
+ "name": "tickArrayUpper",
754
+ "writable": true
755
+ }
756
+ ],
757
+ "args": [
758
+ {
759
+ "name": "method",
760
+ "type": {
761
+ "defined": {
762
+ "name": "increaseLiquidityMethod"
763
+ }
764
+ }
765
+ },
766
+ {
767
+ "name": "remainingAccountsInfo",
768
+ "type": {
769
+ "option": {
770
+ "defined": {
771
+ "name": "remainingAccountsInfo"
772
+ }
773
+ }
774
+ }
775
+ }
776
+ ]
777
+ },
778
+ {
779
+ "name": "increaseLiquidityV2",
780
+ "docs": [
781
+ "Increase liquidity in an Orca Whirlpools position using Token-2022-aware accounts.",
782
+ "",
783
+ "- Permission: `IncreaseLiquidity`.",
784
+ "- Policy: Whirlpool and both pool token mints must be allowlisted."
785
+ ],
786
+ "discriminator": [
787
+ 133,
788
+ 29,
789
+ 89,
790
+ 223,
791
+ 69,
792
+ 238,
793
+ 176,
794
+ 10
795
+ ],
796
+ "accounts": [
797
+ {
798
+ "name": "glamState",
799
+ "writable": true
800
+ },
801
+ {
802
+ "name": "glamVault",
803
+ "writable": true,
804
+ "pda": {
805
+ "seeds": [
806
+ {
807
+ "kind": "const",
808
+ "value": [
809
+ 118,
810
+ 97,
811
+ 117,
812
+ 108,
813
+ 116
814
+ ]
815
+ },
816
+ {
817
+ "kind": "account",
818
+ "path": "glamState"
819
+ }
820
+ ],
821
+ "program": {
822
+ "kind": "account",
823
+ "path": "glamProtocolProgram"
824
+ }
825
+ }
826
+ },
827
+ {
828
+ "name": "glamSigner",
829
+ "writable": true,
830
+ "signer": true
831
+ },
832
+ {
833
+ "name": "integrationAuthority",
834
+ "pda": {
835
+ "seeds": [
836
+ {
837
+ "kind": "const",
838
+ "value": [
839
+ 105,
840
+ 110,
841
+ 116,
842
+ 101,
843
+ 103,
844
+ 114,
845
+ 97,
846
+ 116,
847
+ 105,
848
+ 111,
849
+ 110,
850
+ 45,
851
+ 97,
852
+ 117,
853
+ 116,
854
+ 104,
855
+ 111,
856
+ 114,
857
+ 105,
858
+ 116,
859
+ 121
860
+ ]
861
+ }
862
+ ]
863
+ }
864
+ },
865
+ {
866
+ "name": "cpiProgram",
867
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
868
+ },
869
+ {
870
+ "name": "glamProtocolProgram",
871
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
872
+ },
873
+ {
874
+ "name": "systemProgram",
875
+ "address": "11111111111111111111111111111111"
876
+ },
877
+ {
878
+ "name": "whirlpool",
879
+ "writable": true
880
+ },
881
+ {
882
+ "name": "tokenProgramA"
883
+ },
884
+ {
885
+ "name": "tokenProgramB"
886
+ },
887
+ {
888
+ "name": "memoProgram"
889
+ },
890
+ {
891
+ "name": "position",
892
+ "writable": true
893
+ },
894
+ {
895
+ "name": "positionTokenAccount"
896
+ },
897
+ {
898
+ "name": "tokenMintA"
899
+ },
900
+ {
901
+ "name": "tokenMintB"
902
+ },
903
+ {
904
+ "name": "tokenOwnerAccountA",
905
+ "writable": true
906
+ },
907
+ {
908
+ "name": "tokenOwnerAccountB",
909
+ "writable": true
910
+ },
911
+ {
912
+ "name": "tokenVaultA",
913
+ "writable": true
914
+ },
915
+ {
916
+ "name": "tokenVaultB",
917
+ "writable": true
918
+ },
919
+ {
920
+ "name": "tickArrayLower",
921
+ "writable": true
922
+ },
923
+ {
924
+ "name": "tickArrayUpper",
925
+ "writable": true
926
+ }
927
+ ],
928
+ "args": [
929
+ {
930
+ "name": "liquidityAmount",
931
+ "type": "u128"
932
+ },
933
+ {
934
+ "name": "tokenMaxA",
935
+ "type": "u64"
936
+ },
937
+ {
938
+ "name": "tokenMaxB",
939
+ "type": "u64"
940
+ },
941
+ {
942
+ "name": "remainingAccountsInfo",
943
+ "type": {
944
+ "option": {
945
+ "defined": {
946
+ "name": "remainingAccountsInfo"
947
+ }
948
+ }
949
+ }
950
+ }
951
+ ]
952
+ },
953
+ {
954
+ "name": "initializeTickArray",
955
+ "docs": [
956
+ "Initialize an Orca fixed tick array for an allowlisted Whirlpool.",
957
+ "",
958
+ "- Permission: `InitializeTickArray`.",
959
+ "- Policy: Whirlpool and both pool token mints must be allowlisted."
960
+ ],
961
+ "discriminator": [
962
+ 11,
963
+ 188,
964
+ 193,
965
+ 214,
966
+ 141,
967
+ 91,
968
+ 149,
969
+ 184
970
+ ],
971
+ "accounts": [
972
+ {
973
+ "name": "glamState",
974
+ "writable": true
975
+ },
976
+ {
977
+ "name": "glamVault",
978
+ "writable": true,
979
+ "pda": {
980
+ "seeds": [
981
+ {
982
+ "kind": "const",
983
+ "value": [
984
+ 118,
985
+ 97,
986
+ 117,
987
+ 108,
988
+ 116
989
+ ]
990
+ },
991
+ {
992
+ "kind": "account",
993
+ "path": "glamState"
994
+ }
995
+ ],
996
+ "program": {
997
+ "kind": "account",
998
+ "path": "glamProtocolProgram"
999
+ }
1000
+ }
1001
+ },
1002
+ {
1003
+ "name": "glamSigner",
1004
+ "writable": true,
1005
+ "signer": true
1006
+ },
1007
+ {
1008
+ "name": "integrationAuthority",
1009
+ "pda": {
1010
+ "seeds": [
1011
+ {
1012
+ "kind": "const",
1013
+ "value": [
1014
+ 105,
1015
+ 110,
1016
+ 116,
1017
+ 101,
1018
+ 103,
1019
+ 114,
1020
+ 97,
1021
+ 116,
1022
+ 105,
1023
+ 111,
1024
+ 110,
1025
+ 45,
1026
+ 97,
1027
+ 117,
1028
+ 116,
1029
+ 104,
1030
+ 111,
1031
+ 114,
1032
+ 105,
1033
+ 116,
1034
+ 121
1035
+ ]
1036
+ }
1037
+ ]
1038
+ }
1039
+ },
1040
+ {
1041
+ "name": "cpiProgram",
1042
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
1043
+ },
1044
+ {
1045
+ "name": "glamProtocolProgram",
1046
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
1047
+ },
1048
+ {
1049
+ "name": "systemProgram",
1050
+ "address": "11111111111111111111111111111111"
1051
+ },
1052
+ {
1053
+ "name": "whirlpool"
1054
+ },
1055
+ {
1056
+ "name": "tickArray",
1057
+ "writable": true
1058
+ }
1059
+ ],
1060
+ "args": [
1061
+ {
1062
+ "name": "startTickIndex",
1063
+ "type": "i32"
1064
+ }
1065
+ ]
1066
+ },
1067
+ {
1068
+ "name": "openPositionWithTokenExtensions",
1069
+ "docs": [
1070
+ "Open a Token-2022 Orca Whirlpools position owned by the GLAM vault.",
1071
+ "",
1072
+ "- Permission: `OpenPosition`.",
1073
+ "- Policy: Whirlpool and both pool token mints must be allowlisted."
1074
+ ],
1075
+ "discriminator": [
1076
+ 212,
1077
+ 47,
1078
+ 95,
1079
+ 92,
1080
+ 114,
1081
+ 102,
1082
+ 131,
1083
+ 250
1084
+ ],
1085
+ "accounts": [
1086
+ {
1087
+ "name": "glamState",
1088
+ "writable": true
1089
+ },
1090
+ {
1091
+ "name": "glamVault",
1092
+ "writable": true,
1093
+ "pda": {
1094
+ "seeds": [
1095
+ {
1096
+ "kind": "const",
1097
+ "value": [
1098
+ 118,
1099
+ 97,
1100
+ 117,
1101
+ 108,
1102
+ 116
1103
+ ]
1104
+ },
1105
+ {
1106
+ "kind": "account",
1107
+ "path": "glamState"
1108
+ }
1109
+ ],
1110
+ "program": {
1111
+ "kind": "account",
1112
+ "path": "glamProtocolProgram"
1113
+ }
1114
+ }
1115
+ },
1116
+ {
1117
+ "name": "glamSigner",
1118
+ "writable": true,
1119
+ "signer": true
1120
+ },
1121
+ {
1122
+ "name": "integrationAuthority",
1123
+ "pda": {
1124
+ "seeds": [
1125
+ {
1126
+ "kind": "const",
1127
+ "value": [
1128
+ 105,
1129
+ 110,
1130
+ 116,
1131
+ 101,
1132
+ 103,
1133
+ 114,
1134
+ 97,
1135
+ 116,
1136
+ 105,
1137
+ 111,
1138
+ 110,
1139
+ 45,
1140
+ 97,
1141
+ 117,
1142
+ 116,
1143
+ 104,
1144
+ 111,
1145
+ 114,
1146
+ 105,
1147
+ 116,
1148
+ 121
1149
+ ]
1150
+ }
1151
+ ]
1152
+ }
1153
+ },
1154
+ {
1155
+ "name": "cpiProgram",
1156
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
1157
+ },
1158
+ {
1159
+ "name": "glamProtocolProgram",
1160
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
1161
+ },
1162
+ {
1163
+ "name": "systemProgram",
1164
+ "address": "11111111111111111111111111111111"
1165
+ },
1166
+ {
1167
+ "name": "position",
1168
+ "writable": true
1169
+ },
1170
+ {
1171
+ "name": "positionMint",
1172
+ "writable": true,
1173
+ "signer": true
1174
+ },
1175
+ {
1176
+ "name": "positionTokenAccount",
1177
+ "writable": true
1178
+ },
1179
+ {
1180
+ "name": "whirlpool"
1181
+ },
1182
+ {
1183
+ "name": "token2022Program",
1184
+ "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
1185
+ },
1186
+ {
1187
+ "name": "associatedTokenProgram",
1188
+ "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
1189
+ },
1190
+ {
1191
+ "name": "metadataUpdateAuth"
1192
+ }
1193
+ ],
1194
+ "args": [
1195
+ {
1196
+ "name": "tickLowerIndex",
1197
+ "type": "i32"
1198
+ },
1199
+ {
1200
+ "name": "tickUpperIndex",
1201
+ "type": "i32"
1202
+ },
1203
+ {
1204
+ "name": "withTokenMetadataExtension",
1205
+ "type": "bool"
1206
+ }
1207
+ ]
1208
+ },
1209
+ {
1210
+ "name": "repositionLiquidityV2",
1211
+ "docs": [
1212
+ "Reposition liquidity into a new Orca Whirlpools tick range."
1213
+ ],
1214
+ "discriminator": [
1215
+ 191,
1216
+ 169,
1217
+ 224,
1218
+ 11,
1219
+ 131,
1220
+ 19,
1221
+ 158,
1222
+ 253
1223
+ ],
1224
+ "accounts": [
1225
+ {
1226
+ "name": "glamState",
1227
+ "writable": true
1228
+ },
1229
+ {
1230
+ "name": "glamVault",
1231
+ "writable": true,
1232
+ "pda": {
1233
+ "seeds": [
1234
+ {
1235
+ "kind": "const",
1236
+ "value": [
1237
+ 118,
1238
+ 97,
1239
+ 117,
1240
+ 108,
1241
+ 116
1242
+ ]
1243
+ },
1244
+ {
1245
+ "kind": "account",
1246
+ "path": "glamState"
1247
+ }
1248
+ ],
1249
+ "program": {
1250
+ "kind": "account",
1251
+ "path": "glamProtocolProgram"
1252
+ }
1253
+ }
1254
+ },
1255
+ {
1256
+ "name": "glamSigner",
1257
+ "writable": true,
1258
+ "signer": true
1259
+ },
1260
+ {
1261
+ "name": "integrationAuthority",
1262
+ "pda": {
1263
+ "seeds": [
1264
+ {
1265
+ "kind": "const",
1266
+ "value": [
1267
+ 105,
1268
+ 110,
1269
+ 116,
1270
+ 101,
1271
+ 103,
1272
+ 114,
1273
+ 97,
1274
+ 116,
1275
+ 105,
1276
+ 111,
1277
+ 110,
1278
+ 45,
1279
+ 97,
1280
+ 117,
1281
+ 116,
1282
+ 104,
1283
+ 111,
1284
+ 114,
1285
+ 105,
1286
+ 116,
1287
+ 121
1288
+ ]
1289
+ }
1290
+ ]
1291
+ }
1292
+ },
1293
+ {
1294
+ "name": "cpiProgram",
1295
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
1296
+ },
1297
+ {
1298
+ "name": "glamProtocolProgram",
1299
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
1300
+ },
1301
+ {
1302
+ "name": "systemProgram",
1303
+ "address": "11111111111111111111111111111111"
1304
+ },
1305
+ {
1306
+ "name": "whirlpool",
1307
+ "writable": true
1308
+ },
1309
+ {
1310
+ "name": "tokenProgramA"
1311
+ },
1312
+ {
1313
+ "name": "tokenProgramB"
1314
+ },
1315
+ {
1316
+ "name": "memoProgram"
1317
+ },
1318
+ {
1319
+ "name": "position",
1320
+ "writable": true
1321
+ },
1322
+ {
1323
+ "name": "positionTokenAccount"
1324
+ },
1325
+ {
1326
+ "name": "tokenMintA"
1327
+ },
1328
+ {
1329
+ "name": "tokenMintB"
1330
+ },
1331
+ {
1332
+ "name": "tokenOwnerAccountA",
1333
+ "writable": true
1334
+ },
1335
+ {
1336
+ "name": "tokenOwnerAccountB",
1337
+ "writable": true
1338
+ },
1339
+ {
1340
+ "name": "tokenVaultA",
1341
+ "writable": true
1342
+ },
1343
+ {
1344
+ "name": "tokenVaultB",
1345
+ "writable": true
1346
+ },
1347
+ {
1348
+ "name": "existingTickArrayLower",
1349
+ "writable": true
1350
+ },
1351
+ {
1352
+ "name": "existingTickArrayUpper",
1353
+ "writable": true
1354
+ },
1355
+ {
1356
+ "name": "newTickArrayLower",
1357
+ "writable": true
1358
+ },
1359
+ {
1360
+ "name": "newTickArrayUpper",
1361
+ "writable": true
1362
+ }
1363
+ ],
1364
+ "args": [
1365
+ {
1366
+ "name": "newTickLowerIndex",
1367
+ "type": "i32"
1368
+ },
1369
+ {
1370
+ "name": "newTickUpperIndex",
1371
+ "type": "i32"
1372
+ },
1373
+ {
1374
+ "name": "method",
1375
+ "type": {
1376
+ "defined": {
1377
+ "name": "repositionLiquidityMethod"
1378
+ }
1379
+ }
1380
+ },
1381
+ {
1382
+ "name": "remainingAccountsInfo",
1383
+ "type": {
1384
+ "option": {
1385
+ "defined": {
1386
+ "name": "remainingAccountsInfo"
1387
+ }
1388
+ }
1389
+ }
1390
+ }
1391
+ ]
1392
+ },
1393
+ {
1394
+ "name": "setWhirlpoolsPolicy",
1395
+ "docs": [
1396
+ "Set the Orca Whirlpools policy for a GLAM vault."
1397
+ ],
1398
+ "discriminator": [
1399
+ 87,
1400
+ 233,
1401
+ 250,
1402
+ 82,
1403
+ 120,
1404
+ 40,
1405
+ 212,
1406
+ 223
1407
+ ],
1408
+ "accounts": [
1409
+ {
1410
+ "name": "glamState",
1411
+ "writable": true
1412
+ },
1413
+ {
1414
+ "name": "glamSigner",
1415
+ "writable": true,
1416
+ "signer": true
1417
+ },
1418
+ {
1419
+ "name": "glamProtocolProgram",
1420
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
1421
+ }
1422
+ ],
1423
+ "args": [
1424
+ {
1425
+ "name": "policy",
1426
+ "type": {
1427
+ "defined": {
1428
+ "name": "whirlpoolsPolicy"
1429
+ }
1430
+ }
1431
+ }
1432
+ ]
1433
+ },
1434
+ {
1435
+ "name": "updateFeesAndRewards",
1436
+ "docs": [
1437
+ "Update accrued fees and rewards for an Orca Whirlpools position.",
1438
+ "",
1439
+ "- Permission: `UpdateFeesAndRewards`.",
1440
+ "- Policy: Whirlpool and both pool token mints must be allowlisted."
1441
+ ],
1442
+ "discriminator": [
1443
+ 154,
1444
+ 230,
1445
+ 250,
1446
+ 13,
1447
+ 236,
1448
+ 209,
1449
+ 75,
1450
+ 223
1451
+ ],
1452
+ "accounts": [
1453
+ {
1454
+ "name": "glamState",
1455
+ "writable": true
1456
+ },
1457
+ {
1458
+ "name": "glamVault",
1459
+ "writable": true,
1460
+ "pda": {
1461
+ "seeds": [
1462
+ {
1463
+ "kind": "const",
1464
+ "value": [
1465
+ 118,
1466
+ 97,
1467
+ 117,
1468
+ 108,
1469
+ 116
1470
+ ]
1471
+ },
1472
+ {
1473
+ "kind": "account",
1474
+ "path": "glamState"
1475
+ }
1476
+ ],
1477
+ "program": {
1478
+ "kind": "account",
1479
+ "path": "glamProtocolProgram"
1480
+ }
1481
+ }
1482
+ },
1483
+ {
1484
+ "name": "glamSigner",
1485
+ "writable": true,
1486
+ "signer": true
1487
+ },
1488
+ {
1489
+ "name": "integrationAuthority",
1490
+ "pda": {
1491
+ "seeds": [
1492
+ {
1493
+ "kind": "const",
1494
+ "value": [
1495
+ 105,
1496
+ 110,
1497
+ 116,
1498
+ 101,
1499
+ 103,
1500
+ 114,
1501
+ 97,
1502
+ 116,
1503
+ 105,
1504
+ 111,
1505
+ 110,
1506
+ 45,
1507
+ 97,
1508
+ 117,
1509
+ 116,
1510
+ 104,
1511
+ 111,
1512
+ 114,
1513
+ 105,
1514
+ 116,
1515
+ 121
1516
+ ]
1517
+ }
1518
+ ]
1519
+ }
1520
+ },
1521
+ {
1522
+ "name": "cpiProgram",
1523
+ "address": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc"
1524
+ },
1525
+ {
1526
+ "name": "glamProtocolProgram",
1527
+ "address": "gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"
1528
+ },
1529
+ {
1530
+ "name": "systemProgram",
1531
+ "address": "11111111111111111111111111111111"
1532
+ },
1533
+ {
1534
+ "name": "whirlpool",
1535
+ "writable": true
1536
+ },
1537
+ {
1538
+ "name": "position",
1539
+ "writable": true
1540
+ },
1541
+ {
1542
+ "name": "tickArrayLower"
1543
+ },
1544
+ {
1545
+ "name": "tickArrayUpper"
1546
+ }
1547
+ ],
1548
+ "args": []
1549
+ }
1550
+ ],
1551
+ "accounts": [
1552
+ {
1553
+ "name": "stateAccount",
1554
+ "discriminator": [
1555
+ 142,
1556
+ 247,
1557
+ 54,
1558
+ 95,
1559
+ 85,
1560
+ 133,
1561
+ 249,
1562
+ 103
1563
+ ]
1564
+ }
1565
+ ],
1566
+ "errors": [
1567
+ {
1568
+ "code": 6000,
1569
+ "name": "invalidWhirlpoolAccount",
1570
+ "msg": "Invalid Orca Whirlpool account"
1571
+ },
1572
+ {
1573
+ "code": 6001,
1574
+ "name": "invalidPositionAccount",
1575
+ "msg": "Invalid Orca position account"
1576
+ },
1577
+ {
1578
+ "code": 6002,
1579
+ "name": "invalidRewardIndex",
1580
+ "msg": "Invalid Orca reward index"
1581
+ },
1582
+ {
1583
+ "code": 6003,
1584
+ "name": "tokenMintMismatch",
1585
+ "msg": "Orca token account mint does not match the Whirlpool"
1586
+ },
1587
+ {
1588
+ "code": 6004,
1589
+ "name": "tokenVaultMismatch",
1590
+ "msg": "Orca token vault does not match the Whirlpool"
1591
+ },
1592
+ {
1593
+ "code": 6005,
1594
+ "name": "positionHasLiquidity",
1595
+ "msg": "Orca position is not empty"
1596
+ },
1597
+ {
1598
+ "code": 6006,
1599
+ "name": "invalidTickArrayAccount",
1600
+ "msg": "Invalid Orca tick array account"
1601
+ },
1602
+ {
1603
+ "code": 6007,
1604
+ "name": "invalidOracleAccount",
1605
+ "msg": "Invalid Orca oracle account"
1606
+ }
1607
+ ],
1608
+ "types": [
1609
+ {
1610
+ "name": "accountType",
1611
+ "type": {
1612
+ "kind": "enum",
1613
+ "variants": [
1614
+ {
1615
+ "name": "vault"
1616
+ },
1617
+ {
1618
+ "name": "tokenizedVault"
1619
+ },
1620
+ {
1621
+ "name": "mint"
1622
+ },
1623
+ {
1624
+ "name": "singleAssetVault"
1625
+ }
1626
+ ]
1627
+ }
1628
+ },
1629
+ {
1630
+ "name": "accountsType",
1631
+ "type": {
1632
+ "kind": "enum",
1633
+ "variants": [
1634
+ {
1635
+ "name": "transferHookA"
1636
+ },
1637
+ {
1638
+ "name": "transferHookB"
1639
+ },
1640
+ {
1641
+ "name": "transferHookReward"
1642
+ },
1643
+ {
1644
+ "name": "transferHookInput"
1645
+ },
1646
+ {
1647
+ "name": "transferHookIntermediate"
1648
+ },
1649
+ {
1650
+ "name": "transferHookOutput"
1651
+ },
1652
+ {
1653
+ "name": "supplementalTickArrays"
1654
+ },
1655
+ {
1656
+ "name": "supplementalTickArraysOne"
1657
+ },
1658
+ {
1659
+ "name": "supplementalTickArraysTwo"
1660
+ },
1661
+ {
1662
+ "name": "transferHookDepositA"
1663
+ },
1664
+ {
1665
+ "name": "transferHookDepositB"
1666
+ },
1667
+ {
1668
+ "name": "transferHookWithdrawalA"
1669
+ },
1670
+ {
1671
+ "name": "transferHookWithdrawalB"
1672
+ }
1673
+ ]
1674
+ }
1675
+ },
1676
+ {
1677
+ "name": "accruedFees",
1678
+ "type": {
1679
+ "kind": "struct",
1680
+ "fields": [
1681
+ {
1682
+ "name": "vaultSubscriptionFee",
1683
+ "type": "u128"
1684
+ },
1685
+ {
1686
+ "name": "vaultRedemptionFee",
1687
+ "type": "u128"
1688
+ },
1689
+ {
1690
+ "name": "managerSubscriptionFee",
1691
+ "type": "u128"
1692
+ },
1693
+ {
1694
+ "name": "managerRedemptionFee",
1695
+ "type": "u128"
1696
+ },
1697
+ {
1698
+ "name": "managementFee",
1699
+ "type": "u128"
1700
+ },
1701
+ {
1702
+ "name": "performanceFee",
1703
+ "type": "u128"
1704
+ },
1705
+ {
1706
+ "name": "protocolBaseFee",
1707
+ "type": "u128"
1708
+ },
1709
+ {
1710
+ "name": "protocolFlowFee",
1711
+ "type": "u128"
1712
+ }
1713
+ ]
1714
+ }
1715
+ },
1716
+ {
1717
+ "name": "createdModel",
1718
+ "type": {
1719
+ "kind": "struct",
1720
+ "fields": [
1721
+ {
1722
+ "name": "key",
1723
+ "type": {
1724
+ "array": [
1725
+ "u8",
1726
+ 8
1727
+ ]
1728
+ }
1729
+ },
1730
+ {
1731
+ "name": "createdBy",
1732
+ "type": "pubkey"
1733
+ },
1734
+ {
1735
+ "name": "createdAt",
1736
+ "type": "i64"
1737
+ }
1738
+ ]
1739
+ }
1740
+ },
1741
+ {
1742
+ "name": "delegateAcl",
1743
+ "type": {
1744
+ "kind": "struct",
1745
+ "fields": [
1746
+ {
1747
+ "name": "pubkey",
1748
+ "type": "pubkey"
1749
+ },
1750
+ {
1751
+ "name": "integrationPermissions",
1752
+ "type": {
1753
+ "vec": {
1754
+ "defined": {
1755
+ "name": "integrationPermissions"
1756
+ }
1757
+ }
1758
+ }
1759
+ },
1760
+ {
1761
+ "name": "expiresAt",
1762
+ "type": "i64"
1763
+ }
1764
+ ]
1765
+ }
1766
+ },
1767
+ {
1768
+ "name": "engineField",
1769
+ "type": {
1770
+ "kind": "struct",
1771
+ "fields": [
1772
+ {
1773
+ "name": "name",
1774
+ "type": {
1775
+ "defined": {
1776
+ "name": "engineFieldName"
1777
+ }
1778
+ }
1779
+ },
1780
+ {
1781
+ "name": "value",
1782
+ "type": {
1783
+ "defined": {
1784
+ "name": "engineFieldValue"
1785
+ }
1786
+ }
1787
+ }
1788
+ ]
1789
+ }
1790
+ },
1791
+ {
1792
+ "name": "engineFieldName",
1793
+ "type": {
1794
+ "kind": "enum",
1795
+ "variants": [
1796
+ {
1797
+ "name": "owner"
1798
+ },
1799
+ {
1800
+ "name": "portfolioManagerName"
1801
+ },
1802
+ {
1803
+ "name": "name"
1804
+ },
1805
+ {
1806
+ "name": "uri"
1807
+ },
1808
+ {
1809
+ "name": "assets"
1810
+ },
1811
+ {
1812
+ "name": "delegateAcls"
1813
+ },
1814
+ {
1815
+ "name": "integrationAcls"
1816
+ },
1817
+ {
1818
+ "name": "timelockDuration"
1819
+ },
1820
+ {
1821
+ "name": "borrowable"
1822
+ },
1823
+ {
1824
+ "name": "defaultAccountStateFrozen"
1825
+ },
1826
+ {
1827
+ "name": "permanentDelegate"
1828
+ },
1829
+ {
1830
+ "name": "notifyAndSettle"
1831
+ },
1832
+ {
1833
+ "name": "feeStructure"
1834
+ },
1835
+ {
1836
+ "name": "feeParams"
1837
+ },
1838
+ {
1839
+ "name": "claimableFees"
1840
+ },
1841
+ {
1842
+ "name": "claimedFees"
1843
+ },
1844
+ {
1845
+ "name": "oracleConfigs"
1846
+ }
1847
+ ]
1848
+ }
1849
+ },
1850
+ {
1851
+ "name": "engineFieldValue",
1852
+ "type": {
1853
+ "kind": "enum",
1854
+ "variants": [
1855
+ {
1856
+ "name": "boolean",
1857
+ "fields": [
1858
+ {
1859
+ "name": "val",
1860
+ "type": "bool"
1861
+ }
1862
+ ]
1863
+ },
1864
+ {
1865
+ "name": "u8",
1866
+ "fields": [
1867
+ {
1868
+ "name": "val",
1869
+ "type": "u8"
1870
+ }
1871
+ ]
1872
+ },
1873
+ {
1874
+ "name": "u32",
1875
+ "fields": [
1876
+ {
1877
+ "name": "val",
1878
+ "type": "u32"
1879
+ }
1880
+ ]
1881
+ },
1882
+ {
1883
+ "name": "u64",
1884
+ "fields": [
1885
+ {
1886
+ "name": "val",
1887
+ "type": "u64"
1888
+ }
1889
+ ]
1890
+ },
1891
+ {
1892
+ "name": "string",
1893
+ "fields": [
1894
+ {
1895
+ "name": "val",
1896
+ "type": "string"
1897
+ }
1898
+ ]
1899
+ },
1900
+ {
1901
+ "name": "pubkey",
1902
+ "fields": [
1903
+ {
1904
+ "name": "val",
1905
+ "type": "pubkey"
1906
+ }
1907
+ ]
1908
+ },
1909
+ {
1910
+ "name": "vecPubkey",
1911
+ "fields": [
1912
+ {
1913
+ "name": "val",
1914
+ "type": {
1915
+ "vec": "pubkey"
1916
+ }
1917
+ }
1918
+ ]
1919
+ },
1920
+ {
1921
+ "name": "vecU8",
1922
+ "fields": [
1923
+ {
1924
+ "name": "val",
1925
+ "type": "bytes"
1926
+ }
1927
+ ]
1928
+ },
1929
+ {
1930
+ "name": "vecU32",
1931
+ "fields": [
1932
+ {
1933
+ "name": "val",
1934
+ "type": {
1935
+ "vec": "u32"
1936
+ }
1937
+ }
1938
+ ]
1939
+ },
1940
+ {
1941
+ "name": "vecDelegateAcl",
1942
+ "fields": [
1943
+ {
1944
+ "name": "val",
1945
+ "type": {
1946
+ "vec": {
1947
+ "defined": {
1948
+ "name": "delegateAcl"
1949
+ }
1950
+ }
1951
+ }
1952
+ }
1953
+ ]
1954
+ },
1955
+ {
1956
+ "name": "vecIntegrationAcl",
1957
+ "fields": [
1958
+ {
1959
+ "name": "val",
1960
+ "type": {
1961
+ "vec": {
1962
+ "defined": {
1963
+ "name": "integrationAcl"
1964
+ }
1965
+ }
1966
+ }
1967
+ }
1968
+ ]
1969
+ },
1970
+ {
1971
+ "name": "feeStructure",
1972
+ "fields": [
1973
+ {
1974
+ "name": "val",
1975
+ "type": {
1976
+ "defined": {
1977
+ "name": "feeStructure"
1978
+ }
1979
+ }
1980
+ }
1981
+ ]
1982
+ },
1983
+ {
1984
+ "name": "feeParams",
1985
+ "fields": [
1986
+ {
1987
+ "name": "val",
1988
+ "type": {
1989
+ "defined": {
1990
+ "name": "feeParams"
1991
+ }
1992
+ }
1993
+ }
1994
+ ]
1995
+ },
1996
+ {
1997
+ "name": "accruedFees",
1998
+ "fields": [
1999
+ {
2000
+ "name": "val",
2001
+ "type": {
2002
+ "defined": {
2003
+ "name": "accruedFees"
2004
+ }
2005
+ }
2006
+ }
2007
+ ]
2008
+ },
2009
+ {
2010
+ "name": "notifyAndSettle",
2011
+ "fields": [
2012
+ {
2013
+ "name": "val",
2014
+ "type": {
2015
+ "defined": {
2016
+ "name": "notifyAndSettle"
2017
+ }
2018
+ }
2019
+ }
2020
+ ]
2021
+ },
2022
+ {
2023
+ "name": "oracleConfigs",
2024
+ "fields": [
2025
+ {
2026
+ "name": "val",
2027
+ "type": {
2028
+ "defined": {
2029
+ "name": "oracleConfigs"
2030
+ }
2031
+ }
2032
+ }
2033
+ ]
2034
+ }
2035
+ ]
2036
+ }
2037
+ },
2038
+ {
2039
+ "name": "entryExitFees",
2040
+ "type": {
2041
+ "kind": "struct",
2042
+ "fields": [
2043
+ {
2044
+ "name": "subscriptionFeeBps",
2045
+ "type": "u16"
2046
+ },
2047
+ {
2048
+ "name": "redemptionFeeBps",
2049
+ "type": "u16"
2050
+ }
2051
+ ]
2052
+ }
2053
+ },
2054
+ {
2055
+ "name": "feeParams",
2056
+ "type": {
2057
+ "kind": "struct",
2058
+ "fields": [
2059
+ {
2060
+ "name": "yearInSeconds",
2061
+ "type": "u32"
2062
+ },
2063
+ {
2064
+ "name": "paHighWaterMark",
2065
+ "type": "i128"
2066
+ },
2067
+ {
2068
+ "name": "paLastNav",
2069
+ "type": "i128"
2070
+ },
2071
+ {
2072
+ "name": "lastAum",
2073
+ "type": "i128"
2074
+ },
2075
+ {
2076
+ "name": "lastPerformanceFeeCrystallized",
2077
+ "type": "i64"
2078
+ },
2079
+ {
2080
+ "name": "lastManagementFeeCrystallized",
2081
+ "type": "i64"
2082
+ },
2083
+ {
2084
+ "name": "lastProtocolFeeCrystallized",
2085
+ "type": "i64"
2086
+ }
2087
+ ]
2088
+ }
2089
+ },
2090
+ {
2091
+ "name": "feeStructure",
2092
+ "type": {
2093
+ "kind": "struct",
2094
+ "fields": [
2095
+ {
2096
+ "name": "vault",
2097
+ "type": {
2098
+ "defined": {
2099
+ "name": "entryExitFees"
2100
+ }
2101
+ }
2102
+ },
2103
+ {
2104
+ "name": "manager",
2105
+ "type": {
2106
+ "defined": {
2107
+ "name": "entryExitFees"
2108
+ }
2109
+ }
2110
+ },
2111
+ {
2112
+ "name": "management",
2113
+ "type": {
2114
+ "defined": {
2115
+ "name": "managementFee"
2116
+ }
2117
+ }
2118
+ },
2119
+ {
2120
+ "name": "performance",
2121
+ "type": {
2122
+ "defined": {
2123
+ "name": "performanceFee"
2124
+ }
2125
+ }
2126
+ },
2127
+ {
2128
+ "name": "protocol",
2129
+ "type": {
2130
+ "defined": {
2131
+ "name": "protocolFees"
2132
+ }
2133
+ }
2134
+ }
2135
+ ]
2136
+ }
2137
+ },
2138
+ {
2139
+ "name": "hurdleType",
2140
+ "type": {
2141
+ "kind": "enum",
2142
+ "variants": [
2143
+ {
2144
+ "name": "hard"
2145
+ },
2146
+ {
2147
+ "name": "soft"
2148
+ }
2149
+ ]
2150
+ }
2151
+ },
2152
+ {
2153
+ "name": "increaseLiquidityMethod",
2154
+ "type": {
2155
+ "kind": "enum",
2156
+ "variants": [
2157
+ {
2158
+ "name": "byTokenAmounts",
2159
+ "fields": [
2160
+ {
2161
+ "name": "tokenMaxA",
2162
+ "type": "u64"
2163
+ },
2164
+ {
2165
+ "name": "tokenMaxB",
2166
+ "type": "u64"
2167
+ },
2168
+ {
2169
+ "name": "minSqrtPrice",
2170
+ "type": "u128"
2171
+ },
2172
+ {
2173
+ "name": "maxSqrtPrice",
2174
+ "type": "u128"
2175
+ }
2176
+ ]
2177
+ }
2178
+ ]
2179
+ }
2180
+ },
2181
+ {
2182
+ "name": "integrationAcl",
2183
+ "docs": [
2184
+ "An integration program can have multiple protocols supported.",
2185
+ "Enabled protocols are stored in a bitmask, and each protocol can have its own policy."
2186
+ ],
2187
+ "type": {
2188
+ "kind": "struct",
2189
+ "fields": [
2190
+ {
2191
+ "name": "integrationProgram",
2192
+ "type": "pubkey"
2193
+ },
2194
+ {
2195
+ "name": "protocolsBitmask",
2196
+ "type": "u16"
2197
+ },
2198
+ {
2199
+ "name": "protocolPolicies",
2200
+ "type": {
2201
+ "vec": {
2202
+ "defined": {
2203
+ "name": "protocolPolicy"
2204
+ }
2205
+ }
2206
+ }
2207
+ }
2208
+ ]
2209
+ }
2210
+ },
2211
+ {
2212
+ "name": "integrationPermissions",
2213
+ "docs": [
2214
+ "Stores delegate permissions for an integration program."
2215
+ ],
2216
+ "type": {
2217
+ "kind": "struct",
2218
+ "fields": [
2219
+ {
2220
+ "name": "integrationProgram",
2221
+ "type": "pubkey"
2222
+ },
2223
+ {
2224
+ "name": "protocolPermissions",
2225
+ "type": {
2226
+ "vec": {
2227
+ "defined": {
2228
+ "name": "protocolPermissions"
2229
+ }
2230
+ }
2231
+ }
2232
+ }
2233
+ ]
2234
+ }
2235
+ },
2236
+ {
2237
+ "name": "managementFee",
2238
+ "type": {
2239
+ "kind": "struct",
2240
+ "fields": [
2241
+ {
2242
+ "name": "feeBps",
2243
+ "type": "u16"
2244
+ }
2245
+ ]
2246
+ }
2247
+ },
2248
+ {
2249
+ "name": "noticePeriodType",
2250
+ "type": {
2251
+ "kind": "enum",
2252
+ "variants": [
2253
+ {
2254
+ "name": "hard"
2255
+ },
2256
+ {
2257
+ "name": "soft"
2258
+ }
2259
+ ]
2260
+ }
2261
+ },
2262
+ {
2263
+ "name": "notifyAndSettle",
2264
+ "type": {
2265
+ "kind": "struct",
2266
+ "fields": [
2267
+ {
2268
+ "name": "model",
2269
+ "type": {
2270
+ "defined": {
2271
+ "name": "valuationModel"
2272
+ }
2273
+ }
2274
+ },
2275
+ {
2276
+ "name": "permissionlessFulfillment",
2277
+ "type": "bool"
2278
+ },
2279
+ {
2280
+ "name": "subscribeNoticePeriodType",
2281
+ "type": {
2282
+ "defined": {
2283
+ "name": "noticePeriodType"
2284
+ }
2285
+ }
2286
+ },
2287
+ {
2288
+ "name": "subscribeNoticePeriod",
2289
+ "type": "u64"
2290
+ },
2291
+ {
2292
+ "name": "subscribeSettlementPeriod",
2293
+ "type": "u64"
2294
+ },
2295
+ {
2296
+ "name": "subscribeCancellationWindow",
2297
+ "type": "u64"
2298
+ },
2299
+ {
2300
+ "name": "redeemNoticePeriodType",
2301
+ "type": {
2302
+ "defined": {
2303
+ "name": "noticePeriodType"
2304
+ }
2305
+ }
2306
+ },
2307
+ {
2308
+ "name": "redeemNoticePeriod",
2309
+ "type": "u64"
2310
+ },
2311
+ {
2312
+ "name": "redeemSettlementPeriod",
2313
+ "type": "u64"
2314
+ },
2315
+ {
2316
+ "name": "redeemCancellationWindow",
2317
+ "type": "u64"
2318
+ },
2319
+ {
2320
+ "name": "timeUnit",
2321
+ "type": {
2322
+ "defined": {
2323
+ "name": "timeUnit"
2324
+ }
2325
+ }
2326
+ },
2327
+ {
2328
+ "name": "padding",
2329
+ "type": {
2330
+ "array": [
2331
+ "u8",
2332
+ 3
2333
+ ]
2334
+ }
2335
+ }
2336
+ ]
2337
+ }
2338
+ },
2339
+ {
2340
+ "name": "oracleConfigs",
2341
+ "docs": [
2342
+ "Vault-specific oracle configs. If available, these configs are preferred over the global config."
2343
+ ],
2344
+ "type": {
2345
+ "kind": "struct",
2346
+ "fields": [
2347
+ {
2348
+ "name": "maxAgesSeconds",
2349
+ "type": {
2350
+ "vec": {
2351
+ "array": [
2352
+ "u16",
2353
+ 2
2354
+ ]
2355
+ }
2356
+ }
2357
+ },
2358
+ {
2359
+ "name": "padding",
2360
+ "type": {
2361
+ "array": [
2362
+ "u8",
2363
+ 12
2364
+ ]
2365
+ }
2366
+ }
2367
+ ]
2368
+ }
2369
+ },
2370
+ {
2371
+ "name": "performanceFee",
2372
+ "type": {
2373
+ "kind": "struct",
2374
+ "fields": [
2375
+ {
2376
+ "name": "feeBps",
2377
+ "type": "u16"
2378
+ },
2379
+ {
2380
+ "name": "hurdleRateBps",
2381
+ "type": "u16"
2382
+ },
2383
+ {
2384
+ "name": "hurdleType",
2385
+ "type": {
2386
+ "defined": {
2387
+ "name": "hurdleType"
2388
+ }
2389
+ }
2390
+ }
2391
+ ]
2392
+ }
2393
+ },
2394
+ {
2395
+ "name": "pricedProtocol",
2396
+ "type": {
2397
+ "kind": "struct",
2398
+ "fields": [
2399
+ {
2400
+ "name": "rent",
2401
+ "type": "u64"
2402
+ },
2403
+ {
2404
+ "name": "amount",
2405
+ "type": "i128"
2406
+ },
2407
+ {
2408
+ "name": "decimals",
2409
+ "type": "u8"
2410
+ },
2411
+ {
2412
+ "name": "lastUpdatedSlot",
2413
+ "type": "u64"
2414
+ },
2415
+ {
2416
+ "name": "integrationProgram",
2417
+ "type": "pubkey"
2418
+ },
2419
+ {
2420
+ "name": "protocolBitflag",
2421
+ "type": "u16"
2422
+ },
2423
+ {
2424
+ "name": "positions",
2425
+ "type": {
2426
+ "vec": "pubkey"
2427
+ }
2428
+ }
2429
+ ]
2430
+ }
2431
+ },
2432
+ {
2433
+ "name": "protocolFees",
2434
+ "type": {
2435
+ "kind": "struct",
2436
+ "fields": [
2437
+ {
2438
+ "name": "baseFeeBps",
2439
+ "type": "u16"
2440
+ },
2441
+ {
2442
+ "name": "flowFeeBps",
2443
+ "type": "u16"
2444
+ }
2445
+ ]
2446
+ }
2447
+ },
2448
+ {
2449
+ "name": "protocolPermissions",
2450
+ "docs": [
2451
+ "Represents a delegate's permissions for a specific protocol"
2452
+ ],
2453
+ "type": {
2454
+ "kind": "struct",
2455
+ "fields": [
2456
+ {
2457
+ "name": "protocolBitflag",
2458
+ "type": "u16"
2459
+ },
2460
+ {
2461
+ "name": "permissionsBitmask",
2462
+ "type": "u64"
2463
+ }
2464
+ ]
2465
+ }
2466
+ },
2467
+ {
2468
+ "name": "protocolPolicy",
2469
+ "docs": [
2470
+ "Stores policy data for an integrated protocol.",
2471
+ "Integration programs serialize/deserialize this data."
2472
+ ],
2473
+ "type": {
2474
+ "kind": "struct",
2475
+ "fields": [
2476
+ {
2477
+ "name": "protocolBitflag",
2478
+ "type": "u16"
2479
+ },
2480
+ {
2481
+ "name": "data",
2482
+ "type": "bytes"
2483
+ }
2484
+ ]
2485
+ }
2486
+ },
2487
+ {
2488
+ "name": "remainingAccountsInfo",
2489
+ "type": {
2490
+ "kind": "struct",
2491
+ "fields": [
2492
+ {
2493
+ "name": "slices",
2494
+ "type": {
2495
+ "vec": {
2496
+ "defined": {
2497
+ "name": "remainingAccountsSlice"
2498
+ }
2499
+ }
2500
+ }
2501
+ }
2502
+ ]
2503
+ }
2504
+ },
2505
+ {
2506
+ "name": "remainingAccountsSlice",
2507
+ "type": {
2508
+ "kind": "struct",
2509
+ "fields": [
2510
+ {
2511
+ "name": "accountsType",
2512
+ "type": {
2513
+ "defined": {
2514
+ "name": "accountsType"
2515
+ }
2516
+ }
2517
+ },
2518
+ {
2519
+ "name": "length",
2520
+ "type": "u8"
2521
+ }
2522
+ ]
2523
+ }
2524
+ },
2525
+ {
2526
+ "name": "repositionLiquidityMethod",
2527
+ "type": {
2528
+ "kind": "enum",
2529
+ "variants": [
2530
+ {
2531
+ "name": "byLiquidity",
2532
+ "fields": [
2533
+ {
2534
+ "name": "newLiquidityAmount",
2535
+ "type": "u128"
2536
+ },
2537
+ {
2538
+ "name": "existingRangeTokenMinA",
2539
+ "type": "u64"
2540
+ },
2541
+ {
2542
+ "name": "existingRangeTokenMinB",
2543
+ "type": "u64"
2544
+ },
2545
+ {
2546
+ "name": "newRangeTokenMaxA",
2547
+ "type": "u64"
2548
+ },
2549
+ {
2550
+ "name": "newRangeTokenMaxB",
2551
+ "type": "u64"
2552
+ }
2553
+ ]
2554
+ }
2555
+ ]
2556
+ }
2557
+ },
2558
+ {
2559
+ "name": "stateAccount",
2560
+ "type": {
2561
+ "kind": "struct",
2562
+ "fields": [
2563
+ {
2564
+ "name": "accountType",
2565
+ "type": {
2566
+ "defined": {
2567
+ "name": "accountType"
2568
+ }
2569
+ }
2570
+ },
2571
+ {
2572
+ "name": "enabled",
2573
+ "type": "bool"
2574
+ },
2575
+ {
2576
+ "name": "vault",
2577
+ "type": "pubkey"
2578
+ },
2579
+ {
2580
+ "name": "owner",
2581
+ "type": "pubkey"
2582
+ },
2583
+ {
2584
+ "name": "portfolioManagerName",
2585
+ "type": {
2586
+ "array": [
2587
+ "u8",
2588
+ 32
2589
+ ]
2590
+ }
2591
+ },
2592
+ {
2593
+ "name": "created",
2594
+ "type": {
2595
+ "defined": {
2596
+ "name": "createdModel"
2597
+ }
2598
+ }
2599
+ },
2600
+ {
2601
+ "name": "baseAssetMint",
2602
+ "type": "pubkey"
2603
+ },
2604
+ {
2605
+ "name": "baseAssetDecimals",
2606
+ "type": "u8"
2607
+ },
2608
+ {
2609
+ "name": "baseAssetTokenProgram",
2610
+ "type": "u8"
2611
+ },
2612
+ {
2613
+ "name": "name",
2614
+ "type": {
2615
+ "array": [
2616
+ "u8",
2617
+ 32
2618
+ ]
2619
+ }
2620
+ },
2621
+ {
2622
+ "name": "timelockDuration",
2623
+ "type": "u32"
2624
+ },
2625
+ {
2626
+ "name": "timelockExpiresAt",
2627
+ "type": "u64"
2628
+ },
2629
+ {
2630
+ "name": "mint",
2631
+ "type": "pubkey"
2632
+ },
2633
+ {
2634
+ "name": "assets",
2635
+ "type": {
2636
+ "vec": "pubkey"
2637
+ }
2638
+ },
2639
+ {
2640
+ "name": "integrationAcls",
2641
+ "type": {
2642
+ "vec": {
2643
+ "defined": {
2644
+ "name": "integrationAcl"
2645
+ }
2646
+ }
2647
+ }
2648
+ },
2649
+ {
2650
+ "name": "delegateAcls",
2651
+ "type": {
2652
+ "vec": {
2653
+ "defined": {
2654
+ "name": "delegateAcl"
2655
+ }
2656
+ }
2657
+ }
2658
+ },
2659
+ {
2660
+ "name": "externalPositions",
2661
+ "type": {
2662
+ "vec": "pubkey"
2663
+ }
2664
+ },
2665
+ {
2666
+ "name": "pricedProtocols",
2667
+ "type": {
2668
+ "vec": {
2669
+ "defined": {
2670
+ "name": "pricedProtocol"
2671
+ }
2672
+ }
2673
+ }
2674
+ },
2675
+ {
2676
+ "name": "params",
2677
+ "type": {
2678
+ "vec": {
2679
+ "vec": {
2680
+ "defined": {
2681
+ "name": "engineField"
2682
+ }
2683
+ }
2684
+ }
2685
+ }
2686
+ }
2687
+ ]
2688
+ }
2689
+ },
2690
+ {
2691
+ "name": "timeUnit",
2692
+ "type": {
2693
+ "kind": "enum",
2694
+ "variants": [
2695
+ {
2696
+ "name": "second"
2697
+ },
2698
+ {
2699
+ "name": "slot"
2700
+ }
2701
+ ]
2702
+ }
2703
+ },
2704
+ {
2705
+ "name": "valuationModel",
2706
+ "type": {
2707
+ "kind": "enum",
2708
+ "variants": [
2709
+ {
2710
+ "name": "continuous"
2711
+ },
2712
+ {
2713
+ "name": "periodic"
2714
+ }
2715
+ ]
2716
+ }
2717
+ },
2718
+ {
2719
+ "name": "whirlpoolsPolicy",
2720
+ "type": {
2721
+ "kind": "struct",
2722
+ "fields": [
2723
+ {
2724
+ "name": "whirlpoolsAllowlist",
2725
+ "type": {
2726
+ "vec": "pubkey"
2727
+ }
2728
+ },
2729
+ {
2730
+ "name": "tokenMintsAllowlist",
2731
+ "type": {
2732
+ "vec": "pubkey"
2733
+ }
2734
+ },
2735
+ {
2736
+ "name": "maxDeviationBps",
2737
+ "docs": [
2738
+ "Pool price should not diverge beyond this tolerance from a reliable reference price"
2739
+ ],
2740
+ "type": "i16"
2741
+ }
2742
+ ]
2743
+ }
2744
+ }
2745
+ ],
2746
+ "constants": [
2747
+ {
2748
+ "name": "protoOrcaWhirlpools",
2749
+ "type": "u16",
2750
+ "value": "1"
2751
+ },
2752
+ {
2753
+ "name": "protoOrcaWhirlpoolsPermClosePosition",
2754
+ "type": "u64",
2755
+ "value": "64"
2756
+ },
2757
+ {
2758
+ "name": "protoOrcaWhirlpoolsPermCollectFees",
2759
+ "type": "u64",
2760
+ "value": "16"
2761
+ },
2762
+ {
2763
+ "name": "protoOrcaWhirlpoolsPermCollectReward",
2764
+ "type": "u64",
2765
+ "value": "32"
2766
+ },
2767
+ {
2768
+ "name": "protoOrcaWhirlpoolsPermDecreaseLiquidity",
2769
+ "type": "u64",
2770
+ "value": "4"
2771
+ },
2772
+ {
2773
+ "name": "protoOrcaWhirlpoolsPermIncreaseLiquidity",
2774
+ "type": "u64",
2775
+ "value": "2"
2776
+ },
2777
+ {
2778
+ "name": "protoOrcaWhirlpoolsPermIncreaseLiquidityByTokenAmounts",
2779
+ "type": "u64",
2780
+ "value": "128"
2781
+ },
2782
+ {
2783
+ "name": "protoOrcaWhirlpoolsPermInitializeTickArray",
2784
+ "type": "u64",
2785
+ "value": "1024"
2786
+ },
2787
+ {
2788
+ "name": "protoOrcaWhirlpoolsPermOpenPosition",
2789
+ "type": "u64",
2790
+ "value": "1"
2791
+ },
2792
+ {
2793
+ "name": "protoOrcaWhirlpoolsPermRepositionLiquidity",
2794
+ "type": "u64",
2795
+ "value": "256"
2796
+ },
2797
+ {
2798
+ "name": "protoOrcaWhirlpoolsPermUpdateFeesAndRewards",
2799
+ "type": "u64",
2800
+ "value": "8"
2801
+ }
2802
+ ]
2803
+ };