@exponent-labs/meteora-idl 0.0.3

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meteora_vault.js","sourceRoot":"","sources":["../src/meteora_vault.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,491 @@
1
+ {
2
+ "version": "0.7.2",
3
+ "name": "vault",
4
+ "docs": ["Program for vault"],
5
+ "instructions": [
6
+ {
7
+ "name": "initialize",
8
+ "docs": ["initialize new vault"],
9
+ "accounts": [
10
+ {
11
+ "name": "vault",
12
+ "isMut": true,
13
+ "isSigner": false,
14
+ "docs": [
15
+ "This is base account for all vault",
16
+ "No need base key now because we only allow 1 vault per token now",
17
+ "Vault account"
18
+ ]
19
+ },
20
+ { "name": "payer", "isMut": true, "isSigner": true, "docs": ["Payer can be anyone"] },
21
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["Token vault account"] },
22
+ { "name": "tokenMint", "isMut": false, "isSigner": false, "docs": ["Token mint account"] },
23
+ { "name": "lpMint", "isMut": true, "isSigner": false },
24
+ { "name": "rent", "isMut": false, "isSigner": false, "docs": ["rent"] },
25
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] },
26
+ { "name": "systemProgram", "isMut": false, "isSigner": false, "docs": ["system_program"] }
27
+ ],
28
+ "args": []
29
+ },
30
+ {
31
+ "name": "enableVault",
32
+ "docs": ["enable vault"],
33
+ "accounts": [
34
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["Vault account"] },
35
+ { "name": "admin", "isMut": false, "isSigner": true, "docs": ["Admin account"] }
36
+ ],
37
+ "args": [{ "name": "enabled", "type": "u8" }]
38
+ },
39
+ {
40
+ "name": "setOperator",
41
+ "docs": ["set new operator"],
42
+ "accounts": [
43
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["Vault account"] },
44
+ { "name": "operator", "isMut": false, "isSigner": false },
45
+ { "name": "admin", "isMut": false, "isSigner": true, "docs": ["admin"] }
46
+ ],
47
+ "args": []
48
+ },
49
+ {
50
+ "name": "initializeStrategy",
51
+ "docs": ["Initialize a strategy and add strategy to vault.strategies index"],
52
+ "accounts": [
53
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["Vault account"] },
54
+ { "name": "strategyProgram", "isMut": false, "isSigner": false },
55
+ { "name": "strategy", "isMut": true, "isSigner": false, "docs": ["Strategy account"] },
56
+ { "name": "reserve", "isMut": true, "isSigner": false },
57
+ { "name": "collateralVault", "isMut": true, "isSigner": false, "docs": ["Collateral vault account"] },
58
+ { "name": "collateralMint", "isMut": false, "isSigner": false, "docs": ["Collateral mint account"] },
59
+ { "name": "admin", "isMut": true, "isSigner": true, "docs": ["Admin account"] },
60
+ { "name": "systemProgram", "isMut": false, "isSigner": false, "docs": ["System program account"] },
61
+ { "name": "rent", "isMut": false, "isSigner": false, "docs": ["Rent account"] },
62
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["Token program account"] }
63
+ ],
64
+ "args": [
65
+ { "name": "bumps", "type": { "defined": "StrategyBumps" } },
66
+ { "name": "strategyType", "type": { "defined": "StrategyType" } }
67
+ ]
68
+ },
69
+ {
70
+ "name": "removeStrategy",
71
+ "docs": ["remove a strategy"],
72
+ "accounts": [
73
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["Vault account"] },
74
+ { "name": "strategy", "isMut": true, "isSigner": false, "docs": ["Strategy account"] },
75
+ { "name": "strategyProgram", "isMut": false, "isSigner": false },
76
+ { "name": "collateralVault", "isMut": true, "isSigner": false, "docs": ["Collateral vault account"] },
77
+ { "name": "reserve", "isMut": true, "isSigner": false },
78
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
79
+ { "name": "feeVault", "isMut": true, "isSigner": false, "docs": ["fee_vault"] },
80
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
81
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] },
82
+ { "name": "admin", "isMut": false, "isSigner": true, "docs": ["admin"] }
83
+ ],
84
+ "args": []
85
+ },
86
+ {
87
+ "name": "removeStrategy2",
88
+ "docs": ["remove a strategy by advance payment"],
89
+ "accounts": [
90
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["Vault account"] },
91
+ { "name": "strategy", "isMut": true, "isSigner": false, "docs": ["Strategy account"] },
92
+ { "name": "strategyProgram", "isMut": false, "isSigner": false },
93
+ { "name": "collateralVault", "isMut": true, "isSigner": false, "docs": ["Collateral vault account"] },
94
+ { "name": "reserve", "isMut": true, "isSigner": false },
95
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
96
+ {
97
+ "name": "tokenAdminAdvancePayment",
98
+ "isMut": true,
99
+ "isSigner": false,
100
+ "docs": ["token_advance_payemnt", "the owner of token_advance_payment must be admin"]
101
+ },
102
+ {
103
+ "name": "tokenVaultAdvancePayment",
104
+ "isMut": true,
105
+ "isSigner": false,
106
+ "docs": [
107
+ "token_vault_advance_payment",
108
+ "the account must be different from token_vault",
109
+ "the owner of token_advance_payment must be vault"
110
+ ]
111
+ },
112
+ { "name": "feeVault", "isMut": true, "isSigner": false, "docs": ["fee_vault"] },
113
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
114
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] },
115
+ { "name": "admin", "isMut": false, "isSigner": true, "docs": ["admin"] }
116
+ ],
117
+ "args": [{ "name": "maxAdminPayAmount", "type": "u64" }]
118
+ },
119
+ {
120
+ "name": "collectDust",
121
+ "docs": ["collect token, that someone send wrongly", "also help in case Mango reimbursement"],
122
+ "accounts": [
123
+ { "name": "vault", "isMut": false, "isSigner": false, "docs": ["vault"] },
124
+ {
125
+ "name": "tokenVault",
126
+ "isMut": true,
127
+ "isSigner": false,
128
+ "docs": ["Token vault, must be different from vault.token_vault"]
129
+ },
130
+ {
131
+ "name": "tokenAdmin",
132
+ "isMut": true,
133
+ "isSigner": false,
134
+ "docs": ["token admin, enforce owner is admin to avoid mistake"]
135
+ },
136
+ { "name": "admin", "isMut": false, "isSigner": true, "docs": ["admin"] },
137
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] }
138
+ ],
139
+ "args": []
140
+ },
141
+ {
142
+ "name": "addStrategy",
143
+ "docs": ["add a strategy"],
144
+ "accounts": [
145
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["vault"] },
146
+ { "name": "strategy", "isMut": false, "isSigner": false, "docs": ["strategy"] },
147
+ { "name": "admin", "isMut": false, "isSigner": true, "docs": ["admin"] }
148
+ ],
149
+ "args": []
150
+ },
151
+ {
152
+ "name": "depositStrategy",
153
+ "docs": ["deposit liquidity to a strategy"],
154
+ "accounts": [
155
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["vault"] },
156
+ { "name": "strategy", "isMut": true, "isSigner": false, "docs": ["strategy"] },
157
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
158
+ { "name": "feeVault", "isMut": true, "isSigner": false, "docs": ["fee_vault"] },
159
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
160
+ { "name": "strategyProgram", "isMut": false, "isSigner": false },
161
+ { "name": "collateralVault", "isMut": true, "isSigner": false, "docs": ["collateral_vault"] },
162
+ { "name": "reserve", "isMut": true, "isSigner": false },
163
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] },
164
+ { "name": "operator", "isMut": false, "isSigner": true, "docs": ["operator"] }
165
+ ],
166
+ "args": [{ "name": "amount", "type": "u64" }]
167
+ },
168
+ {
169
+ "name": "withdrawStrategy",
170
+ "docs": ["withdraw liquidity from a strategy"],
171
+ "accounts": [
172
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["vault"] },
173
+ { "name": "strategy", "isMut": true, "isSigner": false, "docs": ["strategy"] },
174
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
175
+ { "name": "feeVault", "isMut": true, "isSigner": false, "docs": ["fee_vault"] },
176
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
177
+ { "name": "strategyProgram", "isMut": false, "isSigner": false },
178
+ { "name": "collateralVault", "isMut": true, "isSigner": false, "docs": ["collateral_vault"] },
179
+ { "name": "reserve", "isMut": true, "isSigner": false },
180
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] },
181
+ { "name": "operator", "isMut": false, "isSigner": true, "docs": ["operator"] }
182
+ ],
183
+ "args": [{ "name": "amount", "type": "u64" }]
184
+ },
185
+ {
186
+ "name": "withdraw2",
187
+ "docs": [
188
+ "Withdraw v2. Withdraw from token vault if no remaining accounts are available. Else, it will attempt to withdraw from strategy and token vault. This method just proxy between 2 methods. Protocol integration should be using withdraw instead of this function."
189
+ ],
190
+ "accounts": [
191
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["vault"] },
192
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
193
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
194
+ { "name": "userToken", "isMut": true, "isSigner": false, "docs": ["user_token"] },
195
+ { "name": "userLp", "isMut": true, "isSigner": false, "docs": ["user_lp"] },
196
+ { "name": "user", "isMut": false, "isSigner": true, "docs": ["user"] },
197
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] }
198
+ ],
199
+ "args": [
200
+ { "name": "unmintAmount", "type": "u64" },
201
+ { "name": "minOutAmount", "type": "u64" }
202
+ ]
203
+ },
204
+ {
205
+ "name": "deposit",
206
+ "docs": ["user deposit liquidity to vault"],
207
+ "accounts": [
208
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["vault"] },
209
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
210
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
211
+ { "name": "userToken", "isMut": true, "isSigner": false, "docs": ["user_token"] },
212
+ { "name": "userLp", "isMut": true, "isSigner": false, "docs": ["user_lp"] },
213
+ { "name": "user", "isMut": false, "isSigner": true, "docs": ["user"] },
214
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] }
215
+ ],
216
+ "args": [
217
+ { "name": "tokenAmount", "type": "u64" },
218
+ { "name": "minimumLpTokenAmount", "type": "u64" }
219
+ ]
220
+ },
221
+ {
222
+ "name": "withdraw",
223
+ "docs": ["user withdraw liquidity from vault"],
224
+ "accounts": [
225
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["vault"] },
226
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
227
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
228
+ { "name": "userToken", "isMut": true, "isSigner": false, "docs": ["user_token"] },
229
+ { "name": "userLp", "isMut": true, "isSigner": false, "docs": ["user_lp"] },
230
+ { "name": "user", "isMut": false, "isSigner": true, "docs": ["user"] },
231
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] }
232
+ ],
233
+ "args": [
234
+ { "name": "unmintAmount", "type": "u64" },
235
+ { "name": "minOutAmount", "type": "u64" }
236
+ ]
237
+ },
238
+ {
239
+ "name": "withdrawDirectlyFromStrategy",
240
+ "docs": [
241
+ "user withdraw liquidity from vault, if vault reserve doesn't have enough liquidity, it will withdraw from the strategy firstly"
242
+ ],
243
+ "accounts": [
244
+ { "name": "vault", "isMut": true, "isSigner": false, "docs": ["vault"] },
245
+ { "name": "strategy", "isMut": true, "isSigner": false, "docs": ["strategy"] },
246
+ { "name": "reserve", "isMut": true, "isSigner": false },
247
+ { "name": "strategyProgram", "isMut": false, "isSigner": false },
248
+ { "name": "collateralVault", "isMut": true, "isSigner": false, "docs": ["collateral_vault"] },
249
+ { "name": "tokenVault", "isMut": true, "isSigner": false, "docs": ["token_vault"] },
250
+ { "name": "lpMint", "isMut": true, "isSigner": false, "docs": ["lp_mint"] },
251
+ { "name": "feeVault", "isMut": true, "isSigner": false, "docs": ["fee_vault"] },
252
+ { "name": "userToken", "isMut": true, "isSigner": false, "docs": ["user_token"] },
253
+ { "name": "userLp", "isMut": true, "isSigner": false, "docs": ["user_lp"] },
254
+ { "name": "user", "isMut": false, "isSigner": true, "docs": ["user"] },
255
+ { "name": "tokenProgram", "isMut": false, "isSigner": false, "docs": ["token_program"] }
256
+ ],
257
+ "args": [
258
+ { "name": "unmintAmount", "type": "u64" },
259
+ { "name": "minOutAmount", "type": "u64" }
260
+ ]
261
+ }
262
+ ],
263
+ "accounts": [
264
+ {
265
+ "name": "Vault",
266
+ "docs": ["Vault struct"],
267
+ "type": {
268
+ "kind": "struct",
269
+ "fields": [
270
+ {
271
+ "name": "enabled",
272
+ "docs": [
273
+ "The flag, if admin set enable = false, then the user can only withdraw and cannot deposit in the vault."
274
+ ],
275
+ "type": "u8"
276
+ },
277
+ { "name": "bumps", "docs": ["Vault nonce, to create vault seeds"], "type": { "defined": "VaultBumps" } },
278
+ {
279
+ "name": "totalAmount",
280
+ "docs": [
281
+ "The total liquidity of the vault, including remaining tokens in token_vault and the liquidity in all strategies."
282
+ ],
283
+ "type": "u64"
284
+ },
285
+ { "name": "tokenVault", "docs": ["Token account, hold liquidity in vault reserve"], "type": "publicKey" },
286
+ {
287
+ "name": "feeVault",
288
+ "docs": [
289
+ "Hold lp token of vault, each time rebalance crank is called, vault calculate performance fee and mint corresponding lp token amount to fee_vault. fee_vault is owned by treasury address"
290
+ ],
291
+ "type": "publicKey"
292
+ },
293
+ { "name": "tokenMint", "docs": ["Token mint that vault supports"], "type": "publicKey" },
294
+ { "name": "lpMint", "docs": ["Lp mint of vault"], "type": "publicKey" },
295
+ {
296
+ "name": "strategies",
297
+ "docs": [
298
+ "The list of strategy addresses that vault supports, vault can support up to MAX_STRATEGY strategies at the same time."
299
+ ],
300
+ "type": { "array": ["publicKey", 30] }
301
+ },
302
+ { "name": "base", "docs": ["The base address to create vault seeds"], "type": "publicKey" },
303
+ { "name": "admin", "docs": ["Admin of vault"], "type": "publicKey" },
304
+ {
305
+ "name": "operator",
306
+ "docs": [
307
+ "Person who can send the crank. Operator can only send liquidity to strategies that admin defined, and claim reward to account of treasury address"
308
+ ],
309
+ "type": "publicKey"
310
+ },
311
+ {
312
+ "name": "lockedProfitTracker",
313
+ "docs": ["Stores information for locked profit."],
314
+ "type": { "defined": "LockedProfitTracker" }
315
+ }
316
+ ]
317
+ }
318
+ },
319
+ {
320
+ "name": "Strategy",
321
+ "docs": ["Strategy struct"],
322
+ "type": {
323
+ "kind": "struct",
324
+ "fields": [
325
+ {
326
+ "name": "reserve",
327
+ "docs": ["Lending pool address, that the strategy will deposit/withdraw balance"],
328
+ "type": "publicKey"
329
+ },
330
+ {
331
+ "name": "collateralVault",
332
+ "docs": ["The token account, that holds the collateral token"],
333
+ "type": "publicKey"
334
+ },
335
+ { "name": "strategyType", "docs": ["Specify type of strategy"], "type": { "defined": "StrategyType" } },
336
+ {
337
+ "name": "currentLiquidity",
338
+ "docs": ["The liquidity in strategy at the time vault deposit/withdraw from a lending protocol"],
339
+ "type": "u64"
340
+ },
341
+ {
342
+ "name": "bumps",
343
+ "docs": ["Hold some bumps, in case the strategy needs to use other seeds to sign a CPI call."],
344
+ "type": { "array": ["u8", 10] }
345
+ },
346
+ { "name": "vault", "docs": ["Vault address, that the strategy belongs"], "type": "publicKey" },
347
+ {
348
+ "name": "isDisable",
349
+ "docs": ["If we remove strategy by remove_strategy2 endpoint, this account will be never added again"],
350
+ "type": "u8"
351
+ }
352
+ ]
353
+ }
354
+ }
355
+ ],
356
+ "types": [
357
+ {
358
+ "name": "VaultBumps",
359
+ "docs": ["Vault bumps struct"],
360
+ "type": {
361
+ "kind": "struct",
362
+ "fields": [
363
+ { "name": "vaultBump", "docs": ["vault_bump"], "type": "u8" },
364
+ { "name": "tokenVaultBump", "docs": ["token_vault_bump"], "type": "u8" }
365
+ ]
366
+ }
367
+ },
368
+ {
369
+ "name": "StrategyBumps",
370
+ "docs": ["Strategy bumps struct"],
371
+ "type": {
372
+ "kind": "struct",
373
+ "fields": [
374
+ { "name": "strategyIndex", "docs": ["strategy_index"], "type": "u8" },
375
+ {
376
+ "name": "otherBumps",
377
+ "docs": ["Bumps of PDAs for the integrated protocol."],
378
+ "type": { "array": ["u8", 10] }
379
+ }
380
+ ]
381
+ }
382
+ },
383
+ {
384
+ "name": "LockedProfitTracker",
385
+ "docs": ["LockedProfitTracker struct"],
386
+ "type": {
387
+ "kind": "struct",
388
+ "fields": [
389
+ {
390
+ "name": "lastUpdatedLockedProfit",
391
+ "docs": ["The total locked profit from the last report"],
392
+ "type": "u64"
393
+ },
394
+ { "name": "lastReport", "docs": ["The last timestamp (in seconds) rebalancing"], "type": "u64" },
395
+ { "name": "lockedProfitDegradation", "docs": ["Rate per second of degradation"], "type": "u64" }
396
+ ]
397
+ }
398
+ },
399
+ {
400
+ "name": "StrategyType",
401
+ "docs": ["StrategyType struct"],
402
+ "type": {
403
+ "kind": "enum",
404
+ "variants": [
405
+ { "name": "PortFinanceWithoutLM" },
406
+ { "name": "PortFinanceWithLM" },
407
+ { "name": "SolendWithoutLM" },
408
+ { "name": "Mango" },
409
+ { "name": "SolendWithLM" },
410
+ { "name": "ApricotWithoutLM" },
411
+ { "name": "Francium" },
412
+ { "name": "Tulip" },
413
+ { "name": "Vault" },
414
+ { "name": "Drift" },
415
+ { "name": "Frakt" },
416
+ { "name": "Marginfi" }
417
+ ]
418
+ }
419
+ }
420
+ ],
421
+ "events": [
422
+ {
423
+ "name": "AddLiquidity",
424
+ "fields": [
425
+ { "name": "lpMintAmount", "type": "u64", "index": false },
426
+ { "name": "tokenAmount", "type": "u64", "index": false }
427
+ ]
428
+ },
429
+ {
430
+ "name": "RemoveLiquidity",
431
+ "fields": [
432
+ { "name": "lpUnmintAmount", "type": "u64", "index": false },
433
+ { "name": "tokenAmount", "type": "u64", "index": false }
434
+ ]
435
+ },
436
+ {
437
+ "name": "StrategyDeposit",
438
+ "fields": [
439
+ { "name": "strategyType", "type": { "defined": "StrategyType" }, "index": false },
440
+ { "name": "tokenAmount", "type": "u64", "index": false }
441
+ ]
442
+ },
443
+ {
444
+ "name": "StrategyWithdraw",
445
+ "fields": [
446
+ { "name": "strategyType", "type": { "defined": "StrategyType" }, "index": false },
447
+ { "name": "collateralAmount", "type": "u64", "index": false },
448
+ { "name": "estimatedTokenAmount", "type": "u64", "index": false }
449
+ ]
450
+ },
451
+ {
452
+ "name": "ClaimReward",
453
+ "fields": [
454
+ { "name": "strategyType", "type": { "defined": "StrategyType" }, "index": false },
455
+ { "name": "tokenAmount", "type": "u64", "index": false },
456
+ { "name": "mintAccount", "type": "publicKey", "index": false }
457
+ ]
458
+ },
459
+ { "name": "PerformanceFee", "fields": [{ "name": "lpMintMore", "type": "u64", "index": false }] },
460
+ {
461
+ "name": "ReportLoss",
462
+ "fields": [
463
+ { "name": "strategy", "type": "publicKey", "index": false },
464
+ { "name": "loss", "type": "u64", "index": false }
465
+ ]
466
+ },
467
+ { "name": "TotalAmount", "fields": [{ "name": "totalAmount", "type": "u64", "index": false }] }
468
+ ],
469
+ "errors": [
470
+ { "code": 6000, "name": "VaultIsDisabled", "msg": "Vault is disabled" },
471
+ { "code": 6001, "name": "ExceededSlippage", "msg": "Exceeded slippage tolerance" },
472
+ { "code": 6002, "name": "StrategyIsNotExisted", "msg": "Strategy is not existed" },
473
+ { "code": 6003, "name": "UnAuthorized", "msg": "UnAuthorized" },
474
+ { "code": 6004, "name": "MathOverflow", "msg": "Math operation overflow" },
475
+ { "code": 6005, "name": "ProtocolIsNotSupported", "msg": "Protocol is not supported" },
476
+ { "code": 6006, "name": "UnMatchReserve", "msg": "Reserve does not support token mint" },
477
+ { "code": 6007, "name": "InvalidLockedProfitDegradation", "msg": "lockedProfitDegradation is invalid" },
478
+ { "code": 6008, "name": "MaxStrategyReached", "msg": "Maximum number of strategies have been reached" },
479
+ { "code": 6009, "name": "StrategyExisted", "msg": "Strategy existed" },
480
+ { "code": 6010, "name": "InvalidUnmintAmount", "msg": "Invalid unmint amount" },
481
+ { "code": 6011, "name": "InvalidAccountsForStrategy", "msg": "Invalid accounts for strategy" },
482
+ { "code": 6012, "name": "InvalidBump", "msg": "Invalid bump" },
483
+ { "code": 6013, "name": "AmountMustGreaterThanZero", "msg": "Amount must be greater than 0" },
484
+ { "code": 6014, "name": "MangoIsNotSupportedAnymore", "msg": "Mango is not supported anymore" },
485
+ { "code": 6015, "name": "StrategyIsNotSupported", "msg": "Strategy is not supported" },
486
+ { "code": 6016, "name": "PayAmountIsExeeced", "msg": "Pay amount is exceeded" },
487
+ { "code": 6017, "name": "FeeVaultIsNotSet", "msg": "Fee vault is not set" },
488
+ { "code": 6018, "name": "LendingAssertionViolation", "msg": "deposit amount in lending is not matched" },
489
+ { "code": 6019, "name": "HaveMoneyInLending", "msg": "Cannot remove strategy becase we have some in lending" }
490
+ ]
491
+ }
package/package.json ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "name": "@exponent-labs/meteora-idl",
3
+ "version": "0.0.3",
4
+ "main": "build/index.js",
5
+ "types": "build/index.d.ts",
6
+ "license": "AGPL-3.0",
7
+ "scripts": {
8
+ "build": "tsc --build"
9
+ },
10
+ "devDependencies": {
11
+ "@coral-xyz/anchor": "0.29.0",
12
+ "typescript": "5.4.5"
13
+ },
14
+ "gitHead": "209b8847e9a0fadb5b5ec96b9b47f0ace4a3bf9d"
15
+ }
package/src/index.ts ADDED
@@ -0,0 +1,29 @@
1
+ import * as pools_idl from "./meteora_amm.json"
2
+ import * as vault_idl from "./meteora_vault.json"
3
+
4
+ import { Amm } from "./meteora_amm"
5
+ import { Vault } from "./meteora_vault"
6
+
7
+ import { IdlAccounts, IdlTypes, BorshCoder, Idl, web3 } from "@coral-xyz/anchor"
8
+
9
+ export const POOLS_IDL = pools_idl
10
+ export const VAULT_IDL = vault_idl
11
+ export const POOLS_PROGRAM: string = "Eo7WjKq67rjJQSZxS6z3YkapzY3eMj6Xy8X5EQVn5UaB"
12
+ export const VAULT_PROGRAM: string = "24Uqj9JCLxUeoC3hGfh5W3s9FM9uCHDS2SG3LYwBpyTi"
13
+
14
+ export type PoolState = IdlAccounts<Amm>["pool"]
15
+ export type VaultState = IdlAccounts<Vault>["vault"]
16
+ export type CurveType = IdlTypes<Amm>["CurveType"]
17
+ export type LockedProfitTracker = IdlTypes<Vault>["LockedProfitTracker"]
18
+
19
+ export const decodePoolAccount = async (connection: web3.Connection, accountPubkey: web3.PublicKey) => {
20
+ const account = await connection.getAccountInfo(accountPubkey)
21
+ const coder = new BorshCoder(POOLS_IDL as Idl)
22
+ return coder.accounts.decode("pool", account.data) as PoolState
23
+ }
24
+
25
+ export const decodeVaultAccount = async (connection: web3.Connection, accountPubkey: web3.PublicKey) => {
26
+ const account = await connection.getAccountInfo(accountPubkey)
27
+ const coder = new BorshCoder(VAULT_IDL as Idl)
28
+ return coder.accounts.decode("Vault", account.data) as VaultState
29
+ }