@glamsystems/glam-sdk 1.1.0 → 1.1.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/index.cjs.d.ts +0 -1
  2. package/index.cjs.js +120789 -1
  3. package/index.esm.d.ts +0 -1
  4. package/index.esm.js +120308 -1
  5. package/package.json +15 -27
  6. package/target/idl/glam_mint-staging.json +480 -1
  7. package/target/idl/glam_mint.json +247 -1
  8. package/target/types/glam_mint-staging.ts +480 -1
  9. package/target/types/glam_mint.ts +247 -1
  10. package/LICENSE +0 -201
  11. package/buffer-layout.d.ts +0 -88
  12. package/src/assets.d.ts +0 -39
  13. package/src/client/access.d.ts +0 -57
  14. package/src/client/base.d.ts +0 -234
  15. package/src/client/bridge.d.ts +0 -205
  16. package/src/client/bridgeRegistry.d.ts +0 -32
  17. package/src/client/cctp.d.ts +0 -164
  18. package/src/client/epi.d.ts +0 -228
  19. package/src/client/fees.d.ts +0 -33
  20. package/src/client/invest.d.ts +0 -37
  21. package/src/client/jupiter-lend/borrow.d.ts +0 -92
  22. package/src/client/jupiter-lend/earn.d.ts +0 -64
  23. package/src/client/jupiter-lend/index.d.ts +0 -3
  24. package/src/client/jupiter-lend/shared.d.ts +0 -129
  25. package/src/client/jupiter.d.ts +0 -53
  26. package/src/client/kamino/farm.d.ts +0 -39
  27. package/src/client/kamino/index.d.ts +0 -4
  28. package/src/client/kamino/lending.d.ts +0 -94
  29. package/src/client/kamino/types.d.ts +0 -56
  30. package/src/client/kamino/vaults.d.ts +0 -39
  31. package/src/client/loopscale/borrow.d.ts +0 -118
  32. package/src/client/loopscale/core.d.ts +0 -604
  33. package/src/client/loopscale/index.d.ts +0 -5
  34. package/src/client/loopscale/lend.d.ts +0 -123
  35. package/src/client/loopscale/vault.d.ts +0 -43
  36. package/src/client/marinade.d.ts +0 -42
  37. package/src/client/mint.d.ts +0 -143
  38. package/src/client/orca.d.ts +0 -255
  39. package/src/client/phoenix.d.ts +0 -214
  40. package/src/client/price.d.ts +0 -182
  41. package/src/client/stake-pool.d.ts +0 -39
  42. package/src/client/stake.d.ts +0 -34
  43. package/src/client/state.d.ts +0 -56
  44. package/src/client/timelock.d.ts +0 -31
  45. package/src/client/vault.d.ts +0 -98
  46. package/src/client.d.ts +0 -82
  47. package/src/clientConfig.d.ts +0 -32
  48. package/src/constants.d.ts +0 -111
  49. package/src/deser/base.d.ts +0 -18
  50. package/src/deser/index.d.ts +0 -4
  51. package/src/deser/integrationPolicies.d.ts +0 -195
  52. package/src/deser/kaminoLayouts.d.ts +0 -264
  53. package/src/deser/loopscaleLayouts.d.ts +0 -157
  54. package/src/deser/tokenAclLayouts.d.ts +0 -67
  55. package/src/error.d.ts +0 -29
  56. package/src/glamExports.d.ts +0 -6260
  57. package/src/globalConfig.d.ts +0 -27
  58. package/src/index.d.ts +0 -24
  59. package/src/models/acl.d.ts +0 -43
  60. package/src/models/index.d.ts +0 -8
  61. package/src/models/mint.d.ts +0 -57
  62. package/src/models/state.d.ts +0 -94
  63. package/src/models/types.d.ts +0 -28
  64. package/src/protocols.d.ts +0 -29
  65. package/src/utils/accounts.d.ts +0 -71
  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 -73
  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 -15
  73. package/src/utils/helius.d.ts +0 -66
  74. package/src/utils/index.d.ts +0 -17
  75. package/src/utils/jupiterApi.d.ts +0 -95
  76. package/src/utils/lookupTables.d.ts +0 -83
  77. package/src/utils/phoenixApi.d.ts +0 -146
  78. package/src/utils/pkmap.d.ts +0 -87
  79. package/src/utils/pkset.d.ts +0 -73
  80. package/src/utils/positionCategorizer.d.ts +0 -38
  81. package/src/utils/rpc.d.ts +0 -18
  82. package/src/utils/timelock.d.ts +0 -52
  83. package/src/utils/transaction.d.ts +0 -13
  84. package/target/idl/ext_bridge-staging.json +0 -2379
  85. package/target/idl/ext_bridge.json +0 -2379
  86. package/target/idl/ext_drift.json +0 -5464
  87. package/target/idl/ext_epi-staging.json +0 -2862
  88. package/target/idl/ext_epi.json +0 -2862
  89. package/target/idl/ext_loopscale-staging.json +0 -4708
  90. package/target/idl/ext_loopscale.json +0 -4708
  91. package/target/idl/ext_marinade-staging.json +0 -1587
  92. package/target/idl/ext_phoenix-staging.json +0 -3525
  93. package/target/idl/ext_phoenix.json +0 -3525
  94. package/target/idl/mock_layerzero_endpoint.json +0 -144
  95. package/target/idl/mock_layerzero_oft.json +0 -155
  96. package/target/idl/mock_wormhole_verify_vaa_shim.json +0 -58
  97. package/target/types/ext_bridge-staging.d.ts +0 -2385
  98. package/target/types/ext_bridge-staging.ts +0 -2385
  99. package/target/types/ext_bridge.d.ts +0 -2385
  100. package/target/types/ext_bridge.ts +0 -2385
  101. package/target/types/ext_cctp-staging.d.ts +0 -1268
  102. package/target/types/ext_cctp.d.ts +0 -1268
  103. package/target/types/ext_drift.d.ts +0 -5470
  104. package/target/types/ext_drift.ts +0 -5470
  105. package/target/types/ext_epi-staging.d.ts +0 -2868
  106. package/target/types/ext_epi-staging.ts +0 -2868
  107. package/target/types/ext_epi.d.ts +0 -2868
  108. package/target/types/ext_epi.ts +0 -2868
  109. package/target/types/ext_jupiter-staging.d.ts +0 -1966
  110. package/target/types/ext_jupiter.d.ts +0 -1966
  111. package/target/types/ext_kamino-staging.d.ts +0 -3433
  112. package/target/types/ext_kamino.d.ts +0 -3433
  113. package/target/types/ext_loopscale-staging.d.ts +0 -4714
  114. package/target/types/ext_loopscale-staging.ts +0 -4714
  115. package/target/types/ext_loopscale.d.ts +0 -4714
  116. package/target/types/ext_loopscale.ts +0 -4714
  117. package/target/types/ext_marinade-staging.d.ts +0 -1593
  118. package/target/types/ext_marinade-staging.ts +0 -1593
  119. package/target/types/ext_marinade.d.ts +0 -1593
  120. package/target/types/ext_orca-staging.d.ts +0 -2829
  121. package/target/types/ext_orca.d.ts +0 -2829
  122. package/target/types/ext_phoenix-staging.d.ts +0 -3531
  123. package/target/types/ext_phoenix-staging.ts +0 -3531
  124. package/target/types/ext_phoenix.d.ts +0 -3531
  125. package/target/types/ext_phoenix.ts +0 -3531
  126. package/target/types/ext_spl-staging.d.ts +0 -1274
  127. package/target/types/ext_spl.d.ts +0 -1274
  128. package/target/types/ext_stake_pool-staging.d.ts +0 -1622
  129. package/target/types/ext_stake_pool.d.ts +0 -1622
  130. package/target/types/glam_config.d.ts +0 -755
  131. package/target/types/glam_mint-staging.d.ts +0 -8802
  132. package/target/types/glam_mint.d.ts +0 -6349
  133. package/target/types/glam_policies.d.ts +0 -477
  134. package/target/types/glam_protocol-staging.d.ts +0 -3362
  135. package/target/types/glam_protocol.d.ts +0 -2783
  136. package/target/types/mock_layerzero_endpoint.d.ts +0 -150
  137. package/target/types/mock_layerzero_endpoint.ts +0 -150
  138. package/target/types/mock_layerzero_oft.d.ts +0 -161
  139. package/target/types/mock_layerzero_oft.ts +0 -161
  140. package/target/types/mock_wormhole_verify_vaa_shim.d.ts +0 -64
  141. package/target/types/mock_wormhole_verify_vaa_shim.ts +0 -64
@@ -1,4714 +0,0 @@
1
- /**
2
- * Program IDL in camelCase format in order to be used in JS/TS.
3
- *
4
- * Note that this is only a type helper and is not the actual IDL. The original
5
- * IDL can be found at `target/idl/ext_loopscale.json`.
6
- */
7
- export type ExtLoopscale = {
8
- "address": "G1NTLoPS5orMCxgFjzNDE5H6c3AbxiU1DgqCJBaJ1pfM";
9
- "metadata": {
10
- "name": "extLoopscale";
11
- "version": "0.1.0";
12
- "spec": "0.1.0";
13
- "description": "Loopscale integration for GLAM Protocol";
14
- };
15
- "instructions": [
16
- {
17
- "name": "borrowPrincipal";
18
- "docs": [
19
- "Borrow principal against a locked loan.",
20
- "",
21
- "- Permission: `BorrowPermissions::BorrowPrincipal`.",
22
- "- Policy:",
23
- "- `principal_mint` must be present in `BorrowPolicy::principal_allowlist`.",
24
- "- If `market_information` has a `BorrowPolicy::market_policies` entry,",
25
- "advanced per-market borrow limits are enforced."
26
- ];
27
- "discriminator": [
28
- 106,
29
- 10,
30
- 38,
31
- 204,
32
- 139,
33
- 188,
34
- 124,
35
- 50
36
- ];
37
- "accounts": [
38
- {
39
- "name": "glamState";
40
- "writable": true;
41
- },
42
- {
43
- "name": "glamVault";
44
- "writable": true;
45
- "pda": {
46
- "seeds": [
47
- {
48
- "kind": "const";
49
- "value": [
50
- 118,
51
- 97,
52
- 117,
53
- 108,
54
- 116
55
- ];
56
- },
57
- {
58
- "kind": "account";
59
- "path": "glamState";
60
- }
61
- ];
62
- "program": {
63
- "kind": "account";
64
- "path": "glamProtocolProgram";
65
- };
66
- };
67
- },
68
- {
69
- "name": "glamSigner";
70
- "writable": true;
71
- "signer": true;
72
- },
73
- {
74
- "name": "integrationAuthority";
75
- "pda": {
76
- "seeds": [
77
- {
78
- "kind": "const";
79
- "value": [
80
- 105,
81
- 110,
82
- 116,
83
- 101,
84
- 103,
85
- 114,
86
- 97,
87
- 116,
88
- 105,
89
- 111,
90
- 110,
91
- 45,
92
- 97,
93
- 117,
94
- 116,
95
- 104,
96
- 111,
97
- 114,
98
- 105,
99
- 116,
100
- 121
101
- ];
102
- }
103
- ];
104
- };
105
- },
106
- {
107
- "name": "cpiProgram";
108
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
109
- },
110
- {
111
- "name": "glamProtocolProgram";
112
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
113
- },
114
- {
115
- "name": "systemProgram";
116
- "address": "11111111111111111111111111111111";
117
- },
118
- {
119
- "name": "bsAuth";
120
- "signer": true;
121
- },
122
- {
123
- "name": "loan";
124
- "writable": true;
125
- },
126
- {
127
- "name": "strategy";
128
- "writable": true;
129
- },
130
- {
131
- "name": "marketInformation";
132
- "writable": true;
133
- },
134
- {
135
- "name": "principalMint";
136
- },
137
- {
138
- "name": "borrowerTa";
139
- "writable": true;
140
- },
141
- {
142
- "name": "strategyTa";
143
- "writable": true;
144
- },
145
- {
146
- "name": "associatedTokenProgram";
147
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
148
- },
149
- {
150
- "name": "tokenProgram";
151
- },
152
- {
153
- "name": "protocolAdminState";
154
- },
155
- {
156
- "name": "eventAuthority";
157
- }
158
- ];
159
- "args": [
160
- {
161
- "name": "params";
162
- "type": {
163
- "defined": {
164
- "name": "borrowPrincipalParams";
165
- };
166
- };
167
- }
168
- ];
169
- },
170
- {
171
- "name": "claimVaultRewards";
172
- "docs": [
173
- "Claim rewards accrued by a Loopscale VaultStake account.",
174
- "",
175
- "- Permission: `VaultPermissions::ClaimVaultRewards`.",
176
- "- Policy: `vault` must be present in `VaultPolicy::vault_allowlist`."
177
- ];
178
- "discriminator": [
179
- 0,
180
- 152,
181
- 75,
182
- 29,
183
- 195,
184
- 223,
185
- 12,
186
- 101
187
- ];
188
- "accounts": [
189
- {
190
- "name": "glamState";
191
- "writable": true;
192
- },
193
- {
194
- "name": "glamVault";
195
- "writable": true;
196
- "pda": {
197
- "seeds": [
198
- {
199
- "kind": "const";
200
- "value": [
201
- 118,
202
- 97,
203
- 117,
204
- 108,
205
- 116
206
- ];
207
- },
208
- {
209
- "kind": "account";
210
- "path": "glamState";
211
- }
212
- ];
213
- "program": {
214
- "kind": "account";
215
- "path": "glamProtocolProgram";
216
- };
217
- };
218
- },
219
- {
220
- "name": "glamSigner";
221
- "writable": true;
222
- "signer": true;
223
- },
224
- {
225
- "name": "integrationAuthority";
226
- "pda": {
227
- "seeds": [
228
- {
229
- "kind": "const";
230
- "value": [
231
- 105,
232
- 110,
233
- 116,
234
- 101,
235
- 103,
236
- 114,
237
- 97,
238
- 116,
239
- 105,
240
- 111,
241
- 110,
242
- 45,
243
- 97,
244
- 117,
245
- 116,
246
- 104,
247
- 111,
248
- 114,
249
- 105,
250
- 116,
251
- 121
252
- ];
253
- }
254
- ];
255
- };
256
- },
257
- {
258
- "name": "cpiProgram";
259
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
260
- },
261
- {
262
- "name": "glamProtocolProgram";
263
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
264
- },
265
- {
266
- "name": "systemProgram";
267
- "address": "11111111111111111111111111111111";
268
- },
269
- {
270
- "name": "bsAuth";
271
- "signer": true;
272
- },
273
- {
274
- "name": "vault";
275
- },
276
- {
277
- "name": "vaultRewardsInfo";
278
- "writable": true;
279
- },
280
- {
281
- "name": "userRewardsInfo";
282
- "writable": true;
283
- },
284
- {
285
- "name": "stakeAccount";
286
- "writable": true;
287
- },
288
- {
289
- "name": "associatedTokenProgram";
290
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
291
- },
292
- {
293
- "name": "protocolAdminState";
294
- },
295
- {
296
- "name": "eventAuthority";
297
- }
298
- ];
299
- "args": [
300
- {
301
- "name": "mints";
302
- "type": {
303
- "vec": "pubkey";
304
- };
305
- }
306
- ];
307
- },
308
- {
309
- "name": "closeLoan";
310
- "docs": [
311
- "Close an existing Loopscale loan PDA.",
312
- "",
313
- "- Permission: `BorrowPermissions::CloseLoan`."
314
- ];
315
- "discriminator": [
316
- 96,
317
- 114,
318
- 111,
319
- 204,
320
- 149,
321
- 228,
322
- 235,
323
- 124
324
- ];
325
- "accounts": [
326
- {
327
- "name": "glamState";
328
- "writable": true;
329
- },
330
- {
331
- "name": "glamVault";
332
- "writable": true;
333
- "pda": {
334
- "seeds": [
335
- {
336
- "kind": "const";
337
- "value": [
338
- 118,
339
- 97,
340
- 117,
341
- 108,
342
- 116
343
- ];
344
- },
345
- {
346
- "kind": "account";
347
- "path": "glamState";
348
- }
349
- ];
350
- "program": {
351
- "kind": "account";
352
- "path": "glamProtocolProgram";
353
- };
354
- };
355
- },
356
- {
357
- "name": "glamSigner";
358
- "writable": true;
359
- "signer": true;
360
- },
361
- {
362
- "name": "integrationAuthority";
363
- "pda": {
364
- "seeds": [
365
- {
366
- "kind": "const";
367
- "value": [
368
- 105,
369
- 110,
370
- 116,
371
- 101,
372
- 103,
373
- 114,
374
- 97,
375
- 116,
376
- 105,
377
- 111,
378
- 110,
379
- 45,
380
- 97,
381
- 117,
382
- 116,
383
- 104,
384
- 111,
385
- 114,
386
- 105,
387
- 116,
388
- 121
389
- ];
390
- }
391
- ];
392
- };
393
- },
394
- {
395
- "name": "cpiProgram";
396
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
397
- },
398
- {
399
- "name": "glamProtocolProgram";
400
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
401
- },
402
- {
403
- "name": "systemProgram";
404
- "address": "11111111111111111111111111111111";
405
- },
406
- {
407
- "name": "bsAuth";
408
- "signer": true;
409
- },
410
- {
411
- "name": "loan";
412
- "writable": true;
413
- },
414
- {
415
- "name": "protocolAdminState";
416
- },
417
- {
418
- "name": "eventAuthority";
419
- }
420
- ];
421
- "args": [];
422
- },
423
- {
424
- "name": "closeStrategy";
425
- "docs": [
426
- "Close a Loopscale lender strategy account.",
427
- "",
428
- "- Permission: `LendingPermissions::CloseStrategy`."
429
- ];
430
- "discriminator": [
431
- 56,
432
- 247,
433
- 170,
434
- 246,
435
- 89,
436
- 221,
437
- 134,
438
- 200
439
- ];
440
- "accounts": [
441
- {
442
- "name": "glamState";
443
- "writable": true;
444
- },
445
- {
446
- "name": "glamVault";
447
- "writable": true;
448
- "pda": {
449
- "seeds": [
450
- {
451
- "kind": "const";
452
- "value": [
453
- 118,
454
- 97,
455
- 117,
456
- 108,
457
- 116
458
- ];
459
- },
460
- {
461
- "kind": "account";
462
- "path": "glamState";
463
- }
464
- ];
465
- "program": {
466
- "kind": "account";
467
- "path": "glamProtocolProgram";
468
- };
469
- };
470
- },
471
- {
472
- "name": "glamSigner";
473
- "writable": true;
474
- "signer": true;
475
- },
476
- {
477
- "name": "integrationAuthority";
478
- "pda": {
479
- "seeds": [
480
- {
481
- "kind": "const";
482
- "value": [
483
- 105,
484
- 110,
485
- 116,
486
- 101,
487
- 103,
488
- 114,
489
- 97,
490
- 116,
491
- 105,
492
- 111,
493
- 110,
494
- 45,
495
- 97,
496
- 117,
497
- 116,
498
- 104,
499
- 111,
500
- 114,
501
- 105,
502
- 116,
503
- 121
504
- ];
505
- }
506
- ];
507
- };
508
- },
509
- {
510
- "name": "cpiProgram";
511
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
512
- },
513
- {
514
- "name": "glamProtocolProgram";
515
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
516
- },
517
- {
518
- "name": "systemProgram";
519
- "address": "11111111111111111111111111111111";
520
- },
521
- {
522
- "name": "bsAuth";
523
- "signer": true;
524
- },
525
- {
526
- "name": "strategy";
527
- "writable": true;
528
- },
529
- {
530
- "name": "principalMint";
531
- },
532
- {
533
- "name": "tokenProgram";
534
- },
535
- {
536
- "name": "associatedTokenProgram";
537
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
538
- },
539
- {
540
- "name": "protocolAdminState";
541
- },
542
- {
543
- "name": "eventAuthority";
544
- }
545
- ];
546
- "args": [];
547
- },
548
- {
549
- "name": "createLoan";
550
- "docs": [
551
- "Create a new Loopscale loan PDA owned by the GLAM vault.",
552
- "",
553
- "- Permission: `BorrowPermissions::CreateLoan`."
554
- ];
555
- "discriminator": [
556
- 166,
557
- 131,
558
- 118,
559
- 219,
560
- 138,
561
- 218,
562
- 206,
563
- 140
564
- ];
565
- "accounts": [
566
- {
567
- "name": "glamState";
568
- "writable": true;
569
- },
570
- {
571
- "name": "glamVault";
572
- "writable": true;
573
- "pda": {
574
- "seeds": [
575
- {
576
- "kind": "const";
577
- "value": [
578
- 118,
579
- 97,
580
- 117,
581
- 108,
582
- 116
583
- ];
584
- },
585
- {
586
- "kind": "account";
587
- "path": "glamState";
588
- }
589
- ];
590
- "program": {
591
- "kind": "account";
592
- "path": "glamProtocolProgram";
593
- };
594
- };
595
- },
596
- {
597
- "name": "glamSigner";
598
- "writable": true;
599
- "signer": true;
600
- },
601
- {
602
- "name": "integrationAuthority";
603
- "pda": {
604
- "seeds": [
605
- {
606
- "kind": "const";
607
- "value": [
608
- 105,
609
- 110,
610
- 116,
611
- 101,
612
- 103,
613
- 114,
614
- 97,
615
- 116,
616
- 105,
617
- 111,
618
- 110,
619
- 45,
620
- 97,
621
- 117,
622
- 116,
623
- 104,
624
- 111,
625
- 114,
626
- 105,
627
- 116,
628
- 121
629
- ];
630
- }
631
- ];
632
- };
633
- },
634
- {
635
- "name": "cpiProgram";
636
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
637
- },
638
- {
639
- "name": "glamProtocolProgram";
640
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
641
- },
642
- {
643
- "name": "systemProgram";
644
- "address": "11111111111111111111111111111111";
645
- },
646
- {
647
- "name": "bsAuth";
648
- "signer": true;
649
- },
650
- {
651
- "name": "loan";
652
- "writable": true;
653
- },
654
- {
655
- "name": "protocolAdminState";
656
- },
657
- {
658
- "name": "eventAuthority";
659
- }
660
- ];
661
- "args": [
662
- {
663
- "name": "params";
664
- "type": {
665
- "defined": {
666
- "name": "createLoanParams";
667
- };
668
- };
669
- }
670
- ];
671
- },
672
- {
673
- "name": "createStrategy";
674
- "docs": [
675
- "Create a new Loopscale lender strategy owned by the GLAM vault.",
676
- "",
677
- "- Permission: `LendingPermissions::CreateStrategy`.",
678
- "- Policy:",
679
- "- `principal_mint` must be present in `LendingPolicy::principal_allowlist`.",
680
- "- If `market_information` has a `LendingPolicy::market_policies` entry,",
681
- "advanced per-market lending limits are enforced.",
682
- "- `params.lender` must equal the GLAM vault."
683
- ];
684
- "discriminator": [
685
- 152,
686
- 160,
687
- 107,
688
- 148,
689
- 245,
690
- 190,
691
- 127,
692
- 224
693
- ];
694
- "accounts": [
695
- {
696
- "name": "glamState";
697
- "writable": true;
698
- },
699
- {
700
- "name": "glamVault";
701
- "writable": true;
702
- "pda": {
703
- "seeds": [
704
- {
705
- "kind": "const";
706
- "value": [
707
- 118,
708
- 97,
709
- 117,
710
- 108,
711
- 116
712
- ];
713
- },
714
- {
715
- "kind": "account";
716
- "path": "glamState";
717
- }
718
- ];
719
- "program": {
720
- "kind": "account";
721
- "path": "glamProtocolProgram";
722
- };
723
- };
724
- },
725
- {
726
- "name": "glamSigner";
727
- "writable": true;
728
- "signer": true;
729
- },
730
- {
731
- "name": "integrationAuthority";
732
- "pda": {
733
- "seeds": [
734
- {
735
- "kind": "const";
736
- "value": [
737
- 105,
738
- 110,
739
- 116,
740
- 101,
741
- 103,
742
- 114,
743
- 97,
744
- 116,
745
- 105,
746
- 111,
747
- 110,
748
- 45,
749
- 97,
750
- 117,
751
- 116,
752
- 104,
753
- 111,
754
- 114,
755
- 105,
756
- 116,
757
- 121
758
- ];
759
- }
760
- ];
761
- };
762
- },
763
- {
764
- "name": "cpiProgram";
765
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
766
- },
767
- {
768
- "name": "glamProtocolProgram";
769
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
770
- },
771
- {
772
- "name": "systemProgram";
773
- "address": "11111111111111111111111111111111";
774
- },
775
- {
776
- "name": "bsAuth";
777
- "signer": true;
778
- },
779
- {
780
- "name": "nonce";
781
- "signer": true;
782
- },
783
- {
784
- "name": "strategy";
785
- "writable": true;
786
- },
787
- {
788
- "name": "marketInformation";
789
- },
790
- {
791
- "name": "principalMint";
792
- },
793
- {
794
- "name": "protocolAdminState";
795
- },
796
- {
797
- "name": "eventAuthority";
798
- }
799
- ];
800
- "args": [
801
- {
802
- "name": "params";
803
- "type": {
804
- "defined": {
805
- "name": "createStrategyParams";
806
- };
807
- };
808
- }
809
- ];
810
- },
811
- {
812
- "name": "depositCollateral";
813
- "docs": [
814
- "Deposit collateral into a Loopscale loan.",
815
- "",
816
- "- Permission: `BorrowPermissions::DepositCollateral`.",
817
- "- Policy:",
818
- "- `deposit_mint` must be present in `BorrowPolicy::collateral_allowlist`."
819
- ];
820
- "discriminator": [
821
- 156,
822
- 131,
823
- 142,
824
- 116,
825
- 146,
826
- 247,
827
- 162,
828
- 120
829
- ];
830
- "accounts": [
831
- {
832
- "name": "glamState";
833
- "writable": true;
834
- },
835
- {
836
- "name": "glamVault";
837
- "writable": true;
838
- "pda": {
839
- "seeds": [
840
- {
841
- "kind": "const";
842
- "value": [
843
- 118,
844
- 97,
845
- 117,
846
- 108,
847
- 116
848
- ];
849
- },
850
- {
851
- "kind": "account";
852
- "path": "glamState";
853
- }
854
- ];
855
- "program": {
856
- "kind": "account";
857
- "path": "glamProtocolProgram";
858
- };
859
- };
860
- },
861
- {
862
- "name": "glamSigner";
863
- "writable": true;
864
- "signer": true;
865
- },
866
- {
867
- "name": "integrationAuthority";
868
- "pda": {
869
- "seeds": [
870
- {
871
- "kind": "const";
872
- "value": [
873
- 105,
874
- 110,
875
- 116,
876
- 101,
877
- 103,
878
- 114,
879
- 97,
880
- 116,
881
- 105,
882
- 111,
883
- 110,
884
- 45,
885
- 97,
886
- 117,
887
- 116,
888
- 104,
889
- 111,
890
- 114,
891
- 105,
892
- 116,
893
- 121
894
- ];
895
- }
896
- ];
897
- };
898
- },
899
- {
900
- "name": "cpiProgram";
901
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
902
- },
903
- {
904
- "name": "glamProtocolProgram";
905
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
906
- },
907
- {
908
- "name": "systemProgram";
909
- "address": "11111111111111111111111111111111";
910
- },
911
- {
912
- "name": "bsAuth";
913
- "signer": true;
914
- },
915
- {
916
- "name": "loan";
917
- "writable": true;
918
- },
919
- {
920
- "name": "borrowerCollateralTa";
921
- "writable": true;
922
- },
923
- {
924
- "name": "loanCollateralTa";
925
- "writable": true;
926
- },
927
- {
928
- "name": "depositMint";
929
- },
930
- {
931
- "name": "assetIdentifier";
932
- },
933
- {
934
- "name": "tokenProgram";
935
- },
936
- {
937
- "name": "associatedTokenProgram";
938
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
939
- },
940
- {
941
- "name": "protocolAdminState";
942
- },
943
- {
944
- "name": "eventAuthority";
945
- }
946
- ];
947
- "args": [
948
- {
949
- "name": "params";
950
- "type": {
951
- "defined": {
952
- "name": "depositCollateralParams";
953
- };
954
- };
955
- }
956
- ];
957
- },
958
- {
959
- "name": "depositStrategy";
960
- "docs": [
961
- "Deposit principal liquidity into a Loopscale lender strategy.",
962
- "",
963
- "- Permission: `LendingPermissions::DepositStrategy`.",
964
- "- Policy:",
965
- "- `principal_mint` must be present in `LendingPolicy::principal_allowlist`.",
966
- "- If `market_information` has a `LendingPolicy::market_policies` entry,",
967
- "advanced per-market lending limits are enforced."
968
- ];
969
- "discriminator": [
970
- 246,
971
- 82,
972
- 57,
973
- 226,
974
- 131,
975
- 222,
976
- 253,
977
- 249
978
- ];
979
- "accounts": [
980
- {
981
- "name": "glamState";
982
- "writable": true;
983
- },
984
- {
985
- "name": "glamVault";
986
- "writable": true;
987
- "pda": {
988
- "seeds": [
989
- {
990
- "kind": "const";
991
- "value": [
992
- 118,
993
- 97,
994
- 117,
995
- 108,
996
- 116
997
- ];
998
- },
999
- {
1000
- "kind": "account";
1001
- "path": "glamState";
1002
- }
1003
- ];
1004
- "program": {
1005
- "kind": "account";
1006
- "path": "glamProtocolProgram";
1007
- };
1008
- };
1009
- },
1010
- {
1011
- "name": "glamSigner";
1012
- "writable": true;
1013
- "signer": true;
1014
- },
1015
- {
1016
- "name": "integrationAuthority";
1017
- "pda": {
1018
- "seeds": [
1019
- {
1020
- "kind": "const";
1021
- "value": [
1022
- 105,
1023
- 110,
1024
- 116,
1025
- 101,
1026
- 103,
1027
- 114,
1028
- 97,
1029
- 116,
1030
- 105,
1031
- 111,
1032
- 110,
1033
- 45,
1034
- 97,
1035
- 117,
1036
- 116,
1037
- 104,
1038
- 111,
1039
- 114,
1040
- 105,
1041
- 116,
1042
- 121
1043
- ];
1044
- }
1045
- ];
1046
- };
1047
- },
1048
- {
1049
- "name": "cpiProgram";
1050
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
1051
- },
1052
- {
1053
- "name": "glamProtocolProgram";
1054
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1055
- },
1056
- {
1057
- "name": "systemProgram";
1058
- "address": "11111111111111111111111111111111";
1059
- },
1060
- {
1061
- "name": "bsAuth";
1062
- "signer": true;
1063
- },
1064
- {
1065
- "name": "strategy";
1066
- "writable": true;
1067
- },
1068
- {
1069
- "name": "principalMint";
1070
- },
1071
- {
1072
- "name": "marketInformation";
1073
- },
1074
- {
1075
- "name": "lenderTa";
1076
- "writable": true;
1077
- },
1078
- {
1079
- "name": "strategyTa";
1080
- "writable": true;
1081
- },
1082
- {
1083
- "name": "tokenProgram";
1084
- },
1085
- {
1086
- "name": "associatedTokenProgram";
1087
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
1088
- },
1089
- {
1090
- "name": "protocolAdminState";
1091
- },
1092
- {
1093
- "name": "eventAuthority";
1094
- }
1095
- ];
1096
- "args": [
1097
- {
1098
- "name": "amount";
1099
- "type": "u64";
1100
- }
1101
- ];
1102
- },
1103
- {
1104
- "name": "depositUserVault";
1105
- "docs": [
1106
- "Deposit principal into a Loopscale user vault and receive Token-2022 LP tokens.",
1107
- "",
1108
- "- Permission: `VaultPermissions::DepositUserVault`.",
1109
- "- Policy: `vault` must be present in `VaultPolicy::vault_allowlist`."
1110
- ];
1111
- "discriminator": [
1112
- 204,
1113
- 190,
1114
- 182,
1115
- 224,
1116
- 15,
1117
- 219,
1118
- 247,
1119
- 121
1120
- ];
1121
- "accounts": [
1122
- {
1123
- "name": "glamState";
1124
- "writable": true;
1125
- },
1126
- {
1127
- "name": "glamVault";
1128
- "writable": true;
1129
- "pda": {
1130
- "seeds": [
1131
- {
1132
- "kind": "const";
1133
- "value": [
1134
- 118,
1135
- 97,
1136
- 117,
1137
- 108,
1138
- 116
1139
- ];
1140
- },
1141
- {
1142
- "kind": "account";
1143
- "path": "glamState";
1144
- }
1145
- ];
1146
- "program": {
1147
- "kind": "account";
1148
- "path": "glamProtocolProgram";
1149
- };
1150
- };
1151
- },
1152
- {
1153
- "name": "glamSigner";
1154
- "writable": true;
1155
- "signer": true;
1156
- },
1157
- {
1158
- "name": "integrationAuthority";
1159
- "pda": {
1160
- "seeds": [
1161
- {
1162
- "kind": "const";
1163
- "value": [
1164
- 105,
1165
- 110,
1166
- 116,
1167
- 101,
1168
- 103,
1169
- 114,
1170
- 97,
1171
- 116,
1172
- 105,
1173
- 111,
1174
- 110,
1175
- 45,
1176
- 97,
1177
- 117,
1178
- 116,
1179
- 104,
1180
- 111,
1181
- 114,
1182
- 105,
1183
- 116,
1184
- 121
1185
- ];
1186
- }
1187
- ];
1188
- };
1189
- },
1190
- {
1191
- "name": "cpiProgram";
1192
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
1193
- },
1194
- {
1195
- "name": "glamProtocolProgram";
1196
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1197
- },
1198
- {
1199
- "name": "systemProgram";
1200
- "address": "11111111111111111111111111111111";
1201
- },
1202
- {
1203
- "name": "bsAuth";
1204
- "signer": true;
1205
- },
1206
- {
1207
- "name": "vault";
1208
- "writable": true;
1209
- },
1210
- {
1211
- "name": "strategy";
1212
- "writable": true;
1213
- },
1214
- {
1215
- "name": "marketInformation";
1216
- },
1217
- {
1218
- "name": "lpMint";
1219
- "writable": true;
1220
- },
1221
- {
1222
- "name": "userLpTa";
1223
- "writable": true;
1224
- },
1225
- {
1226
- "name": "userPrincipalTa";
1227
- "writable": true;
1228
- },
1229
- {
1230
- "name": "strategyPrincipalTa";
1231
- "writable": true;
1232
- },
1233
- {
1234
- "name": "principalMint";
1235
- },
1236
- {
1237
- "name": "principalTokenProgram";
1238
- },
1239
- {
1240
- "name": "token2022Program";
1241
- "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb";
1242
- },
1243
- {
1244
- "name": "associatedTokenProgram";
1245
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
1246
- },
1247
- {
1248
- "name": "protocolAdminState";
1249
- },
1250
- {
1251
- "name": "eventAuthority";
1252
- }
1253
- ];
1254
- "args": [
1255
- {
1256
- "name": "params";
1257
- "type": {
1258
- "defined": {
1259
- "name": "lpParams";
1260
- };
1261
- };
1262
- }
1263
- ];
1264
- },
1265
- {
1266
- "name": "repayPrincipal";
1267
- "docs": [
1268
- "Repay principal on a Loopscale loan.",
1269
- "",
1270
- "- Permission: `BorrowPermissions::RepayPrincipal`."
1271
- ];
1272
- "discriminator": [
1273
- 229,
1274
- 67,
1275
- 83,
1276
- 65,
1277
- 77,
1278
- 84,
1279
- 80,
1280
- 141
1281
- ];
1282
- "accounts": [
1283
- {
1284
- "name": "glamState";
1285
- "writable": true;
1286
- },
1287
- {
1288
- "name": "glamVault";
1289
- "writable": true;
1290
- "pda": {
1291
- "seeds": [
1292
- {
1293
- "kind": "const";
1294
- "value": [
1295
- 118,
1296
- 97,
1297
- 117,
1298
- 108,
1299
- 116
1300
- ];
1301
- },
1302
- {
1303
- "kind": "account";
1304
- "path": "glamState";
1305
- }
1306
- ];
1307
- "program": {
1308
- "kind": "account";
1309
- "path": "glamProtocolProgram";
1310
- };
1311
- };
1312
- },
1313
- {
1314
- "name": "glamSigner";
1315
- "writable": true;
1316
- "signer": true;
1317
- },
1318
- {
1319
- "name": "integrationAuthority";
1320
- "pda": {
1321
- "seeds": [
1322
- {
1323
- "kind": "const";
1324
- "value": [
1325
- 105,
1326
- 110,
1327
- 116,
1328
- 101,
1329
- 103,
1330
- 114,
1331
- 97,
1332
- 116,
1333
- 105,
1334
- 111,
1335
- 110,
1336
- 45,
1337
- 97,
1338
- 117,
1339
- 116,
1340
- 104,
1341
- 111,
1342
- 114,
1343
- 105,
1344
- 116,
1345
- 121
1346
- ];
1347
- }
1348
- ];
1349
- };
1350
- },
1351
- {
1352
- "name": "cpiProgram";
1353
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
1354
- },
1355
- {
1356
- "name": "glamProtocolProgram";
1357
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1358
- },
1359
- {
1360
- "name": "systemProgram";
1361
- "address": "11111111111111111111111111111111";
1362
- },
1363
- {
1364
- "name": "bsAuth";
1365
- "signer": true;
1366
- },
1367
- {
1368
- "name": "loan";
1369
- "writable": true;
1370
- },
1371
- {
1372
- "name": "strategy";
1373
- "writable": true;
1374
- },
1375
- {
1376
- "name": "marketInformation";
1377
- "writable": true;
1378
- },
1379
- {
1380
- "name": "principalMint";
1381
- },
1382
- {
1383
- "name": "borrowerTa";
1384
- "writable": true;
1385
- },
1386
- {
1387
- "name": "strategyTa";
1388
- "writable": true;
1389
- },
1390
- {
1391
- "name": "associatedTokenProgram";
1392
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
1393
- },
1394
- {
1395
- "name": "tokenProgram";
1396
- },
1397
- {
1398
- "name": "protocolAdminState";
1399
- },
1400
- {
1401
- "name": "eventAuthority";
1402
- }
1403
- ];
1404
- "args": [
1405
- {
1406
- "name": "params";
1407
- "type": {
1408
- "defined": {
1409
- "name": "repayPrincipalParams";
1410
- };
1411
- };
1412
- }
1413
- ];
1414
- },
1415
- {
1416
- "name": "sellLedger";
1417
- "docs": [
1418
- "Sell a loan ledger from one strategy to another.",
1419
- "",
1420
- "- Permission: `LendingPermissions::SellLedger`.",
1421
- "- Policy:",
1422
- "- `principal_mint` must be present in `LendingPolicy::principal_allowlist`.",
1423
- "- If the new strategy market account has a `LendingPolicy::market_policies` entry,",
1424
- "advanced exposure limits are enforced."
1425
- ];
1426
- "discriminator": [
1427
- 55,
1428
- 17,
1429
- 153,
1430
- 148,
1431
- 120,
1432
- 242,
1433
- 80,
1434
- 5
1435
- ];
1436
- "accounts": [
1437
- {
1438
- "name": "glamState";
1439
- "writable": true;
1440
- },
1441
- {
1442
- "name": "glamVault";
1443
- "writable": true;
1444
- "pda": {
1445
- "seeds": [
1446
- {
1447
- "kind": "const";
1448
- "value": [
1449
- 118,
1450
- 97,
1451
- 117,
1452
- 108,
1453
- 116
1454
- ];
1455
- },
1456
- {
1457
- "kind": "account";
1458
- "path": "glamState";
1459
- }
1460
- ];
1461
- "program": {
1462
- "kind": "account";
1463
- "path": "glamProtocolProgram";
1464
- };
1465
- };
1466
- },
1467
- {
1468
- "name": "glamSigner";
1469
- "writable": true;
1470
- "signer": true;
1471
- },
1472
- {
1473
- "name": "integrationAuthority";
1474
- "pda": {
1475
- "seeds": [
1476
- {
1477
- "kind": "const";
1478
- "value": [
1479
- 105,
1480
- 110,
1481
- 116,
1482
- 101,
1483
- 103,
1484
- 114,
1485
- 97,
1486
- 116,
1487
- 105,
1488
- 111,
1489
- 110,
1490
- 45,
1491
- 97,
1492
- 117,
1493
- 116,
1494
- 104,
1495
- 111,
1496
- 114,
1497
- 105,
1498
- 116,
1499
- 121
1500
- ];
1501
- }
1502
- ];
1503
- };
1504
- },
1505
- {
1506
- "name": "cpiProgram";
1507
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
1508
- },
1509
- {
1510
- "name": "glamProtocolProgram";
1511
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1512
- },
1513
- {
1514
- "name": "systemProgram";
1515
- "address": "11111111111111111111111111111111";
1516
- },
1517
- {
1518
- "name": "bsAuth";
1519
- "signer": true;
1520
- },
1521
- {
1522
- "name": "loan";
1523
- "writable": true;
1524
- },
1525
- {
1526
- "name": "newStrategyTa";
1527
- "writable": true;
1528
- },
1529
- {
1530
- "name": "lenderAuthTa";
1531
- "writable": true;
1532
- },
1533
- {
1534
- "name": "oldStrategy";
1535
- "writable": true;
1536
- },
1537
- {
1538
- "name": "newStrategy";
1539
- "writable": true;
1540
- },
1541
- {
1542
- "name": "oldStrategyMarketInformation";
1543
- "writable": true;
1544
- },
1545
- {
1546
- "name": "newStrategyMarketInformation";
1547
- "writable": true;
1548
- },
1549
- {
1550
- "name": "principalMint";
1551
- },
1552
- {
1553
- "name": "tokenProgram";
1554
- },
1555
- {
1556
- "name": "associatedTokenProgram";
1557
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
1558
- },
1559
- {
1560
- "name": "userVault";
1561
- },
1562
- {
1563
- "name": "oldStrategyTa";
1564
- },
1565
- {
1566
- "name": "protocolAdminState";
1567
- },
1568
- {
1569
- "name": "eventAuthority";
1570
- }
1571
- ];
1572
- "args": [
1573
- {
1574
- "name": "params";
1575
- "type": {
1576
- "defined": {
1577
- "name": "sellLedgerParams";
1578
- };
1579
- };
1580
- }
1581
- ];
1582
- },
1583
- {
1584
- "name": "setBorrowPolicy";
1585
- "docs": [
1586
- "Set the Loopscale borrow policy (collateral allowlist and market policies).",
1587
- "",
1588
- "- Permission: `BorrowPermissions::SetPolicy`."
1589
- ];
1590
- "discriminator": [
1591
- 199,
1592
- 94,
1593
- 106,
1594
- 205,
1595
- 150,
1596
- 227,
1597
- 206,
1598
- 68
1599
- ];
1600
- "accounts": [
1601
- {
1602
- "name": "glamState";
1603
- "writable": true;
1604
- },
1605
- {
1606
- "name": "glamSigner";
1607
- "writable": true;
1608
- "signer": true;
1609
- },
1610
- {
1611
- "name": "glamProtocolProgram";
1612
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1613
- },
1614
- {
1615
- "name": "integrationProgram";
1616
- "address": "G1NTLoPS5orMCxgFjzNDE5H6c3AbxiU1DgqCJBaJ1pfM";
1617
- },
1618
- {
1619
- "name": "integrationAuthority";
1620
- "pda": {
1621
- "seeds": [
1622
- {
1623
- "kind": "const";
1624
- "value": [
1625
- 105,
1626
- 110,
1627
- 116,
1628
- 101,
1629
- 103,
1630
- 114,
1631
- 97,
1632
- 116,
1633
- 105,
1634
- 111,
1635
- 110,
1636
- 45,
1637
- 97,
1638
- 117,
1639
- 116,
1640
- 104,
1641
- 111,
1642
- 114,
1643
- 105,
1644
- 116,
1645
- 121
1646
- ];
1647
- }
1648
- ];
1649
- };
1650
- }
1651
- ];
1652
- "args": [
1653
- {
1654
- "name": "policy";
1655
- "type": {
1656
- "defined": {
1657
- "name": "borrowPolicy";
1658
- };
1659
- };
1660
- }
1661
- ];
1662
- },
1663
- {
1664
- "name": "setLendingPolicy";
1665
- "docs": [
1666
- "Set the Loopscale lending policy (allowlists, market policies, and sell-ledger limits).",
1667
- "",
1668
- "- Permission: `LendingPermissions::SetPolicy`."
1669
- ];
1670
- "discriminator": [
1671
- 226,
1672
- 185,
1673
- 23,
1674
- 3,
1675
- 113,
1676
- 88,
1677
- 118,
1678
- 176
1679
- ];
1680
- "accounts": [
1681
- {
1682
- "name": "glamState";
1683
- "writable": true;
1684
- },
1685
- {
1686
- "name": "glamSigner";
1687
- "writable": true;
1688
- "signer": true;
1689
- },
1690
- {
1691
- "name": "glamProtocolProgram";
1692
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1693
- },
1694
- {
1695
- "name": "integrationProgram";
1696
- "address": "G1NTLoPS5orMCxgFjzNDE5H6c3AbxiU1DgqCJBaJ1pfM";
1697
- },
1698
- {
1699
- "name": "integrationAuthority";
1700
- "pda": {
1701
- "seeds": [
1702
- {
1703
- "kind": "const";
1704
- "value": [
1705
- 105,
1706
- 110,
1707
- 116,
1708
- 101,
1709
- 103,
1710
- 114,
1711
- 97,
1712
- 116,
1713
- 105,
1714
- 111,
1715
- 110,
1716
- 45,
1717
- 97,
1718
- 117,
1719
- 116,
1720
- 104,
1721
- 111,
1722
- 114,
1723
- 105,
1724
- 116,
1725
- 121
1726
- ];
1727
- }
1728
- ];
1729
- };
1730
- }
1731
- ];
1732
- "args": [
1733
- {
1734
- "name": "policy";
1735
- "type": {
1736
- "defined": {
1737
- "name": "lendingPolicy";
1738
- };
1739
- };
1740
- }
1741
- ];
1742
- },
1743
- {
1744
- "name": "setVaultPolicy";
1745
- "docs": [
1746
- "Set the Loopscale vault policy (vault allowlist).",
1747
- "",
1748
- "- Permission: `VaultPermissions::SetPolicy`."
1749
- ];
1750
- "discriminator": [
1751
- 184,
1752
- 31,
1753
- 142,
1754
- 18,
1755
- 106,
1756
- 143,
1757
- 184,
1758
- 158
1759
- ];
1760
- "accounts": [
1761
- {
1762
- "name": "glamState";
1763
- "writable": true;
1764
- },
1765
- {
1766
- "name": "glamSigner";
1767
- "writable": true;
1768
- "signer": true;
1769
- },
1770
- {
1771
- "name": "glamProtocolProgram";
1772
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1773
- },
1774
- {
1775
- "name": "integrationProgram";
1776
- "address": "G1NTLoPS5orMCxgFjzNDE5H6c3AbxiU1DgqCJBaJ1pfM";
1777
- },
1778
- {
1779
- "name": "integrationAuthority";
1780
- "pda": {
1781
- "seeds": [
1782
- {
1783
- "kind": "const";
1784
- "value": [
1785
- 105,
1786
- 110,
1787
- 116,
1788
- 101,
1789
- 103,
1790
- 114,
1791
- 97,
1792
- 116,
1793
- 105,
1794
- 111,
1795
- 110,
1796
- 45,
1797
- 97,
1798
- 117,
1799
- 116,
1800
- 104,
1801
- 111,
1802
- 114,
1803
- 105,
1804
- 116,
1805
- 121
1806
- ];
1807
- }
1808
- ];
1809
- };
1810
- }
1811
- ];
1812
- "args": [
1813
- {
1814
- "name": "policy";
1815
- "type": {
1816
- "defined": {
1817
- "name": "vaultPolicy";
1818
- };
1819
- };
1820
- }
1821
- ];
1822
- },
1823
- {
1824
- "name": "stakeUserVaultLp";
1825
- "docs": [
1826
- "Stake Loopscale user vault LP tokens into a VaultStake account.",
1827
- "",
1828
- "- Permission: `VaultPermissions::StakeUserVaultLp`.",
1829
- "- Policy: `vault` must be present in `VaultPolicy::vault_allowlist`."
1830
- ];
1831
- "discriminator": [
1832
- 114,
1833
- 132,
1834
- 194,
1835
- 209,
1836
- 208,
1837
- 149,
1838
- 43,
1839
- 136
1840
- ];
1841
- "accounts": [
1842
- {
1843
- "name": "glamState";
1844
- "writable": true;
1845
- },
1846
- {
1847
- "name": "glamVault";
1848
- "writable": true;
1849
- "pda": {
1850
- "seeds": [
1851
- {
1852
- "kind": "const";
1853
- "value": [
1854
- 118,
1855
- 97,
1856
- 117,
1857
- 108,
1858
- 116
1859
- ];
1860
- },
1861
- {
1862
- "kind": "account";
1863
- "path": "glamState";
1864
- }
1865
- ];
1866
- "program": {
1867
- "kind": "account";
1868
- "path": "glamProtocolProgram";
1869
- };
1870
- };
1871
- },
1872
- {
1873
- "name": "glamSigner";
1874
- "writable": true;
1875
- "signer": true;
1876
- },
1877
- {
1878
- "name": "integrationAuthority";
1879
- "pda": {
1880
- "seeds": [
1881
- {
1882
- "kind": "const";
1883
- "value": [
1884
- 105,
1885
- 110,
1886
- 116,
1887
- 101,
1888
- 103,
1889
- 114,
1890
- 97,
1891
- 116,
1892
- 105,
1893
- 111,
1894
- 110,
1895
- 45,
1896
- 97,
1897
- 117,
1898
- 116,
1899
- 104,
1900
- 111,
1901
- 114,
1902
- 105,
1903
- 116,
1904
- 121
1905
- ];
1906
- }
1907
- ];
1908
- };
1909
- },
1910
- {
1911
- "name": "cpiProgram";
1912
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
1913
- },
1914
- {
1915
- "name": "glamProtocolProgram";
1916
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
1917
- },
1918
- {
1919
- "name": "systemProgram";
1920
- "address": "11111111111111111111111111111111";
1921
- },
1922
- {
1923
- "name": "bsAuth";
1924
- "signer": true;
1925
- },
1926
- {
1927
- "name": "nonce";
1928
- "signer": true;
1929
- },
1930
- {
1931
- "name": "vault";
1932
- "writable": true;
1933
- },
1934
- {
1935
- "name": "vaultStake";
1936
- "writable": true;
1937
- },
1938
- {
1939
- "name": "lpMint";
1940
- },
1941
- {
1942
- "name": "userLpTa";
1943
- "writable": true;
1944
- },
1945
- {
1946
- "name": "vaultStakeLpTa";
1947
- "writable": true;
1948
- },
1949
- {
1950
- "name": "vaultRewardsInfo";
1951
- "writable": true;
1952
- },
1953
- {
1954
- "name": "userRewardsInfo";
1955
- "writable": true;
1956
- },
1957
- {
1958
- "name": "tokenProgram";
1959
- "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb";
1960
- },
1961
- {
1962
- "name": "associatedTokenProgram";
1963
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
1964
- },
1965
- {
1966
- "name": "protocolAdminState";
1967
- },
1968
- {
1969
- "name": "eventAuthority";
1970
- }
1971
- ];
1972
- "args": [
1973
- {
1974
- "name": "params";
1975
- "type": {
1976
- "defined": {
1977
- "name": "vaultStakeParams";
1978
- };
1979
- };
1980
- }
1981
- ];
1982
- },
1983
- {
1984
- "name": "unstakeUserVaultLp";
1985
- "docs": [
1986
- "Unstake Loopscale user vault LP tokens from a VaultStake account.",
1987
- "",
1988
- "- Permission: `VaultPermissions::UnstakeUserVaultLp`.",
1989
- "- Policy: `vault` must be present in `VaultPolicy::vault_allowlist`."
1990
- ];
1991
- "discriminator": [
1992
- 83,
1993
- 78,
1994
- 230,
1995
- 123,
1996
- 226,
1997
- 40,
1998
- 158,
1999
- 97
2000
- ];
2001
- "accounts": [
2002
- {
2003
- "name": "glamState";
2004
- "writable": true;
2005
- },
2006
- {
2007
- "name": "glamVault";
2008
- "writable": true;
2009
- "pda": {
2010
- "seeds": [
2011
- {
2012
- "kind": "const";
2013
- "value": [
2014
- 118,
2015
- 97,
2016
- 117,
2017
- 108,
2018
- 116
2019
- ];
2020
- },
2021
- {
2022
- "kind": "account";
2023
- "path": "glamState";
2024
- }
2025
- ];
2026
- "program": {
2027
- "kind": "account";
2028
- "path": "glamProtocolProgram";
2029
- };
2030
- };
2031
- },
2032
- {
2033
- "name": "glamSigner";
2034
- "writable": true;
2035
- "signer": true;
2036
- },
2037
- {
2038
- "name": "integrationAuthority";
2039
- "pda": {
2040
- "seeds": [
2041
- {
2042
- "kind": "const";
2043
- "value": [
2044
- 105,
2045
- 110,
2046
- 116,
2047
- 101,
2048
- 103,
2049
- 114,
2050
- 97,
2051
- 116,
2052
- 105,
2053
- 111,
2054
- 110,
2055
- 45,
2056
- 97,
2057
- 117,
2058
- 116,
2059
- 104,
2060
- 111,
2061
- 114,
2062
- 105,
2063
- 116,
2064
- 121
2065
- ];
2066
- }
2067
- ];
2068
- };
2069
- },
2070
- {
2071
- "name": "cpiProgram";
2072
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
2073
- },
2074
- {
2075
- "name": "glamProtocolProgram";
2076
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
2077
- },
2078
- {
2079
- "name": "systemProgram";
2080
- "address": "11111111111111111111111111111111";
2081
- },
2082
- {
2083
- "name": "bsAuth";
2084
- "signer": true;
2085
- },
2086
- {
2087
- "name": "vault";
2088
- "writable": true;
2089
- },
2090
- {
2091
- "name": "lpMint";
2092
- "writable": true;
2093
- },
2094
- {
2095
- "name": "vaultStake";
2096
- "writable": true;
2097
- },
2098
- {
2099
- "name": "userLpTa";
2100
- "writable": true;
2101
- },
2102
- {
2103
- "name": "vaultStakeLpTa";
2104
- "writable": true;
2105
- },
2106
- {
2107
- "name": "vaultRewardsInfo";
2108
- "writable": true;
2109
- },
2110
- {
2111
- "name": "userRewardsInfo";
2112
- "writable": true;
2113
- },
2114
- {
2115
- "name": "tokenProgram";
2116
- "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb";
2117
- },
2118
- {
2119
- "name": "associatedTokenProgram";
2120
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
2121
- },
2122
- {
2123
- "name": "protocolAdminState";
2124
- },
2125
- {
2126
- "name": "eventAuthority";
2127
- }
2128
- ];
2129
- "args": [
2130
- {
2131
- "name": "params";
2132
- "type": {
2133
- "defined": {
2134
- "name": "vaultUnstakeParams";
2135
- };
2136
- };
2137
- }
2138
- ];
2139
- },
2140
- {
2141
- "name": "updateStrategy";
2142
- "docs": [
2143
- "Update a Loopscale lender strategy's terms, caps, and collateral terms.",
2144
- "",
2145
- "- Permission: `LendingPermissions::UpdateStrategy`.",
2146
- "- Policy:",
2147
- "- The strategy market account must be passed as the first remaining account.",
2148
- "- `principal_mint` must be present in `LendingPolicy::principal_allowlist`.",
2149
- "- Collateral term asset identifiers must be present in",
2150
- "`LendingPolicy::collateral_allowlist`.",
2151
- "- If the strategy market account has a `LendingPolicy::market_policies` entry,",
2152
- "advanced per-market lending limits are enforced."
2153
- ];
2154
- "discriminator": [
2155
- 16,
2156
- 76,
2157
- 138,
2158
- 179,
2159
- 171,
2160
- 112,
2161
- 196,
2162
- 21
2163
- ];
2164
- "accounts": [
2165
- {
2166
- "name": "glamState";
2167
- "writable": true;
2168
- },
2169
- {
2170
- "name": "glamVault";
2171
- "writable": true;
2172
- "pda": {
2173
- "seeds": [
2174
- {
2175
- "kind": "const";
2176
- "value": [
2177
- 118,
2178
- 97,
2179
- 117,
2180
- 108,
2181
- 116
2182
- ];
2183
- },
2184
- {
2185
- "kind": "account";
2186
- "path": "glamState";
2187
- }
2188
- ];
2189
- "program": {
2190
- "kind": "account";
2191
- "path": "glamProtocolProgram";
2192
- };
2193
- };
2194
- },
2195
- {
2196
- "name": "glamSigner";
2197
- "writable": true;
2198
- "signer": true;
2199
- },
2200
- {
2201
- "name": "integrationAuthority";
2202
- "pda": {
2203
- "seeds": [
2204
- {
2205
- "kind": "const";
2206
- "value": [
2207
- 105,
2208
- 110,
2209
- 116,
2210
- 101,
2211
- 103,
2212
- 114,
2213
- 97,
2214
- 116,
2215
- 105,
2216
- 111,
2217
- 110,
2218
- 45,
2219
- 97,
2220
- 117,
2221
- 116,
2222
- 104,
2223
- 111,
2224
- 114,
2225
- 105,
2226
- 116,
2227
- 121
2228
- ];
2229
- }
2230
- ];
2231
- };
2232
- },
2233
- {
2234
- "name": "cpiProgram";
2235
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
2236
- },
2237
- {
2238
- "name": "glamProtocolProgram";
2239
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
2240
- },
2241
- {
2242
- "name": "systemProgram";
2243
- "address": "11111111111111111111111111111111";
2244
- },
2245
- {
2246
- "name": "bsAuth";
2247
- "signer": true;
2248
- },
2249
- {
2250
- "name": "strategy";
2251
- "writable": true;
2252
- },
2253
- {
2254
- "name": "principalMint";
2255
- },
2256
- {
2257
- "name": "strategyTa";
2258
- "writable": true;
2259
- },
2260
- {
2261
- "name": "associatedTokenProgram";
2262
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
2263
- },
2264
- {
2265
- "name": "tokenProgram";
2266
- },
2267
- {
2268
- "name": "protocolAdminState";
2269
- },
2270
- {
2271
- "name": "eventAuthority";
2272
- }
2273
- ];
2274
- "args": [
2275
- {
2276
- "name": "collateralTerms";
2277
- "type": {
2278
- "vec": {
2279
- "defined": {
2280
- "name": "multiCollateralTermsUpdateParams";
2281
- };
2282
- };
2283
- };
2284
- },
2285
- {
2286
- "name": "params";
2287
- "type": {
2288
- "option": {
2289
- "defined": {
2290
- "name": "updateStrategyParams";
2291
- };
2292
- };
2293
- };
2294
- }
2295
- ];
2296
- },
2297
- {
2298
- "name": "updateWeightMatrix";
2299
- "docs": [
2300
- "Update the collateral weight matrix on a loan.",
2301
- "",
2302
- "- Permission: `BorrowPermissions::UpdateLoan`."
2303
- ];
2304
- "discriminator": [
2305
- 252,
2306
- 166,
2307
- 37,
2308
- 207,
2309
- 154,
2310
- 83,
2311
- 187,
2312
- 128
2313
- ];
2314
- "accounts": [
2315
- {
2316
- "name": "glamState";
2317
- "writable": true;
2318
- },
2319
- {
2320
- "name": "glamVault";
2321
- "writable": true;
2322
- "pda": {
2323
- "seeds": [
2324
- {
2325
- "kind": "const";
2326
- "value": [
2327
- 118,
2328
- 97,
2329
- 117,
2330
- 108,
2331
- 116
2332
- ];
2333
- },
2334
- {
2335
- "kind": "account";
2336
- "path": "glamState";
2337
- }
2338
- ];
2339
- "program": {
2340
- "kind": "account";
2341
- "path": "glamProtocolProgram";
2342
- };
2343
- };
2344
- },
2345
- {
2346
- "name": "glamSigner";
2347
- "writable": true;
2348
- "signer": true;
2349
- },
2350
- {
2351
- "name": "integrationAuthority";
2352
- "pda": {
2353
- "seeds": [
2354
- {
2355
- "kind": "const";
2356
- "value": [
2357
- 105,
2358
- 110,
2359
- 116,
2360
- 101,
2361
- 103,
2362
- 114,
2363
- 97,
2364
- 116,
2365
- 105,
2366
- 111,
2367
- 110,
2368
- 45,
2369
- 97,
2370
- 117,
2371
- 116,
2372
- 104,
2373
- 111,
2374
- 114,
2375
- 105,
2376
- 116,
2377
- 121
2378
- ];
2379
- }
2380
- ];
2381
- };
2382
- },
2383
- {
2384
- "name": "cpiProgram";
2385
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
2386
- },
2387
- {
2388
- "name": "glamProtocolProgram";
2389
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
2390
- },
2391
- {
2392
- "name": "systemProgram";
2393
- "address": "11111111111111111111111111111111";
2394
- },
2395
- {
2396
- "name": "bsAuth";
2397
- "signer": true;
2398
- },
2399
- {
2400
- "name": "loan";
2401
- "writable": true;
2402
- },
2403
- {
2404
- "name": "protocolAdminState";
2405
- }
2406
- ];
2407
- "args": [
2408
- {
2409
- "name": "params";
2410
- "type": {
2411
- "defined": {
2412
- "name": "updateWeightMatrixParams";
2413
- };
2414
- };
2415
- }
2416
- ];
2417
- },
2418
- {
2419
- "name": "withdrawCollateral";
2420
- "docs": [
2421
- "Withdraw collateral from a Loopscale loan.",
2422
- "",
2423
- "- Permission: `BorrowPermissions::WithdrawCollateral`."
2424
- ];
2425
- "discriminator": [
2426
- 115,
2427
- 135,
2428
- 168,
2429
- 106,
2430
- 139,
2431
- 214,
2432
- 138,
2433
- 150
2434
- ];
2435
- "accounts": [
2436
- {
2437
- "name": "glamState";
2438
- "writable": true;
2439
- },
2440
- {
2441
- "name": "glamVault";
2442
- "writable": true;
2443
- "pda": {
2444
- "seeds": [
2445
- {
2446
- "kind": "const";
2447
- "value": [
2448
- 118,
2449
- 97,
2450
- 117,
2451
- 108,
2452
- 116
2453
- ];
2454
- },
2455
- {
2456
- "kind": "account";
2457
- "path": "glamState";
2458
- }
2459
- ];
2460
- "program": {
2461
- "kind": "account";
2462
- "path": "glamProtocolProgram";
2463
- };
2464
- };
2465
- },
2466
- {
2467
- "name": "glamSigner";
2468
- "writable": true;
2469
- "signer": true;
2470
- },
2471
- {
2472
- "name": "integrationAuthority";
2473
- "pda": {
2474
- "seeds": [
2475
- {
2476
- "kind": "const";
2477
- "value": [
2478
- 105,
2479
- 110,
2480
- 116,
2481
- 101,
2482
- 103,
2483
- 114,
2484
- 97,
2485
- 116,
2486
- 105,
2487
- 111,
2488
- 110,
2489
- 45,
2490
- 97,
2491
- 117,
2492
- 116,
2493
- 104,
2494
- 111,
2495
- 114,
2496
- 105,
2497
- 116,
2498
- 121
2499
- ];
2500
- }
2501
- ];
2502
- };
2503
- },
2504
- {
2505
- "name": "cpiProgram";
2506
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
2507
- },
2508
- {
2509
- "name": "glamProtocolProgram";
2510
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
2511
- },
2512
- {
2513
- "name": "systemProgram";
2514
- "address": "11111111111111111111111111111111";
2515
- },
2516
- {
2517
- "name": "bsAuth";
2518
- "signer": true;
2519
- },
2520
- {
2521
- "name": "loan";
2522
- "writable": true;
2523
- },
2524
- {
2525
- "name": "borrowerTa";
2526
- "writable": true;
2527
- },
2528
- {
2529
- "name": "loanTa";
2530
- "writable": true;
2531
- },
2532
- {
2533
- "name": "assetMint";
2534
- },
2535
- {
2536
- "name": "tokenProgram";
2537
- },
2538
- {
2539
- "name": "associatedTokenProgram";
2540
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
2541
- },
2542
- {
2543
- "name": "protocolAdminState";
2544
- },
2545
- {
2546
- "name": "eventAuthority";
2547
- }
2548
- ];
2549
- "args": [
2550
- {
2551
- "name": "params";
2552
- "type": {
2553
- "defined": {
2554
- "name": "withdrawCollateralParams";
2555
- };
2556
- };
2557
- }
2558
- ];
2559
- },
2560
- {
2561
- "name": "withdrawStrategy";
2562
- "docs": [
2563
- "Withdraw undeployed principal from a Loopscale lender strategy.",
2564
- "",
2565
- "- Permission: `LendingPermissions::WithdrawStrategy`."
2566
- ];
2567
- "discriminator": [
2568
- 31,
2569
- 45,
2570
- 162,
2571
- 5,
2572
- 193,
2573
- 217,
2574
- 134,
2575
- 188
2576
- ];
2577
- "accounts": [
2578
- {
2579
- "name": "glamState";
2580
- "writable": true;
2581
- },
2582
- {
2583
- "name": "glamVault";
2584
- "writable": true;
2585
- "pda": {
2586
- "seeds": [
2587
- {
2588
- "kind": "const";
2589
- "value": [
2590
- 118,
2591
- 97,
2592
- 117,
2593
- 108,
2594
- 116
2595
- ];
2596
- },
2597
- {
2598
- "kind": "account";
2599
- "path": "glamState";
2600
- }
2601
- ];
2602
- "program": {
2603
- "kind": "account";
2604
- "path": "glamProtocolProgram";
2605
- };
2606
- };
2607
- },
2608
- {
2609
- "name": "glamSigner";
2610
- "writable": true;
2611
- "signer": true;
2612
- },
2613
- {
2614
- "name": "integrationAuthority";
2615
- "pda": {
2616
- "seeds": [
2617
- {
2618
- "kind": "const";
2619
- "value": [
2620
- 105,
2621
- 110,
2622
- 116,
2623
- 101,
2624
- 103,
2625
- 114,
2626
- 97,
2627
- 116,
2628
- 105,
2629
- 111,
2630
- 110,
2631
- 45,
2632
- 97,
2633
- 117,
2634
- 116,
2635
- 104,
2636
- 111,
2637
- 114,
2638
- 105,
2639
- 116,
2640
- 121
2641
- ];
2642
- }
2643
- ];
2644
- };
2645
- },
2646
- {
2647
- "name": "cpiProgram";
2648
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
2649
- },
2650
- {
2651
- "name": "glamProtocolProgram";
2652
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
2653
- },
2654
- {
2655
- "name": "systemProgram";
2656
- "address": "11111111111111111111111111111111";
2657
- },
2658
- {
2659
- "name": "bsAuth";
2660
- "signer": true;
2661
- },
2662
- {
2663
- "name": "strategy";
2664
- "writable": true;
2665
- },
2666
- {
2667
- "name": "principalMint";
2668
- },
2669
- {
2670
- "name": "marketInformation";
2671
- },
2672
- {
2673
- "name": "lenderTa";
2674
- "writable": true;
2675
- },
2676
- {
2677
- "name": "strategyTa";
2678
- "writable": true;
2679
- },
2680
- {
2681
- "name": "associatedTokenProgram";
2682
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
2683
- },
2684
- {
2685
- "name": "tokenProgram";
2686
- },
2687
- {
2688
- "name": "protocolAdminState";
2689
- },
2690
- {
2691
- "name": "eventAuthority";
2692
- }
2693
- ];
2694
- "args": [
2695
- {
2696
- "name": "amount";
2697
- "type": "u64";
2698
- },
2699
- {
2700
- "name": "withdrawAll";
2701
- "type": "bool";
2702
- }
2703
- ];
2704
- },
2705
- {
2706
- "name": "withdrawUserVault";
2707
- "docs": [
2708
- "Withdraw principal from a Loopscale user vault by burning Token-2022 LP tokens.",
2709
- "",
2710
- "- Permission: `VaultPermissions::WithdrawUserVault`.",
2711
- "- Policy: `vault` must be present in `VaultPolicy::vault_allowlist`."
2712
- ];
2713
- "discriminator": [
2714
- 9,
2715
- 80,
2716
- 134,
2717
- 138,
2718
- 212,
2719
- 20,
2720
- 61,
2721
- 42
2722
- ];
2723
- "accounts": [
2724
- {
2725
- "name": "glamState";
2726
- "writable": true;
2727
- },
2728
- {
2729
- "name": "glamVault";
2730
- "writable": true;
2731
- "pda": {
2732
- "seeds": [
2733
- {
2734
- "kind": "const";
2735
- "value": [
2736
- 118,
2737
- 97,
2738
- 117,
2739
- 108,
2740
- 116
2741
- ];
2742
- },
2743
- {
2744
- "kind": "account";
2745
- "path": "glamState";
2746
- }
2747
- ];
2748
- "program": {
2749
- "kind": "account";
2750
- "path": "glamProtocolProgram";
2751
- };
2752
- };
2753
- },
2754
- {
2755
- "name": "glamSigner";
2756
- "writable": true;
2757
- "signer": true;
2758
- },
2759
- {
2760
- "name": "integrationAuthority";
2761
- "pda": {
2762
- "seeds": [
2763
- {
2764
- "kind": "const";
2765
- "value": [
2766
- 105,
2767
- 110,
2768
- 116,
2769
- 101,
2770
- 103,
2771
- 114,
2772
- 97,
2773
- 116,
2774
- 105,
2775
- 111,
2776
- 110,
2777
- 45,
2778
- 97,
2779
- 117,
2780
- 116,
2781
- 104,
2782
- 111,
2783
- 114,
2784
- 105,
2785
- 116,
2786
- 121
2787
- ];
2788
- }
2789
- ];
2790
- };
2791
- },
2792
- {
2793
- "name": "cpiProgram";
2794
- "address": "1oopBoJG58DgkUVKkEzKgyG9dvRmpgeEm1AVjoHkF78";
2795
- },
2796
- {
2797
- "name": "glamProtocolProgram";
2798
- "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz";
2799
- },
2800
- {
2801
- "name": "systemProgram";
2802
- "address": "11111111111111111111111111111111";
2803
- },
2804
- {
2805
- "name": "bsAuth";
2806
- "signer": true;
2807
- },
2808
- {
2809
- "name": "vault";
2810
- "writable": true;
2811
- },
2812
- {
2813
- "name": "strategy";
2814
- "writable": true;
2815
- },
2816
- {
2817
- "name": "marketInformation";
2818
- },
2819
- {
2820
- "name": "lpMint";
2821
- "writable": true;
2822
- },
2823
- {
2824
- "name": "userLpTa";
2825
- "writable": true;
2826
- },
2827
- {
2828
- "name": "userPrincipalTa";
2829
- "writable": true;
2830
- },
2831
- {
2832
- "name": "strategyPrincipalTa";
2833
- "writable": true;
2834
- },
2835
- {
2836
- "name": "principalMint";
2837
- },
2838
- {
2839
- "name": "principalTokenProgram";
2840
- },
2841
- {
2842
- "name": "token2022Program";
2843
- "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb";
2844
- },
2845
- {
2846
- "name": "associatedTokenProgram";
2847
- "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
2848
- },
2849
- {
2850
- "name": "protocolAdminState";
2851
- },
2852
- {
2853
- "name": "eventAuthority";
2854
- }
2855
- ];
2856
- "args": [
2857
- {
2858
- "name": "params";
2859
- "type": {
2860
- "defined": {
2861
- "name": "lpParams";
2862
- };
2863
- };
2864
- }
2865
- ];
2866
- }
2867
- ];
2868
- "accounts": [
2869
- {
2870
- "name": "stateAccount";
2871
- "discriminator": [
2872
- 142,
2873
- 247,
2874
- 54,
2875
- 95,
2876
- 85,
2877
- 133,
2878
- 249,
2879
- 103
2880
- ];
2881
- }
2882
- ];
2883
- "errors": [
2884
- {
2885
- "code": 6000;
2886
- "name": "autoCloseLoanNotSupported";
2887
- "msg": "Auto-close loan not supported";
2888
- },
2889
- {
2890
- "code": 6001;
2891
- "name": "invalidVaultTokenAccount";
2892
- "msg": "Vault token account must be the GLAM vault ATA for the expected mint";
2893
- }
2894
- ];
2895
- "types": [
2896
- {
2897
- "name": "accountType";
2898
- "type": {
2899
- "kind": "enum";
2900
- "variants": [
2901
- {
2902
- "name": "vault";
2903
- },
2904
- {
2905
- "name": "tokenizedVault";
2906
- },
2907
- {
2908
- "name": "mint";
2909
- },
2910
- {
2911
- "name": "singleAssetVault";
2912
- }
2913
- ];
2914
- };
2915
- },
2916
- {
2917
- "name": "accruedFees";
2918
- "type": {
2919
- "kind": "struct";
2920
- "fields": [
2921
- {
2922
- "name": "vaultSubscriptionFee";
2923
- "type": "u128";
2924
- },
2925
- {
2926
- "name": "vaultRedemptionFee";
2927
- "type": "u128";
2928
- },
2929
- {
2930
- "name": "managerSubscriptionFee";
2931
- "type": "u128";
2932
- },
2933
- {
2934
- "name": "managerRedemptionFee";
2935
- "type": "u128";
2936
- },
2937
- {
2938
- "name": "managementFee";
2939
- "type": "u128";
2940
- },
2941
- {
2942
- "name": "performanceFee";
2943
- "type": "u128";
2944
- },
2945
- {
2946
- "name": "protocolBaseFee";
2947
- "type": "u128";
2948
- },
2949
- {
2950
- "name": "protocolFlowFee";
2951
- "type": "u128";
2952
- }
2953
- ];
2954
- };
2955
- },
2956
- {
2957
- "name": "borrowMarketPolicy";
2958
- "type": {
2959
- "kind": "struct";
2960
- "fields": [
2961
- {
2962
- "name": "market";
2963
- "docs": [
2964
- "Loopscale market information account this policy applies to."
2965
- ];
2966
- "type": "pubkey";
2967
- },
2968
- {
2969
- "name": "maxBorrowAmount";
2970
- "docs": [
2971
- "Maximum principal amount that may be borrowed in a single instruction.",
2972
- "A value of zero means no per-instruction borrow is allowed for this market."
2973
- ];
2974
- "type": "u64";
2975
- },
2976
- {
2977
- "name": "maxTotalBorrowAmount";
2978
- "docs": [
2979
- "Maximum outstanding principal a single loan may owe in this market.",
2980
- "Enforced per loan (summed over that loan's ledgers in this market), not",
2981
- "aggregated across all of the vault's loans in this market. A value of zero",
2982
- "means no outstanding borrow exposure is allowed for this market."
2983
- ];
2984
- "type": "u64";
2985
- },
2986
- {
2987
- "name": "maxLtvBps";
2988
- "docs": [
2989
- "Maximum expected liquidation LTV threshold, in basis points.",
2990
- "Borrow enforcement compares this to Loopscale's expected LQT values.",
2991
- "A value of zero means no expected liquidation LTV is allowed for this market."
2992
- ];
2993
- "type": "u16";
2994
- },
2995
- {
2996
- "name": "durationIndexesAllowlist";
2997
- "docs": [
2998
- "Duration indexes that may be used when borrowing from this market.",
2999
- "An empty list denies all borrow durations for this market. Index mapping:",
3000
- "- 0 = 1 day",
3001
- "- 1 = 1 week",
3002
- "- 2 = 1 month",
3003
- "- 3 = 3 months",
3004
- "- 4 = 1 year"
3005
- ];
3006
- "type": "bytes";
3007
- }
3008
- ];
3009
- };
3010
- },
3011
- {
3012
- "name": "borrowPolicy";
3013
- "type": {
3014
- "kind": "struct";
3015
- "fields": [
3016
- {
3017
- "name": "collateralAllowlist";
3018
- "docs": [
3019
- "Collateral mints that may be deposited into Loopscale borrow loans."
3020
- ];
3021
- "type": {
3022
- "vec": "pubkey";
3023
- };
3024
- },
3025
- {
3026
- "name": "principalAllowlist";
3027
- "docs": [
3028
- "Principal mints that may be borrowed from Loopscale borrow markets.",
3029
- "An empty list denies all principal borrows."
3030
- ];
3031
- "type": {
3032
- "vec": "pubkey";
3033
- };
3034
- },
3035
- {
3036
- "name": "marketPolicies";
3037
- "docs": [
3038
- "Optional per-market risk limits for borrow operations.",
3039
- "If a market is present here, advanced per-market limits are enforced.",
3040
- "If absent, borrow operations are governed by the top-level allowlists."
3041
- ];
3042
- "type": {
3043
- "vec": {
3044
- "defined": {
3045
- "name": "borrowMarketPolicy";
3046
- };
3047
- };
3048
- };
3049
- }
3050
- ];
3051
- };
3052
- },
3053
- {
3054
- "name": "borrowPrincipalParams";
3055
- "type": {
3056
- "kind": "struct";
3057
- "fields": [
3058
- {
3059
- "name": "amount";
3060
- "type": "u64";
3061
- },
3062
- {
3063
- "name": "assetIndexGuidance";
3064
- "type": "bytes";
3065
- },
3066
- {
3067
- "name": "duration";
3068
- "type": "u8";
3069
- },
3070
- {
3071
- "name": "expectedLoanValues";
3072
- "type": {
3073
- "defined": {
3074
- "name": "expectedLoanValues";
3075
- };
3076
- };
3077
- },
3078
- {
3079
- "name": "skipSolUnwrap";
3080
- "type": "bool";
3081
- }
3082
- ];
3083
- };
3084
- },
3085
- {
3086
- "name": "collateralTermsIndices";
3087
- "type": {
3088
- "kind": "struct";
3089
- "fields": [
3090
- {
3091
- "name": "collateralIndex";
3092
- "type": "u8";
3093
- },
3094
- {
3095
- "name": "durationIndex";
3096
- "type": "u8";
3097
- }
3098
- ];
3099
- };
3100
- },
3101
- {
3102
- "name": "createLoanParams";
3103
- "type": {
3104
- "kind": "struct";
3105
- "fields": [
3106
- {
3107
- "name": "nonce";
3108
- "type": "u64";
3109
- }
3110
- ];
3111
- };
3112
- },
3113
- {
3114
- "name": "createStrategyParams";
3115
- "type": {
3116
- "kind": "struct";
3117
- "fields": [
3118
- {
3119
- "name": "lender";
3120
- "type": "pubkey";
3121
- },
3122
- {
3123
- "name": "originationCap";
3124
- "type": "u64";
3125
- },
3126
- {
3127
- "name": "liquidityBuffer";
3128
- "type": "u64";
3129
- },
3130
- {
3131
- "name": "interestFee";
3132
- "type": "u64";
3133
- },
3134
- {
3135
- "name": "originationFee";
3136
- "type": "u64";
3137
- },
3138
- {
3139
- "name": "principalFee";
3140
- "type": "u64";
3141
- },
3142
- {
3143
- "name": "originationsEnabled";
3144
- "type": "bool";
3145
- },
3146
- {
3147
- "name": "externalYieldSourceArgs";
3148
- "type": {
3149
- "option": {
3150
- "defined": {
3151
- "name": "externalYieldSourceArgs";
3152
- };
3153
- };
3154
- };
3155
- }
3156
- ];
3157
- };
3158
- },
3159
- {
3160
- "name": "createdModel";
3161
- "type": {
3162
- "kind": "struct";
3163
- "fields": [
3164
- {
3165
- "name": "key";
3166
- "type": {
3167
- "array": [
3168
- "u8",
3169
- 8
3170
- ];
3171
- };
3172
- },
3173
- {
3174
- "name": "createdBy";
3175
- "type": "pubkey";
3176
- },
3177
- {
3178
- "name": "createdAt";
3179
- "type": "i64";
3180
- }
3181
- ];
3182
- };
3183
- },
3184
- {
3185
- "name": "delegateAcl";
3186
- "type": {
3187
- "kind": "struct";
3188
- "fields": [
3189
- {
3190
- "name": "pubkey";
3191
- "type": "pubkey";
3192
- },
3193
- {
3194
- "name": "integrationPermissions";
3195
- "type": {
3196
- "vec": {
3197
- "defined": {
3198
- "name": "integrationPermissions";
3199
- };
3200
- };
3201
- };
3202
- },
3203
- {
3204
- "name": "expiresAt";
3205
- "type": "i64";
3206
- }
3207
- ];
3208
- };
3209
- },
3210
- {
3211
- "name": "depositCollateralParams";
3212
- "type": {
3213
- "kind": "struct";
3214
- "fields": [
3215
- {
3216
- "name": "amount";
3217
- "type": "u64";
3218
- },
3219
- {
3220
- "name": "assetType";
3221
- "type": "u8";
3222
- },
3223
- {
3224
- "name": "assetIdentifier";
3225
- "type": "pubkey";
3226
- },
3227
- {
3228
- "name": "assetIndexGuidance";
3229
- "type": "bytes";
3230
- }
3231
- ];
3232
- };
3233
- },
3234
- {
3235
- "name": "engineField";
3236
- "type": {
3237
- "kind": "struct";
3238
- "fields": [
3239
- {
3240
- "name": "name";
3241
- "type": {
3242
- "defined": {
3243
- "name": "engineFieldName";
3244
- };
3245
- };
3246
- },
3247
- {
3248
- "name": "value";
3249
- "type": {
3250
- "defined": {
3251
- "name": "engineFieldValue";
3252
- };
3253
- };
3254
- }
3255
- ];
3256
- };
3257
- },
3258
- {
3259
- "name": "engineFieldName";
3260
- "type": {
3261
- "kind": "enum";
3262
- "variants": [
3263
- {
3264
- "name": "owner";
3265
- },
3266
- {
3267
- "name": "portfolioManagerName";
3268
- },
3269
- {
3270
- "name": "name";
3271
- },
3272
- {
3273
- "name": "uri";
3274
- },
3275
- {
3276
- "name": "assets";
3277
- },
3278
- {
3279
- "name": "delegateAcls";
3280
- },
3281
- {
3282
- "name": "integrationAcls";
3283
- },
3284
- {
3285
- "name": "timelockDuration";
3286
- },
3287
- {
3288
- "name": "borrowable";
3289
- },
3290
- {
3291
- "name": "defaultAccountStateFrozen";
3292
- },
3293
- {
3294
- "name": "permanentDelegate";
3295
- },
3296
- {
3297
- "name": "notifyAndSettle";
3298
- },
3299
- {
3300
- "name": "feeStructure";
3301
- },
3302
- {
3303
- "name": "feeParams";
3304
- },
3305
- {
3306
- "name": "claimableFees";
3307
- },
3308
- {
3309
- "name": "claimedFees";
3310
- },
3311
- {
3312
- "name": "oracleConfigs";
3313
- }
3314
- ];
3315
- };
3316
- },
3317
- {
3318
- "name": "engineFieldValue";
3319
- "type": {
3320
- "kind": "enum";
3321
- "variants": [
3322
- {
3323
- "name": "boolean";
3324
- "fields": [
3325
- {
3326
- "name": "val";
3327
- "type": "bool";
3328
- }
3329
- ];
3330
- },
3331
- {
3332
- "name": "u8";
3333
- "fields": [
3334
- {
3335
- "name": "val";
3336
- "type": "u8";
3337
- }
3338
- ];
3339
- },
3340
- {
3341
- "name": "u32";
3342
- "fields": [
3343
- {
3344
- "name": "val";
3345
- "type": "u32";
3346
- }
3347
- ];
3348
- },
3349
- {
3350
- "name": "u64";
3351
- "fields": [
3352
- {
3353
- "name": "val";
3354
- "type": "u64";
3355
- }
3356
- ];
3357
- },
3358
- {
3359
- "name": "string";
3360
- "fields": [
3361
- {
3362
- "name": "val";
3363
- "type": "string";
3364
- }
3365
- ];
3366
- },
3367
- {
3368
- "name": "pubkey";
3369
- "fields": [
3370
- {
3371
- "name": "val";
3372
- "type": "pubkey";
3373
- }
3374
- ];
3375
- },
3376
- {
3377
- "name": "vecPubkey";
3378
- "fields": [
3379
- {
3380
- "name": "val";
3381
- "type": {
3382
- "vec": "pubkey";
3383
- };
3384
- }
3385
- ];
3386
- },
3387
- {
3388
- "name": "vecU8";
3389
- "fields": [
3390
- {
3391
- "name": "val";
3392
- "type": "bytes";
3393
- }
3394
- ];
3395
- },
3396
- {
3397
- "name": "vecU32";
3398
- "fields": [
3399
- {
3400
- "name": "val";
3401
- "type": {
3402
- "vec": "u32";
3403
- };
3404
- }
3405
- ];
3406
- },
3407
- {
3408
- "name": "vecDelegateAcl";
3409
- "fields": [
3410
- {
3411
- "name": "val";
3412
- "type": {
3413
- "vec": {
3414
- "defined": {
3415
- "name": "delegateAcl";
3416
- };
3417
- };
3418
- };
3419
- }
3420
- ];
3421
- },
3422
- {
3423
- "name": "vecIntegrationAcl";
3424
- "fields": [
3425
- {
3426
- "name": "val";
3427
- "type": {
3428
- "vec": {
3429
- "defined": {
3430
- "name": "integrationAcl";
3431
- };
3432
- };
3433
- };
3434
- }
3435
- ];
3436
- },
3437
- {
3438
- "name": "feeStructure";
3439
- "fields": [
3440
- {
3441
- "name": "val";
3442
- "type": {
3443
- "defined": {
3444
- "name": "feeStructure";
3445
- };
3446
- };
3447
- }
3448
- ];
3449
- },
3450
- {
3451
- "name": "feeParams";
3452
- "fields": [
3453
- {
3454
- "name": "val";
3455
- "type": {
3456
- "defined": {
3457
- "name": "feeParams";
3458
- };
3459
- };
3460
- }
3461
- ];
3462
- },
3463
- {
3464
- "name": "accruedFees";
3465
- "fields": [
3466
- {
3467
- "name": "val";
3468
- "type": {
3469
- "defined": {
3470
- "name": "accruedFees";
3471
- };
3472
- };
3473
- }
3474
- ];
3475
- },
3476
- {
3477
- "name": "notifyAndSettle";
3478
- "fields": [
3479
- {
3480
- "name": "val";
3481
- "type": {
3482
- "defined": {
3483
- "name": "notifyAndSettle";
3484
- };
3485
- };
3486
- }
3487
- ];
3488
- },
3489
- {
3490
- "name": "oracleConfigs";
3491
- "fields": [
3492
- {
3493
- "name": "val";
3494
- "type": {
3495
- "defined": {
3496
- "name": "oracleConfigs";
3497
- };
3498
- };
3499
- }
3500
- ];
3501
- }
3502
- ];
3503
- };
3504
- },
3505
- {
3506
- "name": "entryExitFees";
3507
- "type": {
3508
- "kind": "struct";
3509
- "fields": [
3510
- {
3511
- "name": "subscriptionFeeBps";
3512
- "type": "u16";
3513
- },
3514
- {
3515
- "name": "redemptionFeeBps";
3516
- "type": "u16";
3517
- }
3518
- ];
3519
- };
3520
- },
3521
- {
3522
- "name": "exactInParams";
3523
- "type": {
3524
- "kind": "struct";
3525
- "fields": [
3526
- {
3527
- "name": "amountIn";
3528
- "type": "u64";
3529
- },
3530
- {
3531
- "name": "minAmountOut";
3532
- "type": "u64";
3533
- }
3534
- ];
3535
- };
3536
- },
3537
- {
3538
- "name": "exactOutParams";
3539
- "type": {
3540
- "kind": "struct";
3541
- "fields": [
3542
- {
3543
- "name": "amountOut";
3544
- "type": "u64";
3545
- },
3546
- {
3547
- "name": "maxAmountIn";
3548
- "type": "u64";
3549
- }
3550
- ];
3551
- };
3552
- },
3553
- {
3554
- "name": "expectedLoanValues";
3555
- "type": {
3556
- "kind": "struct";
3557
- "fields": [
3558
- {
3559
- "name": "expectedApy";
3560
- "type": "u64";
3561
- },
3562
- {
3563
- "name": "expectedLqt";
3564
- "type": {
3565
- "array": [
3566
- "u32",
3567
- 5
3568
- ];
3569
- };
3570
- }
3571
- ];
3572
- };
3573
- },
3574
- {
3575
- "name": "externalYieldSourceArgs";
3576
- "type": {
3577
- "kind": "struct";
3578
- "fields": [
3579
- {
3580
- "name": "newExternalYieldSource";
3581
- "type": "u8";
3582
- },
3583
- {
3584
- "name": "externalYieldVault";
3585
- "type": "pubkey";
3586
- }
3587
- ];
3588
- };
3589
- },
3590
- {
3591
- "name": "feeParams";
3592
- "type": {
3593
- "kind": "struct";
3594
- "fields": [
3595
- {
3596
- "name": "yearInSeconds";
3597
- "type": "u32";
3598
- },
3599
- {
3600
- "name": "paHighWaterMark";
3601
- "type": "i128";
3602
- },
3603
- {
3604
- "name": "paLastNav";
3605
- "type": "i128";
3606
- },
3607
- {
3608
- "name": "lastAum";
3609
- "type": "i128";
3610
- },
3611
- {
3612
- "name": "lastPerformanceFeeCrystallized";
3613
- "type": "i64";
3614
- },
3615
- {
3616
- "name": "lastManagementFeeCrystallized";
3617
- "type": "i64";
3618
- },
3619
- {
3620
- "name": "lastProtocolFeeCrystallized";
3621
- "type": "i64";
3622
- }
3623
- ];
3624
- };
3625
- },
3626
- {
3627
- "name": "feeStructure";
3628
- "type": {
3629
- "kind": "struct";
3630
- "fields": [
3631
- {
3632
- "name": "vault";
3633
- "type": {
3634
- "defined": {
3635
- "name": "entryExitFees";
3636
- };
3637
- };
3638
- },
3639
- {
3640
- "name": "manager";
3641
- "type": {
3642
- "defined": {
3643
- "name": "entryExitFees";
3644
- };
3645
- };
3646
- },
3647
- {
3648
- "name": "management";
3649
- "type": {
3650
- "defined": {
3651
- "name": "managementFee";
3652
- };
3653
- };
3654
- },
3655
- {
3656
- "name": "performance";
3657
- "type": {
3658
- "defined": {
3659
- "name": "performanceFee";
3660
- };
3661
- };
3662
- },
3663
- {
3664
- "name": "protocol";
3665
- "type": {
3666
- "defined": {
3667
- "name": "protocolFees";
3668
- };
3669
- };
3670
- }
3671
- ];
3672
- };
3673
- },
3674
- {
3675
- "name": "hurdleType";
3676
- "type": {
3677
- "kind": "enum";
3678
- "variants": [
3679
- {
3680
- "name": "hard";
3681
- },
3682
- {
3683
- "name": "soft";
3684
- }
3685
- ];
3686
- };
3687
- },
3688
- {
3689
- "name": "integrationAcl";
3690
- "docs": [
3691
- "An integration program can have multiple protocols supported.",
3692
- "Enabled protocols are stored in a bitmask, and each protocol can have its own policy."
3693
- ];
3694
- "type": {
3695
- "kind": "struct";
3696
- "fields": [
3697
- {
3698
- "name": "integrationProgram";
3699
- "type": "pubkey";
3700
- },
3701
- {
3702
- "name": "protocolsBitmask";
3703
- "type": "u16";
3704
- },
3705
- {
3706
- "name": "protocolPolicies";
3707
- "type": {
3708
- "vec": {
3709
- "defined": {
3710
- "name": "protocolPolicy";
3711
- };
3712
- };
3713
- };
3714
- }
3715
- ];
3716
- };
3717
- },
3718
- {
3719
- "name": "integrationPermissions";
3720
- "docs": [
3721
- "Stores delegate permissions for an integration program."
3722
- ];
3723
- "type": {
3724
- "kind": "struct";
3725
- "fields": [
3726
- {
3727
- "name": "integrationProgram";
3728
- "type": "pubkey";
3729
- },
3730
- {
3731
- "name": "protocolPermissions";
3732
- "type": {
3733
- "vec": {
3734
- "defined": {
3735
- "name": "protocolPermissions";
3736
- };
3737
- };
3738
- };
3739
- }
3740
- ];
3741
- };
3742
- },
3743
- {
3744
- "name": "lendingMarketPolicy";
3745
- "type": {
3746
- "kind": "struct";
3747
- "fields": [
3748
- {
3749
- "name": "market";
3750
- "docs": [
3751
- "Loopscale market information account this policy applies to."
3752
- ];
3753
- "type": "pubkey";
3754
- },
3755
- {
3756
- "name": "maxDepositAmount";
3757
- "docs": [
3758
- "Maximum principal amount that may be deposited in a single instruction.",
3759
- "A value of zero means no per-instruction deposit is allowed for this market."
3760
- ];
3761
- "type": "u64";
3762
- },
3763
- {
3764
- "name": "maxTotalDepositAmount";
3765
- "docs": [
3766
- "Maximum principal exposure (token balance + deployed amount) a single",
3767
- "strategy may hold in this market. Enforced per strategy, not aggregated",
3768
- "across all of the vault's strategies in this market. A value of zero means",
3769
- "no lending exposure is allowed for this market."
3770
- ];
3771
- "type": "u64";
3772
- },
3773
- {
3774
- "name": "minLoanApyCbps";
3775
- "docs": [
3776
- "Minimum accepted loan APY, in centibasis points, for strategy terms in this market."
3777
- ];
3778
- "type": "u32";
3779
- },
3780
- {
3781
- "name": "maxLtvBps";
3782
- "docs": [
3783
- "Maximum accepted borrower loan-to-value, in basis points, for strategy terms in this market.",
3784
- "A value of zero means no borrower LTV is allowed for this market."
3785
- ];
3786
- "type": "u16";
3787
- },
3788
- {
3789
- "name": "durationIndexesAllowlist";
3790
- "docs": [
3791
- "Duration indexes that may be offered by vault-owned strategies in this market.",
3792
- "An empty list denies all lending durations for this market. Index mapping:",
3793
- "- 0 = 1 day",
3794
- "- 1 = 1 week",
3795
- "- 2 = 1 month",
3796
- "- 3 = 3 months",
3797
- "- 4 = 1 year"
3798
- ];
3799
- "type": "bytes";
3800
- },
3801
- {
3802
- "name": "collateralAssetAllowlist";
3803
- "docs": [
3804
- "Collateral asset identifiers that vault-owned strategies may accept in this market.",
3805
- "An empty list denies all strategy collateral assets for this market."
3806
- ];
3807
- "type": {
3808
- "vec": "pubkey";
3809
- };
3810
- }
3811
- ];
3812
- };
3813
- },
3814
- {
3815
- "name": "lendingPolicy";
3816
- "type": {
3817
- "kind": "struct";
3818
- "fields": [
3819
- {
3820
- "name": "principalAllowlist";
3821
- "docs": [
3822
- "Principal mints that may be lent into Loopscale strategies.",
3823
- "An empty list denies all strategy creation, updates, deposits, and ledger sales."
3824
- ];
3825
- "type": {
3826
- "vec": "pubkey";
3827
- };
3828
- },
3829
- {
3830
- "name": "collateralAllowlist";
3831
- "docs": [
3832
- "Collateral asset identifiers that vault-owned strategies may accept.",
3833
- "An empty list denies all strategy collateral assets."
3834
- ];
3835
- "type": {
3836
- "vec": "pubkey";
3837
- };
3838
- },
3839
- {
3840
- "name": "marketPolicies";
3841
- "docs": [
3842
- "Optional per-market risk limits for strategy creation, updates, deposits, and ledger sales.",
3843
- "If a market is present here, advanced per-market limits are enforced.",
3844
- "If absent, lending operations are governed by top-level allowlists,",
3845
- "permission checks, and sell-ledger limits."
3846
- ];
3847
- "type": {
3848
- "vec": {
3849
- "defined": {
3850
- "name": "lendingMarketPolicy";
3851
- };
3852
- };
3853
- };
3854
- },
3855
- {
3856
- "name": "sellLedgerPolicy";
3857
- "docs": [
3858
- "Risk limits for selling Loopscale loan ledgers."
3859
- ];
3860
- "type": {
3861
- "defined": {
3862
- "name": "sellLedgerPolicy";
3863
- };
3864
- };
3865
- }
3866
- ];
3867
- };
3868
- },
3869
- {
3870
- "name": "lpParams";
3871
- "type": {
3872
- "kind": "enum";
3873
- "variants": [
3874
- {
3875
- "name": "exactIn";
3876
- "fields": [
3877
- {
3878
- "defined": {
3879
- "name": "exactInParams";
3880
- };
3881
- }
3882
- ];
3883
- },
3884
- {
3885
- "name": "exactOut";
3886
- "fields": [
3887
- {
3888
- "defined": {
3889
- "name": "exactOutParams";
3890
- };
3891
- }
3892
- ];
3893
- }
3894
- ];
3895
- };
3896
- },
3897
- {
3898
- "name": "managementFee";
3899
- "type": {
3900
- "kind": "struct";
3901
- "fields": [
3902
- {
3903
- "name": "feeBps";
3904
- "type": "u16";
3905
- }
3906
- ];
3907
- };
3908
- },
3909
- {
3910
- "name": "multiCollateralTermsUpdateParams";
3911
- "type": {
3912
- "kind": "struct";
3913
- "fields": [
3914
- {
3915
- "name": "apy";
3916
- "type": "u64";
3917
- },
3918
- {
3919
- "name": "indices";
3920
- "type": {
3921
- "vec": {
3922
- "defined": {
3923
- "name": "collateralTermsIndices";
3924
- };
3925
- };
3926
- };
3927
- }
3928
- ];
3929
- };
3930
- },
3931
- {
3932
- "name": "noticePeriodType";
3933
- "type": {
3934
- "kind": "enum";
3935
- "variants": [
3936
- {
3937
- "name": "hard";
3938
- },
3939
- {
3940
- "name": "soft";
3941
- }
3942
- ];
3943
- };
3944
- },
3945
- {
3946
- "name": "notifyAndSettle";
3947
- "type": {
3948
- "kind": "struct";
3949
- "fields": [
3950
- {
3951
- "name": "model";
3952
- "type": {
3953
- "defined": {
3954
- "name": "valuationModel";
3955
- };
3956
- };
3957
- },
3958
- {
3959
- "name": "permissionlessFulfillment";
3960
- "type": "bool";
3961
- },
3962
- {
3963
- "name": "subscribeNoticePeriodType";
3964
- "type": {
3965
- "defined": {
3966
- "name": "noticePeriodType";
3967
- };
3968
- };
3969
- },
3970
- {
3971
- "name": "subscribeNoticePeriod";
3972
- "type": "u64";
3973
- },
3974
- {
3975
- "name": "subscribeSettlementPeriod";
3976
- "type": "u64";
3977
- },
3978
- {
3979
- "name": "subscribeCancellationWindow";
3980
- "type": "u64";
3981
- },
3982
- {
3983
- "name": "redeemNoticePeriodType";
3984
- "type": {
3985
- "defined": {
3986
- "name": "noticePeriodType";
3987
- };
3988
- };
3989
- },
3990
- {
3991
- "name": "redeemNoticePeriod";
3992
- "type": "u64";
3993
- },
3994
- {
3995
- "name": "redeemSettlementPeriod";
3996
- "type": "u64";
3997
- },
3998
- {
3999
- "name": "redeemCancellationWindow";
4000
- "type": "u64";
4001
- },
4002
- {
4003
- "name": "timeUnit";
4004
- "type": {
4005
- "defined": {
4006
- "name": "timeUnit";
4007
- };
4008
- };
4009
- },
4010
- {
4011
- "name": "padding";
4012
- "type": {
4013
- "array": [
4014
- "u8",
4015
- 3
4016
- ];
4017
- };
4018
- }
4019
- ];
4020
- };
4021
- },
4022
- {
4023
- "name": "oracleConfigs";
4024
- "docs": [
4025
- "Vault-specific oracle configs. If available, these configs are preferred over the global config."
4026
- ];
4027
- "type": {
4028
- "kind": "struct";
4029
- "fields": [
4030
- {
4031
- "name": "maxAgesSeconds";
4032
- "type": {
4033
- "vec": {
4034
- "array": [
4035
- "u16",
4036
- 2
4037
- ];
4038
- };
4039
- };
4040
- },
4041
- {
4042
- "name": "padding";
4043
- "type": {
4044
- "array": [
4045
- "u8",
4046
- 12
4047
- ];
4048
- };
4049
- }
4050
- ];
4051
- };
4052
- },
4053
- {
4054
- "name": "performanceFee";
4055
- "type": {
4056
- "kind": "struct";
4057
- "fields": [
4058
- {
4059
- "name": "feeBps";
4060
- "type": "u16";
4061
- },
4062
- {
4063
- "name": "hurdleRateBps";
4064
- "type": "u16";
4065
- },
4066
- {
4067
- "name": "hurdleType";
4068
- "type": {
4069
- "defined": {
4070
- "name": "hurdleType";
4071
- };
4072
- };
4073
- }
4074
- ];
4075
- };
4076
- },
4077
- {
4078
- "name": "pricedProtocol";
4079
- "type": {
4080
- "kind": "struct";
4081
- "fields": [
4082
- {
4083
- "name": "rent";
4084
- "type": "u64";
4085
- },
4086
- {
4087
- "name": "amount";
4088
- "type": "i128";
4089
- },
4090
- {
4091
- "name": "decimals";
4092
- "type": "u8";
4093
- },
4094
- {
4095
- "name": "lastUpdatedSlot";
4096
- "type": "u64";
4097
- },
4098
- {
4099
- "name": "integrationProgram";
4100
- "type": "pubkey";
4101
- },
4102
- {
4103
- "name": "protocolBitflag";
4104
- "type": "u16";
4105
- },
4106
- {
4107
- "name": "positions";
4108
- "type": {
4109
- "vec": "pubkey";
4110
- };
4111
- }
4112
- ];
4113
- };
4114
- },
4115
- {
4116
- "name": "protocolFees";
4117
- "type": {
4118
- "kind": "struct";
4119
- "fields": [
4120
- {
4121
- "name": "baseFeeBps";
4122
- "type": "u16";
4123
- },
4124
- {
4125
- "name": "flowFeeBps";
4126
- "type": "u16";
4127
- }
4128
- ];
4129
- };
4130
- },
4131
- {
4132
- "name": "protocolPermissions";
4133
- "docs": [
4134
- "Represents a delegate's permissions for a specific protocol"
4135
- ];
4136
- "type": {
4137
- "kind": "struct";
4138
- "fields": [
4139
- {
4140
- "name": "protocolBitflag";
4141
- "type": "u16";
4142
- },
4143
- {
4144
- "name": "permissionsBitmask";
4145
- "type": "u64";
4146
- }
4147
- ];
4148
- };
4149
- },
4150
- {
4151
- "name": "protocolPolicy";
4152
- "docs": [
4153
- "Stores policy data for an integrated protocol.",
4154
- "Integration programs serialize/deserialize this data."
4155
- ];
4156
- "type": {
4157
- "kind": "struct";
4158
- "fields": [
4159
- {
4160
- "name": "protocolBitflag";
4161
- "type": "u16";
4162
- },
4163
- {
4164
- "name": "data";
4165
- "type": "bytes";
4166
- }
4167
- ];
4168
- };
4169
- },
4170
- {
4171
- "name": "repayPrincipalParams";
4172
- "type": {
4173
- "kind": "struct";
4174
- "fields": [
4175
- {
4176
- "name": "amount";
4177
- "type": "u64";
4178
- },
4179
- {
4180
- "name": "ledgerIndex";
4181
- "type": "u8";
4182
- },
4183
- {
4184
- "name": "repayAll";
4185
- "type": "bool";
4186
- }
4187
- ];
4188
- };
4189
- },
4190
- {
4191
- "name": "sellLedgerParams";
4192
- "type": {
4193
- "kind": "struct";
4194
- "fields": [
4195
- {
4196
- "name": "ledgerIndex";
4197
- "type": "u8";
4198
- },
4199
- {
4200
- "name": "expectedSalePrice";
4201
- "type": "u64";
4202
- },
4203
- {
4204
- "name": "assetIndexGuidance";
4205
- "type": "bytes";
4206
- }
4207
- ];
4208
- };
4209
- },
4210
- {
4211
- "name": "sellLedgerPolicy";
4212
- "type": {
4213
- "kind": "struct";
4214
- "fields": [
4215
- {
4216
- "name": "maxDiscountBps";
4217
- "docs": [
4218
- "Maximum discount from the ledger's expected value, in basis points.",
4219
- "A value of zero requires no discount."
4220
- ];
4221
- "type": "u16";
4222
- },
4223
- {
4224
- "name": "maxSlippageBps";
4225
- "docs": [
4226
- "Maximum tolerated slippage while selling a ledger, in basis points.",
4227
- "A value of zero allows no slippage."
4228
- ];
4229
- "type": "u16";
4230
- }
4231
- ];
4232
- };
4233
- },
4234
- {
4235
- "name": "stateAccount";
4236
- "type": {
4237
- "kind": "struct";
4238
- "fields": [
4239
- {
4240
- "name": "accountType";
4241
- "type": {
4242
- "defined": {
4243
- "name": "accountType";
4244
- };
4245
- };
4246
- },
4247
- {
4248
- "name": "enabled";
4249
- "type": "bool";
4250
- },
4251
- {
4252
- "name": "vault";
4253
- "type": "pubkey";
4254
- },
4255
- {
4256
- "name": "owner";
4257
- "type": "pubkey";
4258
- },
4259
- {
4260
- "name": "portfolioManagerName";
4261
- "type": {
4262
- "array": [
4263
- "u8",
4264
- 32
4265
- ];
4266
- };
4267
- },
4268
- {
4269
- "name": "created";
4270
- "type": {
4271
- "defined": {
4272
- "name": "createdModel";
4273
- };
4274
- };
4275
- },
4276
- {
4277
- "name": "baseAssetMint";
4278
- "type": "pubkey";
4279
- },
4280
- {
4281
- "name": "baseAssetDecimals";
4282
- "type": "u8";
4283
- },
4284
- {
4285
- "name": "baseAssetTokenProgram";
4286
- "type": "u8";
4287
- },
4288
- {
4289
- "name": "name";
4290
- "type": {
4291
- "array": [
4292
- "u8",
4293
- 32
4294
- ];
4295
- };
4296
- },
4297
- {
4298
- "name": "timelockDuration";
4299
- "type": "u32";
4300
- },
4301
- {
4302
- "name": "timelockExpiresAt";
4303
- "type": "u64";
4304
- },
4305
- {
4306
- "name": "mint";
4307
- "type": "pubkey";
4308
- },
4309
- {
4310
- "name": "assets";
4311
- "type": {
4312
- "vec": "pubkey";
4313
- };
4314
- },
4315
- {
4316
- "name": "integrationAcls";
4317
- "type": {
4318
- "vec": {
4319
- "defined": {
4320
- "name": "integrationAcl";
4321
- };
4322
- };
4323
- };
4324
- },
4325
- {
4326
- "name": "delegateAcls";
4327
- "type": {
4328
- "vec": {
4329
- "defined": {
4330
- "name": "delegateAcl";
4331
- };
4332
- };
4333
- };
4334
- },
4335
- {
4336
- "name": "externalPositions";
4337
- "type": {
4338
- "vec": "pubkey";
4339
- };
4340
- },
4341
- {
4342
- "name": "pricedProtocols";
4343
- "type": {
4344
- "vec": {
4345
- "defined": {
4346
- "name": "pricedProtocol";
4347
- };
4348
- };
4349
- };
4350
- },
4351
- {
4352
- "name": "params";
4353
- "type": {
4354
- "vec": {
4355
- "vec": {
4356
- "defined": {
4357
- "name": "engineField";
4358
- };
4359
- };
4360
- };
4361
- };
4362
- }
4363
- ];
4364
- };
4365
- },
4366
- {
4367
- "name": "timeUnit";
4368
- "type": {
4369
- "kind": "enum";
4370
- "variants": [
4371
- {
4372
- "name": "second";
4373
- },
4374
- {
4375
- "name": "slot";
4376
- }
4377
- ];
4378
- };
4379
- },
4380
- {
4381
- "name": "updateStrategyParams";
4382
- "type": {
4383
- "kind": "struct";
4384
- "fields": [
4385
- {
4386
- "name": "originationsEnabled";
4387
- "type": {
4388
- "option": "bool";
4389
- };
4390
- },
4391
- {
4392
- "name": "liquidityBuffer";
4393
- "type": {
4394
- "option": "u64";
4395
- };
4396
- },
4397
- {
4398
- "name": "interestFee";
4399
- "type": {
4400
- "option": "u64";
4401
- };
4402
- },
4403
- {
4404
- "name": "originationFee";
4405
- "type": {
4406
- "option": "u64";
4407
- };
4408
- },
4409
- {
4410
- "name": "principalFee";
4411
- "type": {
4412
- "option": "u64";
4413
- };
4414
- },
4415
- {
4416
- "name": "originationCap";
4417
- "type": {
4418
- "option": "u64";
4419
- };
4420
- },
4421
- {
4422
- "name": "marketInformation";
4423
- "type": {
4424
- "option": "pubkey";
4425
- };
4426
- },
4427
- {
4428
- "name": "externalYieldSourceArgs";
4429
- "type": {
4430
- "option": {
4431
- "defined": {
4432
- "name": "externalYieldSourceArgs";
4433
- };
4434
- };
4435
- };
4436
- }
4437
- ];
4438
- };
4439
- },
4440
- {
4441
- "name": "updateWeightMatrixParams";
4442
- "type": {
4443
- "kind": "struct";
4444
- "fields": [
4445
- {
4446
- "name": "collateralIndex";
4447
- "type": "u8";
4448
- },
4449
- {
4450
- "name": "weightMatrix";
4451
- "type": {
4452
- "array": [
4453
- "u32",
4454
- 5
4455
- ];
4456
- };
4457
- },
4458
- {
4459
- "name": "expectedLoanValues";
4460
- "type": {
4461
- "defined": {
4462
- "name": "expectedLoanValues";
4463
- };
4464
- };
4465
- },
4466
- {
4467
- "name": "assetIndexGuidance";
4468
- "type": "bytes";
4469
- }
4470
- ];
4471
- };
4472
- },
4473
- {
4474
- "name": "valuationModel";
4475
- "type": {
4476
- "kind": "enum";
4477
- "variants": [
4478
- {
4479
- "name": "continuous";
4480
- },
4481
- {
4482
- "name": "periodic";
4483
- }
4484
- ];
4485
- };
4486
- },
4487
- {
4488
- "name": "vaultPolicy";
4489
- "type": {
4490
- "kind": "struct";
4491
- "fields": [
4492
- {
4493
- "name": "vaultAllowlist";
4494
- "docs": [
4495
- "Loopscale user vault accounts that may be used by the GLAM vault.",
4496
- "An empty list denies all Loopscale user vault operations."
4497
- ];
4498
- "type": {
4499
- "vec": "pubkey";
4500
- };
4501
- }
4502
- ];
4503
- };
4504
- },
4505
- {
4506
- "name": "vaultStakeParams";
4507
- "type": {
4508
- "kind": "struct";
4509
- "fields": [
4510
- {
4511
- "name": "amount";
4512
- "type": "u64";
4513
- },
4514
- {
4515
- "name": "principalAmount";
4516
- "type": "u64";
4517
- },
4518
- {
4519
- "name": "stakeAll";
4520
- "type": {
4521
- "option": "bool";
4522
- };
4523
- },
4524
- {
4525
- "name": "duration";
4526
- "type": "u32";
4527
- },
4528
- {
4529
- "name": "durationType";
4530
- "type": "u8";
4531
- },
4532
- {
4533
- "name": "actionType";
4534
- "type": "u8";
4535
- }
4536
- ];
4537
- };
4538
- },
4539
- {
4540
- "name": "vaultUnstakeParams";
4541
- "type": {
4542
- "kind": "struct";
4543
- "fields": [
4544
- {
4545
- "name": "actionType";
4546
- "type": "u8";
4547
- },
4548
- {
4549
- "name": "principalAmount";
4550
- "type": "u64";
4551
- }
4552
- ];
4553
- };
4554
- },
4555
- {
4556
- "name": "withdrawCollateralParams";
4557
- "type": {
4558
- "kind": "struct";
4559
- "fields": [
4560
- {
4561
- "name": "amount";
4562
- "type": "u64";
4563
- },
4564
- {
4565
- "name": "collateralIndex";
4566
- "type": "u8";
4567
- },
4568
- {
4569
- "name": "assetIndexGuidance";
4570
- "type": "bytes";
4571
- },
4572
- {
4573
- "name": "expectedLoanValues";
4574
- "type": {
4575
- "defined": {
4576
- "name": "expectedLoanValues";
4577
- };
4578
- };
4579
- },
4580
- {
4581
- "name": "closeIfEligible";
4582
- "type": "bool";
4583
- },
4584
- {
4585
- "name": "withdrawAll";
4586
- "type": "bool";
4587
- }
4588
- ];
4589
- };
4590
- }
4591
- ];
4592
- "constants": [
4593
- {
4594
- "name": "protoLoopscaleBorrow";
4595
- "type": "u16";
4596
- "value": "1";
4597
- },
4598
- {
4599
- "name": "protoLoopscaleBorrowPermBorrowPrincipal";
4600
- "type": "u64";
4601
- "value": "32";
4602
- },
4603
- {
4604
- "name": "protoLoopscaleBorrowPermCloseLoan";
4605
- "type": "u64";
4606
- "value": "2";
4607
- },
4608
- {
4609
- "name": "protoLoopscaleBorrowPermCreateLoan";
4610
- "type": "u64";
4611
- "value": "1";
4612
- },
4613
- {
4614
- "name": "protoLoopscaleBorrowPermDepositCollateral";
4615
- "type": "u64";
4616
- "value": "8";
4617
- },
4618
- {
4619
- "name": "protoLoopscaleBorrowPermRepayPrincipal";
4620
- "type": "u64";
4621
- "value": "64";
4622
- },
4623
- {
4624
- "name": "protoLoopscaleBorrowPermSetPolicy";
4625
- "type": "u64";
4626
- "value": "128";
4627
- },
4628
- {
4629
- "name": "protoLoopscaleBorrowPermUpdateLoan";
4630
- "type": "u64";
4631
- "value": "4";
4632
- },
4633
- {
4634
- "name": "protoLoopscaleBorrowPermWithdrawCollateral";
4635
- "type": "u64";
4636
- "value": "16";
4637
- },
4638
- {
4639
- "name": "protoLoopscaleLending";
4640
- "type": "u16";
4641
- "value": "2";
4642
- },
4643
- {
4644
- "name": "protoLoopscaleLendingPermCloseStrategy";
4645
- "type": "u64";
4646
- "value": "16";
4647
- },
4648
- {
4649
- "name": "protoLoopscaleLendingPermCreateStrategy";
4650
- "type": "u64";
4651
- "value": "1";
4652
- },
4653
- {
4654
- "name": "protoLoopscaleLendingPermDepositStrategy";
4655
- "type": "u64";
4656
- "value": "4";
4657
- },
4658
- {
4659
- "name": "protoLoopscaleLendingPermSellLedger";
4660
- "type": "u64";
4661
- "value": "32";
4662
- },
4663
- {
4664
- "name": "protoLoopscaleLendingPermSetPolicy";
4665
- "type": "u64";
4666
- "value": "64";
4667
- },
4668
- {
4669
- "name": "protoLoopscaleLendingPermUpdateStrategy";
4670
- "type": "u64";
4671
- "value": "2";
4672
- },
4673
- {
4674
- "name": "protoLoopscaleLendingPermWithdrawStrategy";
4675
- "type": "u64";
4676
- "value": "8";
4677
- },
4678
- {
4679
- "name": "protoLoopscaleVault";
4680
- "type": "u16";
4681
- "value": "4";
4682
- },
4683
- {
4684
- "name": "protoLoopscaleVaultPermClaimVaultRewards";
4685
- "type": "u64";
4686
- "value": "16";
4687
- },
4688
- {
4689
- "name": "protoLoopscaleVaultPermDepositUserVault";
4690
- "type": "u64";
4691
- "value": "1";
4692
- },
4693
- {
4694
- "name": "protoLoopscaleVaultPermSetPolicy";
4695
- "type": "u64";
4696
- "value": "32";
4697
- },
4698
- {
4699
- "name": "protoLoopscaleVaultPermStakeUserVaultLp";
4700
- "type": "u64";
4701
- "value": "4";
4702
- },
4703
- {
4704
- "name": "protoLoopscaleVaultPermUnstakeUserVaultLp";
4705
- "type": "u64";
4706
- "value": "8";
4707
- },
4708
- {
4709
- "name": "protoLoopscaleVaultPermWithdrawUserVault";
4710
- "type": "u64";
4711
- "value": "2";
4712
- }
4713
- ];
4714
- };