@metadaoproject/futarchy 0.6.0-aplha.8 → 0.7.0-alpha.1

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 (101) hide show
  1. package/dist/v0.5/SharedLiquidityManagerClient.js.map +1 -1
  2. package/dist/v0.6/FutarchyClient.d.ts +90 -1
  3. package/dist/v0.6/FutarchyClient.js +23 -2
  4. package/dist/v0.6/FutarchyClient.js.map +1 -1
  5. package/dist/v0.6/LaunchpadClient.d.ts +82 -23
  6. package/dist/v0.6/LaunchpadClient.js +77 -20
  7. package/dist/v0.6/LaunchpadClient.js.map +1 -1
  8. package/dist/v0.6/{PriceBasedUnlockClient.d.ts → PriceBasedPerformancePackageClient.d.ts} +65 -79
  9. package/dist/v0.6/PriceBasedPerformancePackageClient.js +116 -0
  10. package/dist/v0.6/PriceBasedPerformancePackageClient.js.map +1 -0
  11. package/dist/v0.6/constants.d.ts +3 -1
  12. package/dist/v0.6/constants.js +4 -2
  13. package/dist/v0.6/constants.js.map +1 -1
  14. package/dist/v0.6/index.d.ts +1 -1
  15. package/dist/v0.6/index.js +1 -1
  16. package/dist/v0.6/index.js.map +1 -1
  17. package/dist/v0.6/types/futarchy.d.ts +153 -1
  18. package/dist/v0.6/types/futarchy.js +153 -1
  19. package/dist/v0.6/types/futarchy.js.map +1 -1
  20. package/dist/v0.6/types/index.d.ts +26 -8
  21. package/dist/v0.6/types/index.js +4 -4
  22. package/dist/v0.6/types/index.js.map +1 -1
  23. package/dist/v0.6/types/launchpad.d.ts +191 -42
  24. package/dist/v0.6/types/launchpad.js +191 -42
  25. package/dist/v0.6/types/launchpad.js.map +1 -1
  26. package/dist/v0.6/types/{price_based_unlock.d.ts → price_based_performance_package.d.ts} +209 -155
  27. package/dist/v0.6/types/{price_based_unlock.js → price_based_performance_package.js} +207 -153
  28. package/dist/v0.6/types/price_based_performance_package.js.map +1 -0
  29. package/dist/v0.6/utils/pda.d.ts +11 -0
  30. package/dist/v0.6/utils/pda.js +15 -1
  31. package/dist/v0.6/utils/pda.js.map +1 -1
  32. package/dist/v0.7/ConditionalVaultClient.d.ts +314 -0
  33. package/dist/v0.7/ConditionalVaultClient.js +209 -0
  34. package/dist/v0.7/ConditionalVaultClient.js.map +1 -0
  35. package/dist/v0.7/FutarchyClient.d.ts +982 -0
  36. package/dist/v0.7/FutarchyClient.js +413 -0
  37. package/dist/v0.7/FutarchyClient.js.map +1 -0
  38. package/dist/v0.7/LaunchpadClient.d.ts +647 -0
  39. package/dist/v0.7/LaunchpadClient.js +301 -0
  40. package/dist/v0.7/LaunchpadClient.js.map +1 -0
  41. package/dist/v0.7/PriceBasedPerformancePackageClient.d.ts +353 -0
  42. package/dist/v0.7/PriceBasedPerformancePackageClient.js +116 -0
  43. package/dist/v0.7/PriceBasedPerformancePackageClient.js.map +1 -0
  44. package/dist/v0.7/constants.d.ts +29 -0
  45. package/dist/v0.7/constants.js +40 -0
  46. package/dist/v0.7/constants.js.map +1 -0
  47. package/dist/v0.7/index.d.ts +7 -0
  48. package/dist/v0.7/index.js +8 -0
  49. package/dist/v0.7/index.js.map +1 -0
  50. package/dist/v0.7/types/amm.d.ts +832 -0
  51. package/dist/v0.7/types/amm.js +832 -0
  52. package/dist/v0.7/types/amm.js.map +1 -0
  53. package/dist/v0.7/types/conditional_vault.d.ts +934 -0
  54. package/dist/v0.7/types/conditional_vault.js +934 -0
  55. package/dist/v0.7/types/conditional_vault.js.map +1 -0
  56. package/dist/v0.7/types/futarchy.d.ts +2739 -0
  57. package/dist/v0.7/types/futarchy.js +2739 -0
  58. package/dist/v0.7/types/futarchy.js.map +1 -0
  59. package/dist/v0.7/types/index.d.ts +67 -0
  60. package/dist/v0.7/types/index.js +11 -0
  61. package/dist/v0.7/types/index.js.map +1 -0
  62. package/dist/v0.7/types/launchpad_v7.d.ts +1568 -0
  63. package/dist/v0.7/types/launchpad_v7.js +1568 -0
  64. package/dist/v0.7/types/launchpad_v7.js.map +1 -0
  65. package/dist/v0.7/types/price_based_performance_package.d.ts +954 -0
  66. package/dist/v0.7/types/price_based_performance_package.js +954 -0
  67. package/dist/v0.7/types/price_based_performance_package.js.map +1 -0
  68. package/dist/v0.7/types/utils.d.ts +3 -0
  69. package/dist/v0.7/types/utils.js +2 -0
  70. package/dist/v0.7/types/utils.js.map +1 -0
  71. package/dist/v0.7/utils/cu.d.ts +10 -0
  72. package/dist/v0.7/utils/cu.js +11 -0
  73. package/dist/v0.7/utils/cu.js.map +1 -0
  74. package/dist/v0.7/utils/filters.d.ts +3 -0
  75. package/dist/v0.7/utils/filters.js +14 -0
  76. package/dist/v0.7/utils/filters.js.map +1 -0
  77. package/dist/v0.7/utils/index.d.ts +16 -0
  78. package/dist/v0.7/utils/index.js +30 -0
  79. package/dist/v0.7/utils/index.js.map +1 -0
  80. package/dist/v0.7/utils/instruction.d.ts +4 -0
  81. package/dist/v0.7/utils/instruction.js +10 -0
  82. package/dist/v0.7/utils/instruction.js.map +1 -0
  83. package/dist/v0.7/utils/metadata.d.ts +4 -0
  84. package/dist/v0.7/utils/metadata.js +22 -0
  85. package/dist/v0.7/utils/metadata.js.map +1 -0
  86. package/dist/v0.7/utils/pda.d.ts +43 -0
  87. package/dist/v0.7/utils/pda.js +95 -0
  88. package/dist/v0.7/utils/pda.js.map +1 -0
  89. package/dist/v0.7/utils/priceMath.d.ts +39 -0
  90. package/dist/v0.7/utils/priceMath.js +48 -0
  91. package/dist/v0.7/utils/priceMath.js.map +1 -0
  92. package/package.json +6 -3
  93. package/dist/v0.6/PriceBasedUnlockClient.js +0 -122
  94. package/dist/v0.6/PriceBasedUnlockClient.js.map +0 -1
  95. package/dist/v0.6/types/price_based_token_lock.d.ts +0 -444
  96. package/dist/v0.6/types/price_based_token_lock.js +0 -444
  97. package/dist/v0.6/types/price_based_token_lock.js.map +0 -1
  98. package/dist/v0.6/types/price_based_unlock.js.map +0 -1
  99. package/dist/v0.6/types/shared_liquidity_manager.d.ts +0 -89
  100. package/dist/v0.6/types/shared_liquidity_manager.js +0 -89
  101. package/dist/v0.6/types/shared_liquidity_manager.js.map +0 -1
@@ -0,0 +1,2739 @@
1
+ export const IDL = {
2
+ "version": "0.6.1",
3
+ "name": "futarchy",
4
+ "instructions": [
5
+ {
6
+ "name": "initializeDao",
7
+ "accounts": [
8
+ {
9
+ "name": "dao",
10
+ "isMut": true,
11
+ "isSigner": false
12
+ },
13
+ {
14
+ "name": "daoCreator",
15
+ "isMut": false,
16
+ "isSigner": true
17
+ },
18
+ {
19
+ "name": "payer",
20
+ "isMut": true,
21
+ "isSigner": true
22
+ },
23
+ {
24
+ "name": "systemProgram",
25
+ "isMut": false,
26
+ "isSigner": false
27
+ },
28
+ {
29
+ "name": "baseMint",
30
+ "isMut": false,
31
+ "isSigner": false
32
+ },
33
+ {
34
+ "name": "quoteMint",
35
+ "isMut": false,
36
+ "isSigner": false
37
+ },
38
+ {
39
+ "name": "squadsMultisig",
40
+ "isMut": true,
41
+ "isSigner": false
42
+ },
43
+ {
44
+ "name": "squadsMultisigVault",
45
+ "isMut": false,
46
+ "isSigner": false
47
+ },
48
+ {
49
+ "name": "squadsProgram",
50
+ "isMut": false,
51
+ "isSigner": false
52
+ },
53
+ {
54
+ "name": "squadsProgramConfig",
55
+ "isMut": false,
56
+ "isSigner": false
57
+ },
58
+ {
59
+ "name": "squadsProgramConfigTreasury",
60
+ "isMut": true,
61
+ "isSigner": false
62
+ },
63
+ {
64
+ "name": "spendingLimit",
65
+ "isMut": true,
66
+ "isSigner": false
67
+ },
68
+ {
69
+ "name": "futarchyAmmBaseVault",
70
+ "isMut": true,
71
+ "isSigner": false
72
+ },
73
+ {
74
+ "name": "futarchyAmmQuoteVault",
75
+ "isMut": true,
76
+ "isSigner": false
77
+ },
78
+ {
79
+ "name": "tokenProgram",
80
+ "isMut": false,
81
+ "isSigner": false
82
+ },
83
+ {
84
+ "name": "associatedTokenProgram",
85
+ "isMut": false,
86
+ "isSigner": false
87
+ },
88
+ {
89
+ "name": "eventAuthority",
90
+ "isMut": false,
91
+ "isSigner": false
92
+ },
93
+ {
94
+ "name": "program",
95
+ "isMut": false,
96
+ "isSigner": false
97
+ }
98
+ ],
99
+ "args": [
100
+ {
101
+ "name": "params",
102
+ "type": {
103
+ "defined": "InitializeDaoParams"
104
+ }
105
+ }
106
+ ]
107
+ },
108
+ {
109
+ "name": "initializeProposal",
110
+ "accounts": [
111
+ {
112
+ "name": "proposal",
113
+ "isMut": true,
114
+ "isSigner": false
115
+ },
116
+ {
117
+ "name": "squadsProposal",
118
+ "isMut": false,
119
+ "isSigner": false
120
+ },
121
+ {
122
+ "name": "dao",
123
+ "isMut": true,
124
+ "isSigner": false
125
+ },
126
+ {
127
+ "name": "question",
128
+ "isMut": false,
129
+ "isSigner": false
130
+ },
131
+ {
132
+ "name": "quoteVault",
133
+ "isMut": false,
134
+ "isSigner": false
135
+ },
136
+ {
137
+ "name": "baseVault",
138
+ "isMut": false,
139
+ "isSigner": false
140
+ },
141
+ {
142
+ "name": "proposer",
143
+ "isMut": false,
144
+ "isSigner": true
145
+ },
146
+ {
147
+ "name": "payer",
148
+ "isMut": true,
149
+ "isSigner": true
150
+ },
151
+ {
152
+ "name": "systemProgram",
153
+ "isMut": false,
154
+ "isSigner": false
155
+ },
156
+ {
157
+ "name": "eventAuthority",
158
+ "isMut": false,
159
+ "isSigner": false
160
+ },
161
+ {
162
+ "name": "program",
163
+ "isMut": false,
164
+ "isSigner": false
165
+ }
166
+ ],
167
+ "args": []
168
+ },
169
+ {
170
+ "name": "stakeToProposal",
171
+ "accounts": [
172
+ {
173
+ "name": "proposal",
174
+ "isMut": true,
175
+ "isSigner": false
176
+ },
177
+ {
178
+ "name": "dao",
179
+ "isMut": true,
180
+ "isSigner": false
181
+ },
182
+ {
183
+ "name": "stakerBaseAccount",
184
+ "isMut": true,
185
+ "isSigner": false
186
+ },
187
+ {
188
+ "name": "proposalBaseAccount",
189
+ "isMut": true,
190
+ "isSigner": false
191
+ },
192
+ {
193
+ "name": "stakeAccount",
194
+ "isMut": true,
195
+ "isSigner": false
196
+ },
197
+ {
198
+ "name": "staker",
199
+ "isMut": false,
200
+ "isSigner": true
201
+ },
202
+ {
203
+ "name": "payer",
204
+ "isMut": true,
205
+ "isSigner": true
206
+ },
207
+ {
208
+ "name": "tokenProgram",
209
+ "isMut": false,
210
+ "isSigner": false
211
+ },
212
+ {
213
+ "name": "associatedTokenProgram",
214
+ "isMut": false,
215
+ "isSigner": false
216
+ },
217
+ {
218
+ "name": "systemProgram",
219
+ "isMut": false,
220
+ "isSigner": false
221
+ },
222
+ {
223
+ "name": "eventAuthority",
224
+ "isMut": false,
225
+ "isSigner": false
226
+ },
227
+ {
228
+ "name": "program",
229
+ "isMut": false,
230
+ "isSigner": false
231
+ }
232
+ ],
233
+ "args": [
234
+ {
235
+ "name": "params",
236
+ "type": {
237
+ "defined": "StakeToProposalParams"
238
+ }
239
+ }
240
+ ]
241
+ },
242
+ {
243
+ "name": "unstakeFromProposal",
244
+ "accounts": [
245
+ {
246
+ "name": "proposal",
247
+ "isMut": true,
248
+ "isSigner": false
249
+ },
250
+ {
251
+ "name": "dao",
252
+ "isMut": true,
253
+ "isSigner": false
254
+ },
255
+ {
256
+ "name": "stakerBaseAccount",
257
+ "isMut": true,
258
+ "isSigner": false
259
+ },
260
+ {
261
+ "name": "proposalBaseAccount",
262
+ "isMut": true,
263
+ "isSigner": false
264
+ },
265
+ {
266
+ "name": "stakeAccount",
267
+ "isMut": true,
268
+ "isSigner": false
269
+ },
270
+ {
271
+ "name": "staker",
272
+ "isMut": false,
273
+ "isSigner": true
274
+ },
275
+ {
276
+ "name": "tokenProgram",
277
+ "isMut": false,
278
+ "isSigner": false
279
+ },
280
+ {
281
+ "name": "associatedTokenProgram",
282
+ "isMut": false,
283
+ "isSigner": false
284
+ },
285
+ {
286
+ "name": "eventAuthority",
287
+ "isMut": false,
288
+ "isSigner": false
289
+ },
290
+ {
291
+ "name": "program",
292
+ "isMut": false,
293
+ "isSigner": false
294
+ }
295
+ ],
296
+ "args": [
297
+ {
298
+ "name": "params",
299
+ "type": {
300
+ "defined": "UnstakeFromProposalParams"
301
+ }
302
+ }
303
+ ]
304
+ },
305
+ {
306
+ "name": "launchProposal",
307
+ "accounts": [
308
+ {
309
+ "name": "proposal",
310
+ "isMut": true,
311
+ "isSigner": false
312
+ },
313
+ {
314
+ "name": "baseVault",
315
+ "isMut": false,
316
+ "isSigner": false
317
+ },
318
+ {
319
+ "name": "quoteVault",
320
+ "isMut": false,
321
+ "isSigner": false
322
+ },
323
+ {
324
+ "name": "passBaseMint",
325
+ "isMut": false,
326
+ "isSigner": false
327
+ },
328
+ {
329
+ "name": "passQuoteMint",
330
+ "isMut": false,
331
+ "isSigner": false
332
+ },
333
+ {
334
+ "name": "failBaseMint",
335
+ "isMut": false,
336
+ "isSigner": false
337
+ },
338
+ {
339
+ "name": "failQuoteMint",
340
+ "isMut": false,
341
+ "isSigner": false
342
+ },
343
+ {
344
+ "name": "dao",
345
+ "isMut": true,
346
+ "isSigner": false
347
+ },
348
+ {
349
+ "name": "payer",
350
+ "isMut": true,
351
+ "isSigner": true
352
+ },
353
+ {
354
+ "name": "ammPassBaseVault",
355
+ "isMut": true,
356
+ "isSigner": false
357
+ },
358
+ {
359
+ "name": "ammPassQuoteVault",
360
+ "isMut": true,
361
+ "isSigner": false
362
+ },
363
+ {
364
+ "name": "ammFailBaseVault",
365
+ "isMut": true,
366
+ "isSigner": false
367
+ },
368
+ {
369
+ "name": "ammFailQuoteVault",
370
+ "isMut": true,
371
+ "isSigner": false
372
+ },
373
+ {
374
+ "name": "systemProgram",
375
+ "isMut": false,
376
+ "isSigner": false
377
+ },
378
+ {
379
+ "name": "tokenProgram",
380
+ "isMut": false,
381
+ "isSigner": false
382
+ },
383
+ {
384
+ "name": "associatedTokenProgram",
385
+ "isMut": false,
386
+ "isSigner": false
387
+ },
388
+ {
389
+ "name": "eventAuthority",
390
+ "isMut": false,
391
+ "isSigner": false
392
+ },
393
+ {
394
+ "name": "program",
395
+ "isMut": false,
396
+ "isSigner": false
397
+ }
398
+ ],
399
+ "args": []
400
+ },
401
+ {
402
+ "name": "finalizeProposal",
403
+ "accounts": [
404
+ {
405
+ "name": "proposal",
406
+ "isMut": true,
407
+ "isSigner": false
408
+ },
409
+ {
410
+ "name": "dao",
411
+ "isMut": true,
412
+ "isSigner": false
413
+ },
414
+ {
415
+ "name": "question",
416
+ "isMut": true,
417
+ "isSigner": false
418
+ },
419
+ {
420
+ "name": "squadsProposal",
421
+ "isMut": true,
422
+ "isSigner": false
423
+ },
424
+ {
425
+ "name": "squadsMultisig",
426
+ "isMut": false,
427
+ "isSigner": false
428
+ },
429
+ {
430
+ "name": "squadsMultisigProgram",
431
+ "isMut": false,
432
+ "isSigner": false
433
+ },
434
+ {
435
+ "name": "ammPassBaseVault",
436
+ "isMut": true,
437
+ "isSigner": false
438
+ },
439
+ {
440
+ "name": "ammPassQuoteVault",
441
+ "isMut": true,
442
+ "isSigner": false
443
+ },
444
+ {
445
+ "name": "ammFailBaseVault",
446
+ "isMut": true,
447
+ "isSigner": false
448
+ },
449
+ {
450
+ "name": "ammFailQuoteVault",
451
+ "isMut": true,
452
+ "isSigner": false
453
+ },
454
+ {
455
+ "name": "ammBaseVault",
456
+ "isMut": true,
457
+ "isSigner": false
458
+ },
459
+ {
460
+ "name": "ammQuoteVault",
461
+ "isMut": true,
462
+ "isSigner": false
463
+ },
464
+ {
465
+ "name": "vaultProgram",
466
+ "isMut": false,
467
+ "isSigner": false
468
+ },
469
+ {
470
+ "name": "vaultEventAuthority",
471
+ "isMut": false,
472
+ "isSigner": false
473
+ },
474
+ {
475
+ "name": "tokenProgram",
476
+ "isMut": false,
477
+ "isSigner": false
478
+ },
479
+ {
480
+ "name": "quoteVault",
481
+ "isMut": true,
482
+ "isSigner": false
483
+ },
484
+ {
485
+ "name": "quoteVaultUnderlyingTokenAccount",
486
+ "isMut": true,
487
+ "isSigner": false
488
+ },
489
+ {
490
+ "name": "passQuoteMint",
491
+ "isMut": true,
492
+ "isSigner": false
493
+ },
494
+ {
495
+ "name": "failQuoteMint",
496
+ "isMut": true,
497
+ "isSigner": false
498
+ },
499
+ {
500
+ "name": "passBaseMint",
501
+ "isMut": true,
502
+ "isSigner": false
503
+ },
504
+ {
505
+ "name": "failBaseMint",
506
+ "isMut": true,
507
+ "isSigner": false
508
+ },
509
+ {
510
+ "name": "baseVault",
511
+ "isMut": true,
512
+ "isSigner": false
513
+ },
514
+ {
515
+ "name": "baseVaultUnderlyingTokenAccount",
516
+ "isMut": true,
517
+ "isSigner": false
518
+ },
519
+ {
520
+ "name": "eventAuthority",
521
+ "isMut": false,
522
+ "isSigner": false
523
+ },
524
+ {
525
+ "name": "program",
526
+ "isMut": false,
527
+ "isSigner": false
528
+ }
529
+ ],
530
+ "args": []
531
+ },
532
+ {
533
+ "name": "updateDao",
534
+ "accounts": [
535
+ {
536
+ "name": "dao",
537
+ "isMut": true,
538
+ "isSigner": false
539
+ },
540
+ {
541
+ "name": "squadsMultisigVault",
542
+ "isMut": false,
543
+ "isSigner": true
544
+ },
545
+ {
546
+ "name": "eventAuthority",
547
+ "isMut": false,
548
+ "isSigner": false
549
+ },
550
+ {
551
+ "name": "program",
552
+ "isMut": false,
553
+ "isSigner": false
554
+ }
555
+ ],
556
+ "args": [
557
+ {
558
+ "name": "daoParams",
559
+ "type": {
560
+ "defined": "UpdateDaoParams"
561
+ }
562
+ }
563
+ ]
564
+ },
565
+ {
566
+ "name": "spotSwap",
567
+ "accounts": [
568
+ {
569
+ "name": "dao",
570
+ "isMut": true,
571
+ "isSigner": false
572
+ },
573
+ {
574
+ "name": "userBaseAccount",
575
+ "isMut": true,
576
+ "isSigner": false
577
+ },
578
+ {
579
+ "name": "userQuoteAccount",
580
+ "isMut": true,
581
+ "isSigner": false
582
+ },
583
+ {
584
+ "name": "ammBaseVault",
585
+ "isMut": true,
586
+ "isSigner": false
587
+ },
588
+ {
589
+ "name": "ammQuoteVault",
590
+ "isMut": true,
591
+ "isSigner": false
592
+ },
593
+ {
594
+ "name": "user",
595
+ "isMut": false,
596
+ "isSigner": true
597
+ },
598
+ {
599
+ "name": "tokenProgram",
600
+ "isMut": false,
601
+ "isSigner": false
602
+ },
603
+ {
604
+ "name": "eventAuthority",
605
+ "isMut": false,
606
+ "isSigner": false
607
+ },
608
+ {
609
+ "name": "program",
610
+ "isMut": false,
611
+ "isSigner": false
612
+ }
613
+ ],
614
+ "args": [
615
+ {
616
+ "name": "params",
617
+ "type": {
618
+ "defined": "SpotSwapParams"
619
+ }
620
+ }
621
+ ]
622
+ },
623
+ {
624
+ "name": "conditionalSwap",
625
+ "accounts": [
626
+ {
627
+ "name": "dao",
628
+ "isMut": true,
629
+ "isSigner": false
630
+ },
631
+ {
632
+ "name": "ammBaseVault",
633
+ "isMut": true,
634
+ "isSigner": false
635
+ },
636
+ {
637
+ "name": "ammQuoteVault",
638
+ "isMut": true,
639
+ "isSigner": false
640
+ },
641
+ {
642
+ "name": "proposal",
643
+ "isMut": false,
644
+ "isSigner": false
645
+ },
646
+ {
647
+ "name": "ammPassBaseVault",
648
+ "isMut": true,
649
+ "isSigner": false
650
+ },
651
+ {
652
+ "name": "ammPassQuoteVault",
653
+ "isMut": true,
654
+ "isSigner": false
655
+ },
656
+ {
657
+ "name": "ammFailBaseVault",
658
+ "isMut": true,
659
+ "isSigner": false
660
+ },
661
+ {
662
+ "name": "ammFailQuoteVault",
663
+ "isMut": true,
664
+ "isSigner": false
665
+ },
666
+ {
667
+ "name": "trader",
668
+ "isMut": false,
669
+ "isSigner": true
670
+ },
671
+ {
672
+ "name": "userInputAccount",
673
+ "isMut": true,
674
+ "isSigner": false
675
+ },
676
+ {
677
+ "name": "userOutputAccount",
678
+ "isMut": true,
679
+ "isSigner": false
680
+ },
681
+ {
682
+ "name": "baseVault",
683
+ "isMut": true,
684
+ "isSigner": false
685
+ },
686
+ {
687
+ "name": "baseVaultUnderlyingTokenAccount",
688
+ "isMut": true,
689
+ "isSigner": false
690
+ },
691
+ {
692
+ "name": "quoteVault",
693
+ "isMut": true,
694
+ "isSigner": false
695
+ },
696
+ {
697
+ "name": "quoteVaultUnderlyingTokenAccount",
698
+ "isMut": true,
699
+ "isSigner": false
700
+ },
701
+ {
702
+ "name": "passBaseMint",
703
+ "isMut": true,
704
+ "isSigner": false
705
+ },
706
+ {
707
+ "name": "failBaseMint",
708
+ "isMut": true,
709
+ "isSigner": false
710
+ },
711
+ {
712
+ "name": "passQuoteMint",
713
+ "isMut": true,
714
+ "isSigner": false
715
+ },
716
+ {
717
+ "name": "failQuoteMint",
718
+ "isMut": true,
719
+ "isSigner": false
720
+ },
721
+ {
722
+ "name": "conditionalVaultProgram",
723
+ "isMut": false,
724
+ "isSigner": false
725
+ },
726
+ {
727
+ "name": "vaultEventAuthority",
728
+ "isMut": false,
729
+ "isSigner": false
730
+ },
731
+ {
732
+ "name": "question",
733
+ "isMut": false,
734
+ "isSigner": false
735
+ },
736
+ {
737
+ "name": "tokenProgram",
738
+ "isMut": false,
739
+ "isSigner": false
740
+ },
741
+ {
742
+ "name": "eventAuthority",
743
+ "isMut": false,
744
+ "isSigner": false
745
+ },
746
+ {
747
+ "name": "program",
748
+ "isMut": false,
749
+ "isSigner": false
750
+ }
751
+ ],
752
+ "args": [
753
+ {
754
+ "name": "params",
755
+ "type": {
756
+ "defined": "ConditionalSwapParams"
757
+ }
758
+ }
759
+ ]
760
+ },
761
+ {
762
+ "name": "provideLiquidity",
763
+ "accounts": [
764
+ {
765
+ "name": "dao",
766
+ "isMut": true,
767
+ "isSigner": false
768
+ },
769
+ {
770
+ "name": "liquidityProvider",
771
+ "isMut": false,
772
+ "isSigner": true
773
+ },
774
+ {
775
+ "name": "liquidityProviderBaseAccount",
776
+ "isMut": true,
777
+ "isSigner": false
778
+ },
779
+ {
780
+ "name": "liquidityProviderQuoteAccount",
781
+ "isMut": true,
782
+ "isSigner": false
783
+ },
784
+ {
785
+ "name": "payer",
786
+ "isMut": true,
787
+ "isSigner": true
788
+ },
789
+ {
790
+ "name": "systemProgram",
791
+ "isMut": false,
792
+ "isSigner": false
793
+ },
794
+ {
795
+ "name": "ammBaseVault",
796
+ "isMut": true,
797
+ "isSigner": false
798
+ },
799
+ {
800
+ "name": "ammQuoteVault",
801
+ "isMut": true,
802
+ "isSigner": false
803
+ },
804
+ {
805
+ "name": "ammPosition",
806
+ "isMut": true,
807
+ "isSigner": false
808
+ },
809
+ {
810
+ "name": "tokenProgram",
811
+ "isMut": false,
812
+ "isSigner": false
813
+ },
814
+ {
815
+ "name": "eventAuthority",
816
+ "isMut": false,
817
+ "isSigner": false
818
+ },
819
+ {
820
+ "name": "program",
821
+ "isMut": false,
822
+ "isSigner": false
823
+ }
824
+ ],
825
+ "args": [
826
+ {
827
+ "name": "params",
828
+ "type": {
829
+ "defined": "ProvideLiquidityParams"
830
+ }
831
+ }
832
+ ]
833
+ },
834
+ {
835
+ "name": "withdrawLiquidity",
836
+ "accounts": [
837
+ {
838
+ "name": "dao",
839
+ "isMut": true,
840
+ "isSigner": false
841
+ },
842
+ {
843
+ "name": "positionAuthority",
844
+ "isMut": false,
845
+ "isSigner": true
846
+ },
847
+ {
848
+ "name": "liquidityProviderBaseAccount",
849
+ "isMut": true,
850
+ "isSigner": false
851
+ },
852
+ {
853
+ "name": "liquidityProviderQuoteAccount",
854
+ "isMut": true,
855
+ "isSigner": false
856
+ },
857
+ {
858
+ "name": "ammBaseVault",
859
+ "isMut": true,
860
+ "isSigner": false
861
+ },
862
+ {
863
+ "name": "ammQuoteVault",
864
+ "isMut": true,
865
+ "isSigner": false
866
+ },
867
+ {
868
+ "name": "ammPosition",
869
+ "isMut": true,
870
+ "isSigner": false
871
+ },
872
+ {
873
+ "name": "tokenProgram",
874
+ "isMut": false,
875
+ "isSigner": false
876
+ },
877
+ {
878
+ "name": "eventAuthority",
879
+ "isMut": false,
880
+ "isSigner": false
881
+ },
882
+ {
883
+ "name": "program",
884
+ "isMut": false,
885
+ "isSigner": false
886
+ }
887
+ ],
888
+ "args": [
889
+ {
890
+ "name": "params",
891
+ "type": {
892
+ "defined": "WithdrawLiquidityParams"
893
+ }
894
+ }
895
+ ]
896
+ },
897
+ {
898
+ "name": "collectFees",
899
+ "accounts": [
900
+ {
901
+ "name": "dao",
902
+ "isMut": true,
903
+ "isSigner": false
904
+ },
905
+ {
906
+ "name": "admin",
907
+ "isMut": false,
908
+ "isSigner": true
909
+ },
910
+ {
911
+ "name": "baseTokenAccount",
912
+ "isMut": true,
913
+ "isSigner": false
914
+ },
915
+ {
916
+ "name": "quoteTokenAccount",
917
+ "isMut": true,
918
+ "isSigner": false
919
+ },
920
+ {
921
+ "name": "ammBaseVault",
922
+ "isMut": true,
923
+ "isSigner": false
924
+ },
925
+ {
926
+ "name": "ammQuoteVault",
927
+ "isMut": true,
928
+ "isSigner": false
929
+ },
930
+ {
931
+ "name": "tokenProgram",
932
+ "isMut": false,
933
+ "isSigner": false
934
+ },
935
+ {
936
+ "name": "eventAuthority",
937
+ "isMut": false,
938
+ "isSigner": false
939
+ },
940
+ {
941
+ "name": "program",
942
+ "isMut": false,
943
+ "isSigner": false
944
+ }
945
+ ],
946
+ "args": []
947
+ },
948
+ {
949
+ "name": "executeSpendingLimitChange",
950
+ "accounts": [
951
+ {
952
+ "name": "proposal",
953
+ "isMut": true,
954
+ "isSigner": false
955
+ },
956
+ {
957
+ "name": "dao",
958
+ "isMut": true,
959
+ "isSigner": false
960
+ },
961
+ {
962
+ "name": "squadsProposal",
963
+ "isMut": true,
964
+ "isSigner": false
965
+ },
966
+ {
967
+ "name": "squadsMultisig",
968
+ "isMut": false,
969
+ "isSigner": false
970
+ },
971
+ {
972
+ "name": "squadsMultisigProgram",
973
+ "isMut": false,
974
+ "isSigner": false
975
+ },
976
+ {
977
+ "name": "vaultTransaction",
978
+ "isMut": false,
979
+ "isSigner": false
980
+ },
981
+ {
982
+ "name": "eventAuthority",
983
+ "isMut": false,
984
+ "isSigner": false
985
+ },
986
+ {
987
+ "name": "program",
988
+ "isMut": false,
989
+ "isSigner": false
990
+ }
991
+ ],
992
+ "args": []
993
+ },
994
+ {
995
+ "name": "sponsorProposal",
996
+ "accounts": [
997
+ {
998
+ "name": "proposal",
999
+ "isMut": true,
1000
+ "isSigner": false
1001
+ },
1002
+ {
1003
+ "name": "dao",
1004
+ "isMut": true,
1005
+ "isSigner": false
1006
+ },
1007
+ {
1008
+ "name": "teamAddress",
1009
+ "isMut": false,
1010
+ "isSigner": true
1011
+ },
1012
+ {
1013
+ "name": "eventAuthority",
1014
+ "isMut": false,
1015
+ "isSigner": false
1016
+ },
1017
+ {
1018
+ "name": "program",
1019
+ "isMut": false,
1020
+ "isSigner": false
1021
+ }
1022
+ ],
1023
+ "args": []
1024
+ }
1025
+ ],
1026
+ "accounts": [
1027
+ {
1028
+ "name": "ammPosition",
1029
+ "type": {
1030
+ "kind": "struct",
1031
+ "fields": [
1032
+ {
1033
+ "name": "dao",
1034
+ "type": "publicKey"
1035
+ },
1036
+ {
1037
+ "name": "positionAuthority",
1038
+ "type": "publicKey"
1039
+ },
1040
+ {
1041
+ "name": "liquidity",
1042
+ "type": "u128"
1043
+ }
1044
+ ]
1045
+ }
1046
+ },
1047
+ {
1048
+ "name": "dao",
1049
+ "type": {
1050
+ "kind": "struct",
1051
+ "fields": [
1052
+ {
1053
+ "name": "amm",
1054
+ "docs": [
1055
+ "Embedded FutarchyAmm - 1:1 relationship"
1056
+ ],
1057
+ "type": {
1058
+ "defined": "FutarchyAmm"
1059
+ }
1060
+ },
1061
+ {
1062
+ "name": "nonce",
1063
+ "docs": [
1064
+ "`nonce` + `dao_creator` are PDA seeds"
1065
+ ],
1066
+ "type": "u64"
1067
+ },
1068
+ {
1069
+ "name": "daoCreator",
1070
+ "type": "publicKey"
1071
+ },
1072
+ {
1073
+ "name": "pdaBump",
1074
+ "type": "u8"
1075
+ },
1076
+ {
1077
+ "name": "squadsMultisig",
1078
+ "type": "publicKey"
1079
+ },
1080
+ {
1081
+ "name": "squadsMultisigVault",
1082
+ "type": "publicKey"
1083
+ },
1084
+ {
1085
+ "name": "baseMint",
1086
+ "type": "publicKey"
1087
+ },
1088
+ {
1089
+ "name": "quoteMint",
1090
+ "type": "publicKey"
1091
+ },
1092
+ {
1093
+ "name": "proposalCount",
1094
+ "type": "u32"
1095
+ },
1096
+ {
1097
+ "name": "passThresholdBps",
1098
+ "type": "u16"
1099
+ },
1100
+ {
1101
+ "name": "secondsPerProposal",
1102
+ "type": "u32"
1103
+ },
1104
+ {
1105
+ "name": "twapInitialObservation",
1106
+ "docs": [
1107
+ "For manipulation-resistance the TWAP is a time-weighted average observation,",
1108
+ "where observation tries to approximate price but can only move by",
1109
+ "`twap_max_observation_change_per_update` per update. Because it can only move",
1110
+ "a little bit per update, you need to check that it has a good initial observation.",
1111
+ "Otherwise, an attacker could create a very high initial observation in the pass",
1112
+ "market and a very low one in the fail market to force the proposal to pass.",
1113
+ "",
1114
+ "We recommend setting an initial observation around the spot price of the token,",
1115
+ "and max observation change per update around 2% the spot price of the token.",
1116
+ "For example, if the spot price of META is $400, we'd recommend setting an initial",
1117
+ "observation of 400 (converted into the AMM prices) and a max observation change per",
1118
+ "update of 8 (also converted into the AMM prices). Observations can be updated once",
1119
+ "a minute, so 2% allows the proposal market to reach double the spot price or 0",
1120
+ "in 50 minutes."
1121
+ ],
1122
+ "type": "u128"
1123
+ },
1124
+ {
1125
+ "name": "twapMaxObservationChangePerUpdate",
1126
+ "type": "u128"
1127
+ },
1128
+ {
1129
+ "name": "twapStartDelaySeconds",
1130
+ "docs": [
1131
+ "Forces TWAP calculation to start after `twap_start_delay_seconds` seconds"
1132
+ ],
1133
+ "type": "u32"
1134
+ },
1135
+ {
1136
+ "name": "minQuoteFutarchicLiquidity",
1137
+ "docs": [
1138
+ "As an anti-spam measure and to help liquidity, you need to lock up some liquidity",
1139
+ "in both futarchic markets in order to create a proposal.",
1140
+ "",
1141
+ "For example, for META, we can use a `min_quote_futarchic_liquidity` of",
1142
+ "5000 * 1_000_000 (5000 USDC) and a `min_base_futarchic_liquidity` of",
1143
+ "10 * 1_000_000_000 (10 META)."
1144
+ ],
1145
+ "type": "u64"
1146
+ },
1147
+ {
1148
+ "name": "minBaseFutarchicLiquidity",
1149
+ "type": "u64"
1150
+ },
1151
+ {
1152
+ "name": "baseToStake",
1153
+ "docs": [
1154
+ "Minimum amount of base tokens that must be staked to launch a proposal"
1155
+ ],
1156
+ "type": "u64"
1157
+ },
1158
+ {
1159
+ "name": "seqNum",
1160
+ "type": "u64"
1161
+ },
1162
+ {
1163
+ "name": "initialSpendingLimit",
1164
+ "type": {
1165
+ "option": {
1166
+ "defined": "InitialSpendingLimit"
1167
+ }
1168
+ }
1169
+ },
1170
+ {
1171
+ "name": "teamSponsoredPassThresholdBps",
1172
+ "docs": [
1173
+ "The percentage, in basis points, the pass price needs to be above the",
1174
+ "fail price in order for the proposal to pass for team-sponsored proposals.",
1175
+ "",
1176
+ "Can be negative to allow for team-sponsored proposals to pass by default."
1177
+ ],
1178
+ "type": "i16"
1179
+ },
1180
+ {
1181
+ "name": "teamAddress",
1182
+ "type": "publicKey"
1183
+ }
1184
+ ]
1185
+ }
1186
+ },
1187
+ {
1188
+ "name": "proposal",
1189
+ "type": {
1190
+ "kind": "struct",
1191
+ "fields": [
1192
+ {
1193
+ "name": "number",
1194
+ "type": "u32"
1195
+ },
1196
+ {
1197
+ "name": "proposer",
1198
+ "type": "publicKey"
1199
+ },
1200
+ {
1201
+ "name": "timestampEnqueued",
1202
+ "type": "i64"
1203
+ },
1204
+ {
1205
+ "name": "state",
1206
+ "type": {
1207
+ "defined": "ProposalState"
1208
+ }
1209
+ },
1210
+ {
1211
+ "name": "baseVault",
1212
+ "type": "publicKey"
1213
+ },
1214
+ {
1215
+ "name": "quoteVault",
1216
+ "type": "publicKey"
1217
+ },
1218
+ {
1219
+ "name": "dao",
1220
+ "type": "publicKey"
1221
+ },
1222
+ {
1223
+ "name": "pdaBump",
1224
+ "type": "u8"
1225
+ },
1226
+ {
1227
+ "name": "question",
1228
+ "type": "publicKey"
1229
+ },
1230
+ {
1231
+ "name": "durationInSeconds",
1232
+ "type": "u32"
1233
+ },
1234
+ {
1235
+ "name": "squadsProposal",
1236
+ "type": "publicKey"
1237
+ },
1238
+ {
1239
+ "name": "passBaseMint",
1240
+ "type": "publicKey"
1241
+ },
1242
+ {
1243
+ "name": "passQuoteMint",
1244
+ "type": "publicKey"
1245
+ },
1246
+ {
1247
+ "name": "failBaseMint",
1248
+ "type": "publicKey"
1249
+ },
1250
+ {
1251
+ "name": "failQuoteMint",
1252
+ "type": "publicKey"
1253
+ },
1254
+ {
1255
+ "name": "isTeamSponsored",
1256
+ "type": "bool"
1257
+ }
1258
+ ]
1259
+ }
1260
+ },
1261
+ {
1262
+ "name": "stakeAccount",
1263
+ "type": {
1264
+ "kind": "struct",
1265
+ "fields": [
1266
+ {
1267
+ "name": "proposal",
1268
+ "type": "publicKey"
1269
+ },
1270
+ {
1271
+ "name": "staker",
1272
+ "type": "publicKey"
1273
+ },
1274
+ {
1275
+ "name": "amount",
1276
+ "type": "u64"
1277
+ },
1278
+ {
1279
+ "name": "bump",
1280
+ "type": "u8"
1281
+ }
1282
+ ]
1283
+ }
1284
+ }
1285
+ ],
1286
+ "types": [
1287
+ {
1288
+ "name": "CommonFields",
1289
+ "type": {
1290
+ "kind": "struct",
1291
+ "fields": [
1292
+ {
1293
+ "name": "slot",
1294
+ "type": "u64"
1295
+ },
1296
+ {
1297
+ "name": "unixTimestamp",
1298
+ "type": "i64"
1299
+ },
1300
+ {
1301
+ "name": "daoSeqNum",
1302
+ "type": "u64"
1303
+ }
1304
+ ]
1305
+ }
1306
+ },
1307
+ {
1308
+ "name": "ConditionalSwapParams",
1309
+ "type": {
1310
+ "kind": "struct",
1311
+ "fields": [
1312
+ {
1313
+ "name": "market",
1314
+ "type": {
1315
+ "defined": "Market"
1316
+ }
1317
+ },
1318
+ {
1319
+ "name": "swapType",
1320
+ "type": {
1321
+ "defined": "SwapType"
1322
+ }
1323
+ },
1324
+ {
1325
+ "name": "inputAmount",
1326
+ "type": "u64"
1327
+ },
1328
+ {
1329
+ "name": "minOutputAmount",
1330
+ "type": "u64"
1331
+ }
1332
+ ]
1333
+ }
1334
+ },
1335
+ {
1336
+ "name": "InitializeDaoParams",
1337
+ "type": {
1338
+ "kind": "struct",
1339
+ "fields": [
1340
+ {
1341
+ "name": "twapInitialObservation",
1342
+ "type": "u128"
1343
+ },
1344
+ {
1345
+ "name": "twapMaxObservationChangePerUpdate",
1346
+ "type": "u128"
1347
+ },
1348
+ {
1349
+ "name": "twapStartDelaySeconds",
1350
+ "type": "u32"
1351
+ },
1352
+ {
1353
+ "name": "minQuoteFutarchicLiquidity",
1354
+ "type": "u64"
1355
+ },
1356
+ {
1357
+ "name": "minBaseFutarchicLiquidity",
1358
+ "type": "u64"
1359
+ },
1360
+ {
1361
+ "name": "baseToStake",
1362
+ "type": "u64"
1363
+ },
1364
+ {
1365
+ "name": "passThresholdBps",
1366
+ "type": "u16"
1367
+ },
1368
+ {
1369
+ "name": "secondsPerProposal",
1370
+ "type": "u32"
1371
+ },
1372
+ {
1373
+ "name": "nonce",
1374
+ "type": "u64"
1375
+ },
1376
+ {
1377
+ "name": "initialSpendingLimit",
1378
+ "type": {
1379
+ "option": {
1380
+ "defined": "InitialSpendingLimit"
1381
+ }
1382
+ }
1383
+ },
1384
+ {
1385
+ "name": "teamSponsoredPassThresholdBps",
1386
+ "type": "i16"
1387
+ },
1388
+ {
1389
+ "name": "teamAddress",
1390
+ "type": "publicKey"
1391
+ }
1392
+ ]
1393
+ }
1394
+ },
1395
+ {
1396
+ "name": "ProvideLiquidityParams",
1397
+ "type": {
1398
+ "kind": "struct",
1399
+ "fields": [
1400
+ {
1401
+ "name": "quoteAmount",
1402
+ "docs": [
1403
+ "How much quote token you will deposit to the pool"
1404
+ ],
1405
+ "type": "u64"
1406
+ },
1407
+ {
1408
+ "name": "maxBaseAmount",
1409
+ "docs": [
1410
+ "The maximum base token you will deposit to the pool"
1411
+ ],
1412
+ "type": "u64"
1413
+ },
1414
+ {
1415
+ "name": "minLiquidity",
1416
+ "docs": [
1417
+ "The minimum liquidity you will be assigned"
1418
+ ],
1419
+ "type": "u128"
1420
+ },
1421
+ {
1422
+ "name": "positionAuthority",
1423
+ "docs": [
1424
+ "The account that will own the LP position, usually the same as the",
1425
+ "liquidity provider"
1426
+ ],
1427
+ "type": "publicKey"
1428
+ }
1429
+ ]
1430
+ }
1431
+ },
1432
+ {
1433
+ "name": "SpotSwapParams",
1434
+ "type": {
1435
+ "kind": "struct",
1436
+ "fields": [
1437
+ {
1438
+ "name": "inputAmount",
1439
+ "type": "u64"
1440
+ },
1441
+ {
1442
+ "name": "swapType",
1443
+ "type": {
1444
+ "defined": "SwapType"
1445
+ }
1446
+ },
1447
+ {
1448
+ "name": "minOutputAmount",
1449
+ "type": "u64"
1450
+ }
1451
+ ]
1452
+ }
1453
+ },
1454
+ {
1455
+ "name": "StakeToProposalParams",
1456
+ "type": {
1457
+ "kind": "struct",
1458
+ "fields": [
1459
+ {
1460
+ "name": "amount",
1461
+ "type": "u64"
1462
+ }
1463
+ ]
1464
+ }
1465
+ },
1466
+ {
1467
+ "name": "UnstakeFromProposalParams",
1468
+ "type": {
1469
+ "kind": "struct",
1470
+ "fields": [
1471
+ {
1472
+ "name": "amount",
1473
+ "type": "u64"
1474
+ }
1475
+ ]
1476
+ }
1477
+ },
1478
+ {
1479
+ "name": "UpdateDaoParams",
1480
+ "type": {
1481
+ "kind": "struct",
1482
+ "fields": [
1483
+ {
1484
+ "name": "passThresholdBps",
1485
+ "type": {
1486
+ "option": "u16"
1487
+ }
1488
+ },
1489
+ {
1490
+ "name": "secondsPerProposal",
1491
+ "type": {
1492
+ "option": "u32"
1493
+ }
1494
+ },
1495
+ {
1496
+ "name": "twapInitialObservation",
1497
+ "type": {
1498
+ "option": "u128"
1499
+ }
1500
+ },
1501
+ {
1502
+ "name": "twapMaxObservationChangePerUpdate",
1503
+ "type": {
1504
+ "option": "u128"
1505
+ }
1506
+ },
1507
+ {
1508
+ "name": "twapStartDelaySeconds",
1509
+ "type": {
1510
+ "option": "u32"
1511
+ }
1512
+ },
1513
+ {
1514
+ "name": "minQuoteFutarchicLiquidity",
1515
+ "type": {
1516
+ "option": "u64"
1517
+ }
1518
+ },
1519
+ {
1520
+ "name": "minBaseFutarchicLiquidity",
1521
+ "type": {
1522
+ "option": "u64"
1523
+ }
1524
+ },
1525
+ {
1526
+ "name": "baseToStake",
1527
+ "type": {
1528
+ "option": "u64"
1529
+ }
1530
+ },
1531
+ {
1532
+ "name": "teamSponsoredPassThresholdBps",
1533
+ "type": {
1534
+ "option": "i16"
1535
+ }
1536
+ },
1537
+ {
1538
+ "name": "teamAddress",
1539
+ "type": {
1540
+ "option": "publicKey"
1541
+ }
1542
+ }
1543
+ ]
1544
+ }
1545
+ },
1546
+ {
1547
+ "name": "WithdrawLiquidityParams",
1548
+ "type": {
1549
+ "kind": "struct",
1550
+ "fields": [
1551
+ {
1552
+ "name": "liquidityToWithdraw",
1553
+ "docs": [
1554
+ "How much liquidity to withdraw"
1555
+ ],
1556
+ "type": "u128"
1557
+ },
1558
+ {
1559
+ "name": "minBaseAmount",
1560
+ "docs": [
1561
+ "Minimum base tokens to receive"
1562
+ ],
1563
+ "type": "u64"
1564
+ },
1565
+ {
1566
+ "name": "minQuoteAmount",
1567
+ "docs": [
1568
+ "Minimum quote tokens to receive"
1569
+ ],
1570
+ "type": "u64"
1571
+ }
1572
+ ]
1573
+ }
1574
+ },
1575
+ {
1576
+ "name": "InitialSpendingLimit",
1577
+ "type": {
1578
+ "kind": "struct",
1579
+ "fields": [
1580
+ {
1581
+ "name": "amountPerMonth",
1582
+ "type": "u64"
1583
+ },
1584
+ {
1585
+ "name": "members",
1586
+ "type": {
1587
+ "vec": "publicKey"
1588
+ }
1589
+ }
1590
+ ]
1591
+ }
1592
+ },
1593
+ {
1594
+ "name": "FutarchyAmm",
1595
+ "type": {
1596
+ "kind": "struct",
1597
+ "fields": [
1598
+ {
1599
+ "name": "state",
1600
+ "type": {
1601
+ "defined": "PoolState"
1602
+ }
1603
+ },
1604
+ {
1605
+ "name": "totalLiquidity",
1606
+ "type": "u128"
1607
+ },
1608
+ {
1609
+ "name": "baseMint",
1610
+ "type": "publicKey"
1611
+ },
1612
+ {
1613
+ "name": "quoteMint",
1614
+ "type": "publicKey"
1615
+ },
1616
+ {
1617
+ "name": "ammBaseVault",
1618
+ "type": "publicKey"
1619
+ },
1620
+ {
1621
+ "name": "ammQuoteVault",
1622
+ "type": "publicKey"
1623
+ }
1624
+ ]
1625
+ }
1626
+ },
1627
+ {
1628
+ "name": "TwapOracle",
1629
+ "type": {
1630
+ "kind": "struct",
1631
+ "fields": [
1632
+ {
1633
+ "name": "aggregator",
1634
+ "docs": [
1635
+ "Running sum of slots_per_last_update * last_observation.",
1636
+ "",
1637
+ "Assuming latest observations are as big as possible (u64::MAX * 1e12),",
1638
+ "we can store 18 million slots worth of observations, which turns out to",
1639
+ "be ~85 days worth of slots.",
1640
+ "",
1641
+ "Assuming that latest observations are 100x smaller than they could theoretically",
1642
+ "be, we can store 8500 days (23 years) worth of them. Even this is a very",
1643
+ "very conservative assumption - META/USDC prices should be between 1e9 and",
1644
+ "1e15, which would overflow after 1e15 years worth of slots.",
1645
+ "",
1646
+ "So in the case of an overflow, the aggregator rolls back to 0. It's the",
1647
+ "client's responsibility to sanity check the assets or to handle an",
1648
+ "aggregator at T2 being smaller than an aggregator at T1."
1649
+ ],
1650
+ "type": "u128"
1651
+ },
1652
+ {
1653
+ "name": "lastUpdatedTimestamp",
1654
+ "type": "i64"
1655
+ },
1656
+ {
1657
+ "name": "createdAtTimestamp",
1658
+ "type": "i64"
1659
+ },
1660
+ {
1661
+ "name": "lastPrice",
1662
+ "docs": [
1663
+ "A price is the number of quote units per base unit multiplied by 1e12.",
1664
+ "You cannot simply divide by 1e12 to get a price you can display in the UI",
1665
+ "because the base and quote decimals may be different. Instead, do:",
1666
+ "ui_price = (price * (10**(base_decimals - quote_decimals))) / 1e12"
1667
+ ],
1668
+ "type": "u128"
1669
+ },
1670
+ {
1671
+ "name": "lastObservation",
1672
+ "docs": [
1673
+ "If we did a raw TWAP over prices, someone could push the TWAP heavily with",
1674
+ "a few extremely large outliers. So we use observations, which can only move",
1675
+ "by `max_observation_change_per_update` per update."
1676
+ ],
1677
+ "type": "u128"
1678
+ },
1679
+ {
1680
+ "name": "maxObservationChangePerUpdate",
1681
+ "docs": [
1682
+ "The most that an observation can change per update."
1683
+ ],
1684
+ "type": "u128"
1685
+ },
1686
+ {
1687
+ "name": "initialObservation",
1688
+ "docs": [
1689
+ "What the initial `latest_observation` is set to."
1690
+ ],
1691
+ "type": "u128"
1692
+ },
1693
+ {
1694
+ "name": "startDelaySeconds",
1695
+ "docs": [
1696
+ "Number of seconds after amm.created_at_slot to start recording TWAP"
1697
+ ],
1698
+ "type": "u32"
1699
+ }
1700
+ ]
1701
+ }
1702
+ },
1703
+ {
1704
+ "name": "Pool",
1705
+ "type": {
1706
+ "kind": "struct",
1707
+ "fields": [
1708
+ {
1709
+ "name": "oracle",
1710
+ "type": {
1711
+ "defined": "TwapOracle"
1712
+ }
1713
+ },
1714
+ {
1715
+ "name": "quoteReserves",
1716
+ "type": "u64"
1717
+ },
1718
+ {
1719
+ "name": "baseReserves",
1720
+ "type": "u64"
1721
+ },
1722
+ {
1723
+ "name": "quoteProtocolFeeBalance",
1724
+ "type": "u64"
1725
+ },
1726
+ {
1727
+ "name": "baseProtocolFeeBalance",
1728
+ "type": "u64"
1729
+ }
1730
+ ]
1731
+ }
1732
+ },
1733
+ {
1734
+ "name": "PoolState",
1735
+ "type": {
1736
+ "kind": "enum",
1737
+ "variants": [
1738
+ {
1739
+ "name": "Spot",
1740
+ "fields": [
1741
+ {
1742
+ "name": "spot",
1743
+ "type": {
1744
+ "defined": "Pool"
1745
+ }
1746
+ }
1747
+ ]
1748
+ },
1749
+ {
1750
+ "name": "Futarchy",
1751
+ "fields": [
1752
+ {
1753
+ "name": "spot",
1754
+ "type": {
1755
+ "defined": "Pool"
1756
+ }
1757
+ },
1758
+ {
1759
+ "name": "pass",
1760
+ "type": {
1761
+ "defined": "Pool"
1762
+ }
1763
+ },
1764
+ {
1765
+ "name": "fail",
1766
+ "type": {
1767
+ "defined": "Pool"
1768
+ }
1769
+ }
1770
+ ]
1771
+ }
1772
+ ]
1773
+ }
1774
+ },
1775
+ {
1776
+ "name": "Market",
1777
+ "type": {
1778
+ "kind": "enum",
1779
+ "variants": [
1780
+ {
1781
+ "name": "Spot"
1782
+ },
1783
+ {
1784
+ "name": "Pass"
1785
+ },
1786
+ {
1787
+ "name": "Fail"
1788
+ }
1789
+ ]
1790
+ }
1791
+ },
1792
+ {
1793
+ "name": "SwapType",
1794
+ "type": {
1795
+ "kind": "enum",
1796
+ "variants": [
1797
+ {
1798
+ "name": "Buy"
1799
+ },
1800
+ {
1801
+ "name": "Sell"
1802
+ }
1803
+ ]
1804
+ }
1805
+ },
1806
+ {
1807
+ "name": "Token",
1808
+ "type": {
1809
+ "kind": "enum",
1810
+ "variants": [
1811
+ {
1812
+ "name": "Base"
1813
+ },
1814
+ {
1815
+ "name": "Quote"
1816
+ }
1817
+ ]
1818
+ }
1819
+ },
1820
+ {
1821
+ "name": "ProposalState",
1822
+ "type": {
1823
+ "kind": "enum",
1824
+ "variants": [
1825
+ {
1826
+ "name": "Draft",
1827
+ "fields": [
1828
+ {
1829
+ "name": "amountStaked",
1830
+ "type": "u64"
1831
+ }
1832
+ ]
1833
+ },
1834
+ {
1835
+ "name": "Pending"
1836
+ },
1837
+ {
1838
+ "name": "Passed"
1839
+ },
1840
+ {
1841
+ "name": "Failed"
1842
+ }
1843
+ ]
1844
+ }
1845
+ }
1846
+ ],
1847
+ "events": [
1848
+ {
1849
+ "name": "CollectFeesEvent",
1850
+ "fields": [
1851
+ {
1852
+ "name": "common",
1853
+ "type": {
1854
+ "defined": "CommonFields"
1855
+ },
1856
+ "index": false
1857
+ },
1858
+ {
1859
+ "name": "dao",
1860
+ "type": "publicKey",
1861
+ "index": false
1862
+ },
1863
+ {
1864
+ "name": "baseTokenAccount",
1865
+ "type": "publicKey",
1866
+ "index": false
1867
+ },
1868
+ {
1869
+ "name": "quoteTokenAccount",
1870
+ "type": "publicKey",
1871
+ "index": false
1872
+ },
1873
+ {
1874
+ "name": "ammBaseVault",
1875
+ "type": "publicKey",
1876
+ "index": false
1877
+ },
1878
+ {
1879
+ "name": "ammQuoteVault",
1880
+ "type": "publicKey",
1881
+ "index": false
1882
+ },
1883
+ {
1884
+ "name": "quoteMint",
1885
+ "type": "publicKey",
1886
+ "index": false
1887
+ },
1888
+ {
1889
+ "name": "baseMint",
1890
+ "type": "publicKey",
1891
+ "index": false
1892
+ },
1893
+ {
1894
+ "name": "quoteFeesCollected",
1895
+ "type": "u64",
1896
+ "index": false
1897
+ },
1898
+ {
1899
+ "name": "baseFeesCollected",
1900
+ "type": "u64",
1901
+ "index": false
1902
+ },
1903
+ {
1904
+ "name": "postAmmState",
1905
+ "type": {
1906
+ "defined": "FutarchyAmm"
1907
+ },
1908
+ "index": false
1909
+ }
1910
+ ]
1911
+ },
1912
+ {
1913
+ "name": "InitializeDaoEvent",
1914
+ "fields": [
1915
+ {
1916
+ "name": "common",
1917
+ "type": {
1918
+ "defined": "CommonFields"
1919
+ },
1920
+ "index": false
1921
+ },
1922
+ {
1923
+ "name": "dao",
1924
+ "type": "publicKey",
1925
+ "index": false
1926
+ },
1927
+ {
1928
+ "name": "baseMint",
1929
+ "type": "publicKey",
1930
+ "index": false
1931
+ },
1932
+ {
1933
+ "name": "quoteMint",
1934
+ "type": "publicKey",
1935
+ "index": false
1936
+ },
1937
+ {
1938
+ "name": "passThresholdBps",
1939
+ "type": "u16",
1940
+ "index": false
1941
+ },
1942
+ {
1943
+ "name": "secondsPerProposal",
1944
+ "type": "u32",
1945
+ "index": false
1946
+ },
1947
+ {
1948
+ "name": "twapInitialObservation",
1949
+ "type": "u128",
1950
+ "index": false
1951
+ },
1952
+ {
1953
+ "name": "twapMaxObservationChangePerUpdate",
1954
+ "type": "u128",
1955
+ "index": false
1956
+ },
1957
+ {
1958
+ "name": "twapStartDelaySeconds",
1959
+ "type": "u32",
1960
+ "index": false
1961
+ },
1962
+ {
1963
+ "name": "minQuoteFutarchicLiquidity",
1964
+ "type": "u64",
1965
+ "index": false
1966
+ },
1967
+ {
1968
+ "name": "minBaseFutarchicLiquidity",
1969
+ "type": "u64",
1970
+ "index": false
1971
+ },
1972
+ {
1973
+ "name": "baseToStake",
1974
+ "type": "u64",
1975
+ "index": false
1976
+ },
1977
+ {
1978
+ "name": "initialSpendingLimit",
1979
+ "type": {
1980
+ "option": {
1981
+ "defined": "InitialSpendingLimit"
1982
+ }
1983
+ },
1984
+ "index": false
1985
+ },
1986
+ {
1987
+ "name": "squadsMultisig",
1988
+ "type": "publicKey",
1989
+ "index": false
1990
+ },
1991
+ {
1992
+ "name": "squadsMultisigVault",
1993
+ "type": "publicKey",
1994
+ "index": false
1995
+ },
1996
+ {
1997
+ "name": "teamSponsoredPassThresholdBps",
1998
+ "type": "i16",
1999
+ "index": false
2000
+ },
2001
+ {
2002
+ "name": "teamAddress",
2003
+ "type": "publicKey",
2004
+ "index": false
2005
+ }
2006
+ ]
2007
+ },
2008
+ {
2009
+ "name": "UpdateDaoEvent",
2010
+ "fields": [
2011
+ {
2012
+ "name": "common",
2013
+ "type": {
2014
+ "defined": "CommonFields"
2015
+ },
2016
+ "index": false
2017
+ },
2018
+ {
2019
+ "name": "dao",
2020
+ "type": "publicKey",
2021
+ "index": false
2022
+ },
2023
+ {
2024
+ "name": "passThresholdBps",
2025
+ "type": "u16",
2026
+ "index": false
2027
+ },
2028
+ {
2029
+ "name": "secondsPerProposal",
2030
+ "type": "u32",
2031
+ "index": false
2032
+ },
2033
+ {
2034
+ "name": "twapInitialObservation",
2035
+ "type": "u128",
2036
+ "index": false
2037
+ },
2038
+ {
2039
+ "name": "twapMaxObservationChangePerUpdate",
2040
+ "type": "u128",
2041
+ "index": false
2042
+ },
2043
+ {
2044
+ "name": "twapStartDelaySeconds",
2045
+ "type": "u32",
2046
+ "index": false
2047
+ },
2048
+ {
2049
+ "name": "minQuoteFutarchicLiquidity",
2050
+ "type": "u64",
2051
+ "index": false
2052
+ },
2053
+ {
2054
+ "name": "minBaseFutarchicLiquidity",
2055
+ "type": "u64",
2056
+ "index": false
2057
+ },
2058
+ {
2059
+ "name": "baseToStake",
2060
+ "type": "u64",
2061
+ "index": false
2062
+ },
2063
+ {
2064
+ "name": "teamSponsoredPassThresholdBps",
2065
+ "type": "i16",
2066
+ "index": false
2067
+ },
2068
+ {
2069
+ "name": "teamAddress",
2070
+ "type": "publicKey",
2071
+ "index": false
2072
+ }
2073
+ ]
2074
+ },
2075
+ {
2076
+ "name": "InitializeProposalEvent",
2077
+ "fields": [
2078
+ {
2079
+ "name": "common",
2080
+ "type": {
2081
+ "defined": "CommonFields"
2082
+ },
2083
+ "index": false
2084
+ },
2085
+ {
2086
+ "name": "proposal",
2087
+ "type": "publicKey",
2088
+ "index": false
2089
+ },
2090
+ {
2091
+ "name": "dao",
2092
+ "type": "publicKey",
2093
+ "index": false
2094
+ },
2095
+ {
2096
+ "name": "question",
2097
+ "type": "publicKey",
2098
+ "index": false
2099
+ },
2100
+ {
2101
+ "name": "quoteVault",
2102
+ "type": "publicKey",
2103
+ "index": false
2104
+ },
2105
+ {
2106
+ "name": "baseVault",
2107
+ "type": "publicKey",
2108
+ "index": false
2109
+ },
2110
+ {
2111
+ "name": "proposer",
2112
+ "type": "publicKey",
2113
+ "index": false
2114
+ },
2115
+ {
2116
+ "name": "number",
2117
+ "type": "u32",
2118
+ "index": false
2119
+ },
2120
+ {
2121
+ "name": "pdaBump",
2122
+ "type": "u8",
2123
+ "index": false
2124
+ },
2125
+ {
2126
+ "name": "durationInSeconds",
2127
+ "type": "u32",
2128
+ "index": false
2129
+ },
2130
+ {
2131
+ "name": "squadsProposal",
2132
+ "type": "publicKey",
2133
+ "index": false
2134
+ },
2135
+ {
2136
+ "name": "squadsMultisig",
2137
+ "type": "publicKey",
2138
+ "index": false
2139
+ },
2140
+ {
2141
+ "name": "squadsMultisigVault",
2142
+ "type": "publicKey",
2143
+ "index": false
2144
+ }
2145
+ ]
2146
+ },
2147
+ {
2148
+ "name": "StakeToProposalEvent",
2149
+ "fields": [
2150
+ {
2151
+ "name": "common",
2152
+ "type": {
2153
+ "defined": "CommonFields"
2154
+ },
2155
+ "index": false
2156
+ },
2157
+ {
2158
+ "name": "proposal",
2159
+ "type": "publicKey",
2160
+ "index": false
2161
+ },
2162
+ {
2163
+ "name": "staker",
2164
+ "type": "publicKey",
2165
+ "index": false
2166
+ },
2167
+ {
2168
+ "name": "amount",
2169
+ "type": "u64",
2170
+ "index": false
2171
+ },
2172
+ {
2173
+ "name": "totalStaked",
2174
+ "type": "u64",
2175
+ "index": false
2176
+ }
2177
+ ]
2178
+ },
2179
+ {
2180
+ "name": "UnstakeFromProposalEvent",
2181
+ "fields": [
2182
+ {
2183
+ "name": "common",
2184
+ "type": {
2185
+ "defined": "CommonFields"
2186
+ },
2187
+ "index": false
2188
+ },
2189
+ {
2190
+ "name": "proposal",
2191
+ "type": "publicKey",
2192
+ "index": false
2193
+ },
2194
+ {
2195
+ "name": "staker",
2196
+ "type": "publicKey",
2197
+ "index": false
2198
+ },
2199
+ {
2200
+ "name": "amount",
2201
+ "type": "u64",
2202
+ "index": false
2203
+ },
2204
+ {
2205
+ "name": "totalStaked",
2206
+ "type": "u64",
2207
+ "index": false
2208
+ }
2209
+ ]
2210
+ },
2211
+ {
2212
+ "name": "LaunchProposalEvent",
2213
+ "fields": [
2214
+ {
2215
+ "name": "common",
2216
+ "type": {
2217
+ "defined": "CommonFields"
2218
+ },
2219
+ "index": false
2220
+ },
2221
+ {
2222
+ "name": "proposal",
2223
+ "type": "publicKey",
2224
+ "index": false
2225
+ },
2226
+ {
2227
+ "name": "dao",
2228
+ "type": "publicKey",
2229
+ "index": false
2230
+ },
2231
+ {
2232
+ "name": "timestampEnqueued",
2233
+ "type": "i64",
2234
+ "index": false
2235
+ },
2236
+ {
2237
+ "name": "totalStaked",
2238
+ "type": "u64",
2239
+ "index": false
2240
+ },
2241
+ {
2242
+ "name": "postAmmState",
2243
+ "type": {
2244
+ "defined": "FutarchyAmm"
2245
+ },
2246
+ "index": false
2247
+ }
2248
+ ]
2249
+ },
2250
+ {
2251
+ "name": "FinalizeProposalEvent",
2252
+ "fields": [
2253
+ {
2254
+ "name": "common",
2255
+ "type": {
2256
+ "defined": "CommonFields"
2257
+ },
2258
+ "index": false
2259
+ },
2260
+ {
2261
+ "name": "proposal",
2262
+ "type": "publicKey",
2263
+ "index": false
2264
+ },
2265
+ {
2266
+ "name": "dao",
2267
+ "type": "publicKey",
2268
+ "index": false
2269
+ },
2270
+ {
2271
+ "name": "passMarketTwap",
2272
+ "type": "u128",
2273
+ "index": false
2274
+ },
2275
+ {
2276
+ "name": "failMarketTwap",
2277
+ "type": "u128",
2278
+ "index": false
2279
+ },
2280
+ {
2281
+ "name": "threshold",
2282
+ "type": "u128",
2283
+ "index": false
2284
+ },
2285
+ {
2286
+ "name": "state",
2287
+ "type": {
2288
+ "defined": "ProposalState"
2289
+ },
2290
+ "index": false
2291
+ },
2292
+ {
2293
+ "name": "squadsProposal",
2294
+ "type": "publicKey",
2295
+ "index": false
2296
+ },
2297
+ {
2298
+ "name": "squadsMultisig",
2299
+ "type": "publicKey",
2300
+ "index": false
2301
+ },
2302
+ {
2303
+ "name": "postAmmState",
2304
+ "type": {
2305
+ "defined": "FutarchyAmm"
2306
+ },
2307
+ "index": false
2308
+ },
2309
+ {
2310
+ "name": "isTeamSponsored",
2311
+ "type": "bool",
2312
+ "index": false
2313
+ }
2314
+ ]
2315
+ },
2316
+ {
2317
+ "name": "SpotSwapEvent",
2318
+ "fields": [
2319
+ {
2320
+ "name": "common",
2321
+ "type": {
2322
+ "defined": "CommonFields"
2323
+ },
2324
+ "index": false
2325
+ },
2326
+ {
2327
+ "name": "dao",
2328
+ "type": "publicKey",
2329
+ "index": false
2330
+ },
2331
+ {
2332
+ "name": "user",
2333
+ "type": "publicKey",
2334
+ "index": false
2335
+ },
2336
+ {
2337
+ "name": "swapType",
2338
+ "type": {
2339
+ "defined": "SwapType"
2340
+ },
2341
+ "index": false
2342
+ },
2343
+ {
2344
+ "name": "inputAmount",
2345
+ "type": "u64",
2346
+ "index": false
2347
+ },
2348
+ {
2349
+ "name": "outputAmount",
2350
+ "type": "u64",
2351
+ "index": false
2352
+ },
2353
+ {
2354
+ "name": "minOutputAmount",
2355
+ "type": "u64",
2356
+ "index": false
2357
+ },
2358
+ {
2359
+ "name": "postAmmState",
2360
+ "type": {
2361
+ "defined": "FutarchyAmm"
2362
+ },
2363
+ "index": false
2364
+ }
2365
+ ]
2366
+ },
2367
+ {
2368
+ "name": "ConditionalSwapEvent",
2369
+ "fields": [
2370
+ {
2371
+ "name": "common",
2372
+ "type": {
2373
+ "defined": "CommonFields"
2374
+ },
2375
+ "index": false
2376
+ },
2377
+ {
2378
+ "name": "dao",
2379
+ "type": "publicKey",
2380
+ "index": false
2381
+ },
2382
+ {
2383
+ "name": "proposal",
2384
+ "type": "publicKey",
2385
+ "index": false
2386
+ },
2387
+ {
2388
+ "name": "trader",
2389
+ "type": "publicKey",
2390
+ "index": false
2391
+ },
2392
+ {
2393
+ "name": "market",
2394
+ "type": {
2395
+ "defined": "Market"
2396
+ },
2397
+ "index": false
2398
+ },
2399
+ {
2400
+ "name": "swapType",
2401
+ "type": {
2402
+ "defined": "SwapType"
2403
+ },
2404
+ "index": false
2405
+ },
2406
+ {
2407
+ "name": "inputAmount",
2408
+ "type": "u64",
2409
+ "index": false
2410
+ },
2411
+ {
2412
+ "name": "outputAmount",
2413
+ "type": "u64",
2414
+ "index": false
2415
+ },
2416
+ {
2417
+ "name": "minOutputAmount",
2418
+ "type": "u64",
2419
+ "index": false
2420
+ },
2421
+ {
2422
+ "name": "postAmmState",
2423
+ "type": {
2424
+ "defined": "FutarchyAmm"
2425
+ },
2426
+ "index": false
2427
+ }
2428
+ ]
2429
+ },
2430
+ {
2431
+ "name": "ProvideLiquidityEvent",
2432
+ "fields": [
2433
+ {
2434
+ "name": "common",
2435
+ "type": {
2436
+ "defined": "CommonFields"
2437
+ },
2438
+ "index": false
2439
+ },
2440
+ {
2441
+ "name": "dao",
2442
+ "type": "publicKey",
2443
+ "index": false
2444
+ },
2445
+ {
2446
+ "name": "liquidityProvider",
2447
+ "type": "publicKey",
2448
+ "index": false
2449
+ },
2450
+ {
2451
+ "name": "positionAuthority",
2452
+ "type": "publicKey",
2453
+ "index": false
2454
+ },
2455
+ {
2456
+ "name": "quoteAmount",
2457
+ "type": "u64",
2458
+ "index": false
2459
+ },
2460
+ {
2461
+ "name": "baseAmount",
2462
+ "type": "u64",
2463
+ "index": false
2464
+ },
2465
+ {
2466
+ "name": "liquidityMinted",
2467
+ "type": "u128",
2468
+ "index": false
2469
+ },
2470
+ {
2471
+ "name": "minLiquidity",
2472
+ "type": "u128",
2473
+ "index": false
2474
+ },
2475
+ {
2476
+ "name": "postAmmState",
2477
+ "type": {
2478
+ "defined": "FutarchyAmm"
2479
+ },
2480
+ "index": false
2481
+ }
2482
+ ]
2483
+ },
2484
+ {
2485
+ "name": "WithdrawLiquidityEvent",
2486
+ "fields": [
2487
+ {
2488
+ "name": "common",
2489
+ "type": {
2490
+ "defined": "CommonFields"
2491
+ },
2492
+ "index": false
2493
+ },
2494
+ {
2495
+ "name": "dao",
2496
+ "type": "publicKey",
2497
+ "index": false
2498
+ },
2499
+ {
2500
+ "name": "liquidityProvider",
2501
+ "type": "publicKey",
2502
+ "index": false
2503
+ },
2504
+ {
2505
+ "name": "liquidityWithdrawn",
2506
+ "type": "u128",
2507
+ "index": false
2508
+ },
2509
+ {
2510
+ "name": "minBaseAmount",
2511
+ "type": "u64",
2512
+ "index": false
2513
+ },
2514
+ {
2515
+ "name": "minQuoteAmount",
2516
+ "type": "u64",
2517
+ "index": false
2518
+ },
2519
+ {
2520
+ "name": "baseAmount",
2521
+ "type": "u64",
2522
+ "index": false
2523
+ },
2524
+ {
2525
+ "name": "quoteAmount",
2526
+ "type": "u64",
2527
+ "index": false
2528
+ },
2529
+ {
2530
+ "name": "postAmmState",
2531
+ "type": {
2532
+ "defined": "FutarchyAmm"
2533
+ },
2534
+ "index": false
2535
+ }
2536
+ ]
2537
+ },
2538
+ {
2539
+ "name": "SponsorProposalEvent",
2540
+ "fields": [
2541
+ {
2542
+ "name": "common",
2543
+ "type": {
2544
+ "defined": "CommonFields"
2545
+ },
2546
+ "index": false
2547
+ },
2548
+ {
2549
+ "name": "proposal",
2550
+ "type": "publicKey",
2551
+ "index": false
2552
+ },
2553
+ {
2554
+ "name": "dao",
2555
+ "type": "publicKey",
2556
+ "index": false
2557
+ },
2558
+ {
2559
+ "name": "teamAddress",
2560
+ "type": "publicKey",
2561
+ "index": false
2562
+ }
2563
+ ]
2564
+ }
2565
+ ],
2566
+ "errors": [
2567
+ {
2568
+ "code": 6000,
2569
+ "name": "AmmTooOld",
2570
+ "msg": "Amms must have been created within 5 minutes (counted in slots) of proposal initialization"
2571
+ },
2572
+ {
2573
+ "code": 6001,
2574
+ "name": "InvalidInitialObservation",
2575
+ "msg": "An amm has an `initial_observation` that doesn't match the `dao`'s config"
2576
+ },
2577
+ {
2578
+ "code": 6002,
2579
+ "name": "InvalidMaxObservationChange",
2580
+ "msg": "An amm has a `max_observation_change_per_update` that doesn't match the `dao`'s config"
2581
+ },
2582
+ {
2583
+ "code": 6003,
2584
+ "name": "InvalidStartDelaySlots",
2585
+ "msg": "An amm has a `start_delay_slots` that doesn't match the `dao`'s config"
2586
+ },
2587
+ {
2588
+ "code": 6004,
2589
+ "name": "InvalidSettlementAuthority",
2590
+ "msg": "One of the vaults has an invalid `settlement_authority`"
2591
+ },
2592
+ {
2593
+ "code": 6005,
2594
+ "name": "ProposalTooYoung",
2595
+ "msg": "Proposal is too young to be executed or rejected"
2596
+ },
2597
+ {
2598
+ "code": 6006,
2599
+ "name": "MarketsTooYoung",
2600
+ "msg": "Markets too young for proposal to be finalized. TWAP might need to be cranked"
2601
+ },
2602
+ {
2603
+ "code": 6007,
2604
+ "name": "ProposalAlreadyFinalized",
2605
+ "msg": "This proposal has already been finalized"
2606
+ },
2607
+ {
2608
+ "code": 6008,
2609
+ "name": "InvalidVaultNonce",
2610
+ "msg": "A conditional vault has an invalid nonce. A nonce should encode the proposal number"
2611
+ },
2612
+ {
2613
+ "code": 6009,
2614
+ "name": "ProposalNotPassed",
2615
+ "msg": "This proposal can't be executed because it isn't in the passed state"
2616
+ },
2617
+ {
2618
+ "code": 6010,
2619
+ "name": "InsufficientLiquidity",
2620
+ "msg": "More liquidity needs to be in the AMM to launch this proposal"
2621
+ },
2622
+ {
2623
+ "code": 6011,
2624
+ "name": "ProposalDurationTooShort",
2625
+ "msg": "Proposal duration must be longer 1 day and longer than 2 times the TWAP start delay"
2626
+ },
2627
+ {
2628
+ "code": 6012,
2629
+ "name": "PassThresholdTooHigh",
2630
+ "msg": "Pass threshold must be less than 10%"
2631
+ },
2632
+ {
2633
+ "code": 6013,
2634
+ "name": "QuestionMustBeBinary",
2635
+ "msg": "Question must have exactly 2 outcomes for binary futarchy"
2636
+ },
2637
+ {
2638
+ "code": 6014,
2639
+ "name": "InvalidSquadsProposalStatus",
2640
+ "msg": "Squads proposal must be in Draft status"
2641
+ },
2642
+ {
2643
+ "code": 6015,
2644
+ "name": "CastingOverflow",
2645
+ "msg": "Casting overflow. If you're seeing this, please report this"
2646
+ },
2647
+ {
2648
+ "code": 6016,
2649
+ "name": "InsufficientBalance",
2650
+ "msg": "Insufficient balance"
2651
+ },
2652
+ {
2653
+ "code": 6017,
2654
+ "name": "ZeroLiquidityRemove",
2655
+ "msg": "Cannot remove zero liquidity"
2656
+ },
2657
+ {
2658
+ "code": 6018,
2659
+ "name": "SwapSlippageExceeded",
2660
+ "msg": "Swap slippage exceeded"
2661
+ },
2662
+ {
2663
+ "code": 6019,
2664
+ "name": "AssertFailed",
2665
+ "msg": "Assert failed"
2666
+ },
2667
+ {
2668
+ "code": 6020,
2669
+ "name": "InvalidAdmin",
2670
+ "msg": "Invalid admin"
2671
+ },
2672
+ {
2673
+ "code": 6021,
2674
+ "name": "ProposalNotInDraftState",
2675
+ "msg": "Proposal is not in draft state"
2676
+ },
2677
+ {
2678
+ "code": 6022,
2679
+ "name": "InsufficientTokenBalance",
2680
+ "msg": "Insufficient token balance"
2681
+ },
2682
+ {
2683
+ "code": 6023,
2684
+ "name": "InvalidAmount",
2685
+ "msg": "Invalid amount"
2686
+ },
2687
+ {
2688
+ "code": 6024,
2689
+ "name": "InsufficientStakeToLaunch",
2690
+ "msg": "Insufficient stake to launch proposal"
2691
+ },
2692
+ {
2693
+ "code": 6025,
2694
+ "name": "StakerNotFound",
2695
+ "msg": "Staker not found in proposal"
2696
+ },
2697
+ {
2698
+ "code": 6026,
2699
+ "name": "PoolNotInSpotState",
2700
+ "msg": "Pool must be in spot state"
2701
+ },
2702
+ {
2703
+ "code": 6027,
2704
+ "name": "InvalidDaoCreateLiquidity",
2705
+ "msg": "If you're providing liquidity, you must provide both base and quote token accounts"
2706
+ },
2707
+ {
2708
+ "code": 6028,
2709
+ "name": "InvalidStakeAccount",
2710
+ "msg": "Invalid stake account"
2711
+ },
2712
+ {
2713
+ "code": 6029,
2714
+ "name": "InvariantViolated",
2715
+ "msg": "An invariant was violated. You should get in contact with the MetaDAO team if you see this"
2716
+ },
2717
+ {
2718
+ "code": 6030,
2719
+ "name": "ProposalNotActive",
2720
+ "msg": "Proposal needs to be active to perform a conditional swap"
2721
+ },
2722
+ {
2723
+ "code": 6031,
2724
+ "name": "InvalidTransaction",
2725
+ "msg": "This Squads transaction should only contain calls to update spending limits"
2726
+ },
2727
+ {
2728
+ "code": 6032,
2729
+ "name": "ProposalAlreadySponsored",
2730
+ "msg": "Proposal has already been sponsored"
2731
+ },
2732
+ {
2733
+ "code": 6033,
2734
+ "name": "InvalidTeamSponsoredPassThreshold",
2735
+ "msg": "Team sponsored pass threshold must be between -10% and 10%"
2736
+ }
2737
+ ]
2738
+ };
2739
+ //# sourceMappingURL=futarchy.js.map