@metadaoproject/futarchy 0.4.0-alpha.5 → 0.4.0-alpha.50

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 (95) hide show
  1. package/dist/v0.3/AmmClient.d.ts +223 -0
  2. package/dist/v0.3/AmmClient.js +186 -0
  3. package/dist/v0.3/AmmClient.js.map +1 -0
  4. package/dist/v0.3/AutocratClient.d.ts +234 -0
  5. package/dist/v0.3/AutocratClient.js +270 -0
  6. package/dist/v0.3/AutocratClient.js.map +1 -0
  7. package/dist/v0.3/ConditionalVaultClient.d.ts +281 -0
  8. package/dist/v0.3/ConditionalVaultClient.js +135 -0
  9. package/dist/v0.3/ConditionalVaultClient.js.map +1 -0
  10. package/dist/v0.3/FutarchyClient.d.ts +27 -0
  11. package/dist/v0.3/FutarchyClient.js +57 -0
  12. package/dist/v0.3/FutarchyClient.js.map +1 -0
  13. package/dist/v0.3/constants.d.ts +9 -0
  14. package/dist/v0.3/constants.js +10 -0
  15. package/dist/v0.3/constants.js.map +1 -0
  16. package/dist/v0.3/index.d.ts +7 -0
  17. package/dist/v0.3/index.js +8 -0
  18. package/dist/v0.3/index.js.map +1 -0
  19. package/dist/v0.3/types/amm.d.ts +542 -0
  20. package/dist/v0.3/types/amm.js +542 -0
  21. package/dist/v0.3/types/amm.js.map +1 -0
  22. package/dist/v0.3/types/autocrat.d.ts +632 -0
  23. package/dist/v0.3/types/autocrat.js +632 -0
  24. package/dist/v0.3/types/autocrat.js.map +1 -0
  25. package/dist/v0.3/types/conditional_vault.d.ts +448 -0
  26. package/dist/v0.3/types/conditional_vault.js +448 -0
  27. package/dist/v0.3/types/conditional_vault.js.map +1 -0
  28. package/dist/v0.3/types/index.d.ts +21 -0
  29. package/dist/v0.3/types/index.js +4 -0
  30. package/dist/v0.3/types/index.js.map +1 -0
  31. package/dist/v0.3/types/utils.d.ts +3 -0
  32. package/dist/v0.3/types/utils.js +2 -0
  33. package/dist/v0.3/types/utils.js.map +1 -0
  34. package/dist/v0.3/utils/ammMath.d.ts +39 -0
  35. package/dist/v0.3/utils/ammMath.js +142 -0
  36. package/dist/v0.3/utils/ammMath.js.map +1 -0
  37. package/dist/v0.3/utils/cu.d.ts +10 -0
  38. package/dist/v0.3/utils/cu.js +11 -0
  39. package/dist/v0.3/utils/cu.js.map +1 -0
  40. package/dist/v0.3/utils/filters.d.ts +3 -0
  41. package/dist/v0.3/utils/filters.js +14 -0
  42. package/dist/v0.3/utils/filters.js.map +1 -0
  43. package/dist/v0.3/utils/index.d.ts +16 -0
  44. package/dist/v0.3/utils/index.js +30 -0
  45. package/dist/v0.3/utils/index.js.map +1 -0
  46. package/dist/v0.3/utils/instruction.d.ts +4 -0
  47. package/dist/v0.3/utils/instruction.js +10 -0
  48. package/dist/v0.3/utils/instruction.js.map +1 -0
  49. package/dist/v0.3/utils/metadata.d.ts +4 -0
  50. package/dist/v0.3/utils/metadata.js +26 -0
  51. package/dist/v0.3/utils/metadata.js.map +1 -0
  52. package/dist/v0.3/utils/pda.d.ts +10 -0
  53. package/dist/v0.3/utils/pda.js +47 -0
  54. package/dist/v0.3/utils/pda.js.map +1 -0
  55. package/dist/v0.4/AmmClient.d.ts +45 -25
  56. package/dist/v0.4/AmmClient.js +11 -97
  57. package/dist/v0.4/AmmClient.js.map +1 -1
  58. package/dist/v0.4/AutocratClient.d.ts +43 -1
  59. package/dist/v0.4/AutocratClient.js +21 -2
  60. package/dist/v0.4/AutocratClient.js.map +1 -1
  61. package/dist/v0.4/ConditionalVaultClient.d.ts +70 -11
  62. package/dist/v0.4/ConditionalVaultClient.js +23 -33
  63. package/dist/v0.4/ConditionalVaultClient.js.map +1 -1
  64. package/dist/v0.4/LaunchpadClient.d.ts +416 -0
  65. package/dist/v0.4/LaunchpadClient.js +197 -0
  66. package/dist/v0.4/LaunchpadClient.js.map +1 -0
  67. package/dist/v0.4/constants.d.ts +10 -0
  68. package/dist/v0.4/constants.js +18 -3
  69. package/dist/v0.4/constants.js.map +1 -1
  70. package/dist/v0.4/index.d.ts +1 -0
  71. package/dist/v0.4/index.js +1 -0
  72. package/dist/v0.4/index.js.map +1 -1
  73. package/dist/v0.4/types/amm.d.ts +268 -2
  74. package/dist/v0.4/types/amm.js +268 -2
  75. package/dist/v0.4/types/amm.js.map +1 -1
  76. package/dist/v0.4/types/autocrat.d.ts +347 -1
  77. package/dist/v0.4/types/autocrat.js +347 -1
  78. package/dist/v0.4/types/autocrat.js.map +1 -1
  79. package/dist/v0.4/types/conditional_vault.d.ts +416 -4
  80. package/dist/v0.4/types/conditional_vault.js +416 -4
  81. package/dist/v0.4/types/conditional_vault.js.map +1 -1
  82. package/dist/v0.4/types/index.d.ts +26 -1
  83. package/dist/v0.4/types/index.js +2 -0
  84. package/dist/v0.4/types/index.js.map +1 -1
  85. package/dist/v0.4/types/launchpad.d.ts +1000 -0
  86. package/dist/v0.4/types/launchpad.js +1000 -0
  87. package/dist/v0.4/types/launchpad.js.map +1 -0
  88. package/dist/v0.4/utils/cu.js +1 -1
  89. package/dist/v0.4/utils/pda.d.ts +12 -1
  90. package/dist/v0.4/utils/pda.js +34 -3
  91. package/dist/v0.4/utils/pda.js.map +1 -1
  92. package/dist/v0.4/utils/priceMath.d.ts +51 -9
  93. package/dist/v0.4/utils/priceMath.js +102 -38
  94. package/dist/v0.4/utils/priceMath.js.map +1 -1
  95. package/package.json +2 -1
@@ -0,0 +1,542 @@
1
+ export const IDL = {
2
+ version: "0.3.0",
3
+ name: "amm",
4
+ instructions: [
5
+ {
6
+ name: "createAmm",
7
+ accounts: [
8
+ {
9
+ name: "user",
10
+ isMut: true,
11
+ isSigner: true,
12
+ },
13
+ {
14
+ name: "amm",
15
+ isMut: true,
16
+ isSigner: false,
17
+ },
18
+ {
19
+ name: "lpMint",
20
+ isMut: true,
21
+ isSigner: false,
22
+ },
23
+ {
24
+ name: "baseMint",
25
+ isMut: false,
26
+ isSigner: false,
27
+ },
28
+ {
29
+ name: "quoteMint",
30
+ isMut: false,
31
+ isSigner: false,
32
+ },
33
+ {
34
+ name: "vaultAtaBase",
35
+ isMut: true,
36
+ isSigner: false,
37
+ },
38
+ {
39
+ name: "vaultAtaQuote",
40
+ isMut: true,
41
+ isSigner: false,
42
+ },
43
+ {
44
+ name: "associatedTokenProgram",
45
+ isMut: false,
46
+ isSigner: false,
47
+ },
48
+ {
49
+ name: "tokenProgram",
50
+ isMut: false,
51
+ isSigner: false,
52
+ },
53
+ {
54
+ name: "systemProgram",
55
+ isMut: false,
56
+ isSigner: false,
57
+ },
58
+ ],
59
+ args: [
60
+ {
61
+ name: "args",
62
+ type: {
63
+ defined: "CreateAmmArgs",
64
+ },
65
+ },
66
+ ],
67
+ },
68
+ {
69
+ name: "addLiquidity",
70
+ accounts: [
71
+ {
72
+ name: "user",
73
+ isMut: true,
74
+ isSigner: true,
75
+ },
76
+ {
77
+ name: "amm",
78
+ isMut: true,
79
+ isSigner: false,
80
+ },
81
+ {
82
+ name: "lpMint",
83
+ isMut: true,
84
+ isSigner: false,
85
+ },
86
+ {
87
+ name: "userLpAccount",
88
+ isMut: true,
89
+ isSigner: false,
90
+ },
91
+ {
92
+ name: "userBaseAccount",
93
+ isMut: true,
94
+ isSigner: false,
95
+ },
96
+ {
97
+ name: "userQuoteAccount",
98
+ isMut: true,
99
+ isSigner: false,
100
+ },
101
+ {
102
+ name: "vaultAtaBase",
103
+ isMut: true,
104
+ isSigner: false,
105
+ },
106
+ {
107
+ name: "vaultAtaQuote",
108
+ isMut: true,
109
+ isSigner: false,
110
+ },
111
+ {
112
+ name: "tokenProgram",
113
+ isMut: false,
114
+ isSigner: false,
115
+ },
116
+ ],
117
+ args: [
118
+ {
119
+ name: "args",
120
+ type: {
121
+ defined: "AddLiquidityArgs",
122
+ },
123
+ },
124
+ ],
125
+ },
126
+ {
127
+ name: "removeLiquidity",
128
+ accounts: [
129
+ {
130
+ name: "user",
131
+ isMut: true,
132
+ isSigner: true,
133
+ },
134
+ {
135
+ name: "amm",
136
+ isMut: true,
137
+ isSigner: false,
138
+ },
139
+ {
140
+ name: "lpMint",
141
+ isMut: true,
142
+ isSigner: false,
143
+ },
144
+ {
145
+ name: "userLpAccount",
146
+ isMut: true,
147
+ isSigner: false,
148
+ },
149
+ {
150
+ name: "userBaseAccount",
151
+ isMut: true,
152
+ isSigner: false,
153
+ },
154
+ {
155
+ name: "userQuoteAccount",
156
+ isMut: true,
157
+ isSigner: false,
158
+ },
159
+ {
160
+ name: "vaultAtaBase",
161
+ isMut: true,
162
+ isSigner: false,
163
+ },
164
+ {
165
+ name: "vaultAtaQuote",
166
+ isMut: true,
167
+ isSigner: false,
168
+ },
169
+ {
170
+ name: "tokenProgram",
171
+ isMut: false,
172
+ isSigner: false,
173
+ },
174
+ ],
175
+ args: [
176
+ {
177
+ name: "args",
178
+ type: {
179
+ defined: "RemoveLiquidityArgs",
180
+ },
181
+ },
182
+ ],
183
+ },
184
+ {
185
+ name: "swap",
186
+ accounts: [
187
+ {
188
+ name: "user",
189
+ isMut: true,
190
+ isSigner: true,
191
+ },
192
+ {
193
+ name: "amm",
194
+ isMut: true,
195
+ isSigner: false,
196
+ },
197
+ {
198
+ name: "userBaseAccount",
199
+ isMut: true,
200
+ isSigner: false,
201
+ },
202
+ {
203
+ name: "userQuoteAccount",
204
+ isMut: true,
205
+ isSigner: false,
206
+ },
207
+ {
208
+ name: "vaultAtaBase",
209
+ isMut: true,
210
+ isSigner: false,
211
+ },
212
+ {
213
+ name: "vaultAtaQuote",
214
+ isMut: true,
215
+ isSigner: false,
216
+ },
217
+ {
218
+ name: "tokenProgram",
219
+ isMut: false,
220
+ isSigner: false,
221
+ },
222
+ ],
223
+ args: [
224
+ {
225
+ name: "args",
226
+ type: {
227
+ defined: "SwapArgs",
228
+ },
229
+ },
230
+ ],
231
+ },
232
+ {
233
+ name: "crankThatTwap",
234
+ accounts: [
235
+ {
236
+ name: "amm",
237
+ isMut: true,
238
+ isSigner: false,
239
+ },
240
+ ],
241
+ args: [],
242
+ },
243
+ ],
244
+ accounts: [
245
+ {
246
+ name: "amm",
247
+ type: {
248
+ kind: "struct",
249
+ fields: [
250
+ {
251
+ name: "bump",
252
+ type: "u8",
253
+ },
254
+ {
255
+ name: "createdAtSlot",
256
+ type: "u64",
257
+ },
258
+ {
259
+ name: "lpMint",
260
+ type: "publicKey",
261
+ },
262
+ {
263
+ name: "baseMint",
264
+ type: "publicKey",
265
+ },
266
+ {
267
+ name: "quoteMint",
268
+ type: "publicKey",
269
+ },
270
+ {
271
+ name: "baseMintDecimals",
272
+ type: "u8",
273
+ },
274
+ {
275
+ name: "quoteMintDecimals",
276
+ type: "u8",
277
+ },
278
+ {
279
+ name: "baseAmount",
280
+ type: "u64",
281
+ },
282
+ {
283
+ name: "quoteAmount",
284
+ type: "u64",
285
+ },
286
+ {
287
+ name: "oracle",
288
+ type: {
289
+ defined: "TwapOracle",
290
+ },
291
+ },
292
+ ],
293
+ },
294
+ },
295
+ ],
296
+ types: [
297
+ {
298
+ name: "AddLiquidityArgs",
299
+ type: {
300
+ kind: "struct",
301
+ fields: [
302
+ {
303
+ name: "quoteAmount",
304
+ docs: ["How much quote token you will deposit to the pool"],
305
+ type: "u64",
306
+ },
307
+ {
308
+ name: "maxBaseAmount",
309
+ docs: ["The maximum base token you will deposit to the pool"],
310
+ type: "u64",
311
+ },
312
+ {
313
+ name: "minLpTokens",
314
+ docs: ["The minimum LP token you will get back"],
315
+ type: "u64",
316
+ },
317
+ ],
318
+ },
319
+ },
320
+ {
321
+ name: "CreateAmmArgs",
322
+ type: {
323
+ kind: "struct",
324
+ fields: [
325
+ {
326
+ name: "twapInitialObservation",
327
+ type: "u128",
328
+ },
329
+ {
330
+ name: "twapMaxObservationChangePerUpdate",
331
+ type: "u128",
332
+ },
333
+ ],
334
+ },
335
+ },
336
+ {
337
+ name: "RemoveLiquidityArgs",
338
+ type: {
339
+ kind: "struct",
340
+ fields: [
341
+ {
342
+ name: "lpTokensToBurn",
343
+ type: "u64",
344
+ },
345
+ {
346
+ name: "minQuoteAmount",
347
+ type: "u64",
348
+ },
349
+ {
350
+ name: "minBaseAmount",
351
+ type: "u64",
352
+ },
353
+ ],
354
+ },
355
+ },
356
+ {
357
+ name: "SwapArgs",
358
+ type: {
359
+ kind: "struct",
360
+ fields: [
361
+ {
362
+ name: "swapType",
363
+ type: {
364
+ defined: "SwapType",
365
+ },
366
+ },
367
+ {
368
+ name: "inputAmount",
369
+ type: "u64",
370
+ },
371
+ {
372
+ name: "outputAmountMin",
373
+ type: "u64",
374
+ },
375
+ ],
376
+ },
377
+ },
378
+ {
379
+ name: "TwapOracle",
380
+ type: {
381
+ kind: "struct",
382
+ fields: [
383
+ {
384
+ name: "lastUpdatedSlot",
385
+ type: "u64",
386
+ },
387
+ {
388
+ name: "lastPrice",
389
+ docs: [
390
+ "A price is the number of quote units per base unit multiplied by 1e12.",
391
+ "You cannot simply divide by 1e12 to get a price you can display in the UI",
392
+ "because the base and quote decimals may be different. Instead, do:",
393
+ "ui_price = (price * (10**(base_decimals - quote_decimals))) / 1e12",
394
+ ],
395
+ type: "u128",
396
+ },
397
+ {
398
+ name: "lastObservation",
399
+ docs: [
400
+ "If we did a raw TWAP over prices, someone could push the TWAP heavily with",
401
+ "a few extremely large outliers. So we use observations, which can only move",
402
+ "by `max_observation_change_per_update` per update.",
403
+ ],
404
+ type: "u128",
405
+ },
406
+ {
407
+ name: "aggregator",
408
+ docs: [
409
+ "Running sum of slots_per_last_update * last_observation.",
410
+ "",
411
+ "Assuming latest observations are as big as possible (u64::MAX * 1e12),",
412
+ "we can store 18 million slots worth of observations, which turns out to",
413
+ "be ~85 days worth of slots.",
414
+ "",
415
+ "Assuming that latest observations are 100x smaller than they could theoretically",
416
+ "be, we can store 8500 days (23 years) worth of them. Even this is a very",
417
+ "very conservative assumption - META/USDC prices should be between 1e9 and",
418
+ "1e15, which would overflow after 1e15 years worth of slots.",
419
+ "",
420
+ "So in the case of an overflow, the aggregator rolls back to 0. It's the",
421
+ "client's responsibility to sanity check the assets or to handle an",
422
+ "aggregator at t2 being smaller than an aggregator at t1.",
423
+ ],
424
+ type: "u128",
425
+ },
426
+ {
427
+ name: "maxObservationChangePerUpdate",
428
+ docs: ["The most that an observation can change per update."],
429
+ type: "u128",
430
+ },
431
+ {
432
+ name: "initialObservation",
433
+ docs: ["What the initial `latest_observation` is set to."],
434
+ type: "u128",
435
+ },
436
+ ],
437
+ },
438
+ },
439
+ {
440
+ name: "SwapType",
441
+ type: {
442
+ kind: "enum",
443
+ variants: [
444
+ {
445
+ name: "Buy",
446
+ },
447
+ {
448
+ name: "Sell",
449
+ },
450
+ ],
451
+ },
452
+ },
453
+ ],
454
+ errors: [
455
+ {
456
+ code: 6000,
457
+ name: "NoSlotsPassed",
458
+ msg: "Can't get a TWAP before some observations have been stored",
459
+ },
460
+ {
461
+ code: 6001,
462
+ name: "NoReserves",
463
+ msg: "Can't swap through a pool without token reserves on either side",
464
+ },
465
+ {
466
+ code: 6002,
467
+ name: "InputAmountOverflow",
468
+ msg: "Input token amount is too large for a swap, causes overflow",
469
+ },
470
+ {
471
+ code: 6003,
472
+ name: "AddLiquidityCalculationError",
473
+ msg: "Add liquidity calculation error",
474
+ },
475
+ {
476
+ code: 6004,
477
+ name: "DecimalScaleError",
478
+ msg: "Error in decimal scale conversion",
479
+ },
480
+ {
481
+ code: 6005,
482
+ name: "SameTokenMints",
483
+ msg: "You can't create an AMM pool where the token mints are the same",
484
+ },
485
+ {
486
+ code: 6006,
487
+ name: "SwapSlippageExceeded",
488
+ msg: "A user wouldn't have gotten back their `output_amount_min`, reverting",
489
+ },
490
+ {
491
+ code: 6007,
492
+ name: "InsufficientBalance",
493
+ msg: "The user had insufficient balance to do this",
494
+ },
495
+ {
496
+ code: 6008,
497
+ name: "ZeroLiquidityRemove",
498
+ msg: "Must remove a non-zero amount of liquidity",
499
+ },
500
+ {
501
+ code: 6009,
502
+ name: "ZeroLiquidityToAdd",
503
+ msg: "Cannot add liquidity with 0 tokens on either side",
504
+ },
505
+ {
506
+ code: 6010,
507
+ name: "ZeroMinLpTokens",
508
+ msg: "Must specify a non-zero `min_lp_tokens` when adding to an existing pool",
509
+ },
510
+ {
511
+ code: 6011,
512
+ name: "AddLiquiditySlippageExceeded",
513
+ msg: "LP wouldn't have gotten back `lp_token_min`",
514
+ },
515
+ {
516
+ code: 6012,
517
+ name: "AddLiquidityMaxBaseExceeded",
518
+ msg: "LP would have spent more than `max_base_amount`",
519
+ },
520
+ {
521
+ code: 6013,
522
+ name: "InsufficientQuoteAmount",
523
+ msg: "`quote_amount` must be greater than 100000000 when initializing a pool",
524
+ },
525
+ {
526
+ code: 6014,
527
+ name: "ZeroSwapAmount",
528
+ msg: "Users must swap a non-zero amount",
529
+ },
530
+ {
531
+ code: 6015,
532
+ name: "ConstantProductInvariantFailed",
533
+ msg: "K should always be increasing",
534
+ },
535
+ {
536
+ code: 6016,
537
+ name: "CastingOverflow",
538
+ msg: "Casting has caused an overflow",
539
+ },
540
+ ],
541
+ };
542
+ //# sourceMappingURL=amm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"amm.js","sourceRoot":"","sources":["../../../src/v0.3/types/amm.ts"],"names":[],"mappings":"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"}