@metadaoproject/futarchy 0.4.0-alpha.0 → 0.4.0-alpha.10

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 (55) hide show
  1. package/package.json +5 -1
  2. package/dist/index.d.ts +0 -1
  3. package/dist/index.js +0 -16
  4. package/dist/index.js.map +0 -1
  5. package/dist/v0.4/AmmClient.d.ts +0 -246
  6. package/dist/v0.4/AmmClient.js +0 -272
  7. package/dist/v0.4/AmmClient.js.map +0 -1
  8. package/dist/v0.4/AutocratClient.d.ts +0 -225
  9. package/dist/v0.4/AutocratClient.js +0 -361
  10. package/dist/v0.4/AutocratClient.js.map +0 -1
  11. package/dist/v0.4/ConditionalVaultClient.d.ts +0 -275
  12. package/dist/v0.4/ConditionalVaultClient.js +0 -222
  13. package/dist/v0.4/ConditionalVaultClient.js.map +0 -1
  14. package/dist/v0.4/constants.d.ts +0 -9
  15. package/dist/v0.4/constants.js +0 -10
  16. package/dist/v0.4/constants.js.map +0 -1
  17. package/dist/v0.4/index.d.ts +0 -6
  18. package/dist/v0.4/index.js +0 -7
  19. package/dist/v0.4/index.js.map +0 -1
  20. package/dist/v0.4/types/amm.d.ts +0 -542
  21. package/dist/v0.4/types/amm.js +0 -542
  22. package/dist/v0.4/types/amm.js.map +0 -1
  23. package/dist/v0.4/types/autocrat.d.ts +0 -636
  24. package/dist/v0.4/types/autocrat.js +0 -636
  25. package/dist/v0.4/types/autocrat.js.map +0 -1
  26. package/dist/v0.4/types/conditional_vault.d.ts +0 -503
  27. package/dist/v0.4/types/conditional_vault.js +0 -503
  28. package/dist/v0.4/types/conditional_vault.js.map +0 -1
  29. package/dist/v0.4/types/index.d.ts +0 -21
  30. package/dist/v0.4/types/index.js +0 -4
  31. package/dist/v0.4/types/index.js.map +0 -1
  32. package/dist/v0.4/types/utils.d.ts +0 -3
  33. package/dist/v0.4/types/utils.js +0 -2
  34. package/dist/v0.4/types/utils.js.map +0 -1
  35. package/dist/v0.4/utils/cu.d.ts +0 -10
  36. package/dist/v0.4/utils/cu.js +0 -11
  37. package/dist/v0.4/utils/cu.js.map +0 -1
  38. package/dist/v0.4/utils/filters.d.ts +0 -3
  39. package/dist/v0.4/utils/filters.js +0 -14
  40. package/dist/v0.4/utils/filters.js.map +0 -1
  41. package/dist/v0.4/utils/index.d.ts +0 -16
  42. package/dist/v0.4/utils/index.js +0 -30
  43. package/dist/v0.4/utils/index.js.map +0 -1
  44. package/dist/v0.4/utils/instruction.d.ts +0 -4
  45. package/dist/v0.4/utils/instruction.js +0 -10
  46. package/dist/v0.4/utils/instruction.js.map +0 -1
  47. package/dist/v0.4/utils/metadata.d.ts +0 -4
  48. package/dist/v0.4/utils/metadata.js +0 -26
  49. package/dist/v0.4/utils/metadata.js.map +0 -1
  50. package/dist/v0.4/utils/pda.d.ts +0 -12
  51. package/dist/v0.4/utils/pda.js +0 -66
  52. package/dist/v0.4/utils/pda.js.map +0 -1
  53. package/dist/v0.4/utils/priceMath.d.ts +0 -12
  54. package/dist/v0.4/utils/priceMath.js +0 -52
  55. package/dist/v0.4/utils/priceMath.js.map +0 -1
@@ -1,636 +0,0 @@
1
- export const IDL = {
2
- version: "0.3.0",
3
- name: "autocrat",
4
- instructions: [
5
- {
6
- name: "initializeDao",
7
- accounts: [
8
- {
9
- name: "dao",
10
- isMut: true,
11
- isSigner: true,
12
- },
13
- {
14
- name: "payer",
15
- isMut: true,
16
- isSigner: true,
17
- },
18
- {
19
- name: "systemProgram",
20
- isMut: false,
21
- isSigner: false,
22
- },
23
- {
24
- name: "tokenMint",
25
- isMut: false,
26
- isSigner: false,
27
- },
28
- {
29
- name: "usdcMint",
30
- isMut: false,
31
- isSigner: false,
32
- },
33
- ],
34
- args: [
35
- {
36
- name: "params",
37
- type: {
38
- defined: "InitializeDaoParams",
39
- },
40
- },
41
- ],
42
- },
43
- {
44
- name: "initializeProposal",
45
- accounts: [
46
- {
47
- name: "proposal",
48
- isMut: true,
49
- isSigner: false,
50
- },
51
- {
52
- name: "dao",
53
- isMut: true,
54
- isSigner: false,
55
- },
56
- {
57
- name: "question",
58
- isMut: false,
59
- isSigner: false,
60
- },
61
- {
62
- name: "quoteVault",
63
- isMut: false,
64
- isSigner: false,
65
- },
66
- {
67
- name: "baseVault",
68
- isMut: false,
69
- isSigner: false,
70
- },
71
- {
72
- name: "passAmm",
73
- isMut: false,
74
- isSigner: false,
75
- },
76
- {
77
- name: "passLpMint",
78
- isMut: false,
79
- isSigner: false,
80
- },
81
- {
82
- name: "failLpMint",
83
- isMut: false,
84
- isSigner: false,
85
- },
86
- {
87
- name: "failAmm",
88
- isMut: false,
89
- isSigner: false,
90
- },
91
- {
92
- name: "passLpUserAccount",
93
- isMut: true,
94
- isSigner: false,
95
- },
96
- {
97
- name: "failLpUserAccount",
98
- isMut: true,
99
- isSigner: false,
100
- },
101
- {
102
- name: "passLpVaultAccount",
103
- isMut: true,
104
- isSigner: false,
105
- },
106
- {
107
- name: "failLpVaultAccount",
108
- isMut: true,
109
- isSigner: false,
110
- },
111
- {
112
- name: "proposer",
113
- isMut: true,
114
- isSigner: true,
115
- },
116
- {
117
- name: "tokenProgram",
118
- isMut: false,
119
- isSigner: false,
120
- },
121
- {
122
- name: "systemProgram",
123
- isMut: false,
124
- isSigner: false,
125
- },
126
- ],
127
- args: [
128
- {
129
- name: "params",
130
- type: {
131
- defined: "InitializeProposalParams",
132
- },
133
- },
134
- ],
135
- },
136
- {
137
- name: "finalizeProposal",
138
- accounts: [
139
- {
140
- name: "proposal",
141
- isMut: true,
142
- isSigner: false,
143
- },
144
- {
145
- name: "passAmm",
146
- isMut: false,
147
- isSigner: false,
148
- },
149
- {
150
- name: "failAmm",
151
- isMut: false,
152
- isSigner: false,
153
- },
154
- {
155
- name: "dao",
156
- isMut: false,
157
- isSigner: false,
158
- },
159
- {
160
- name: "question",
161
- isMut: true,
162
- isSigner: false,
163
- },
164
- {
165
- name: "treasury",
166
- isMut: false,
167
- isSigner: false,
168
- },
169
- {
170
- name: "passLpUserAccount",
171
- isMut: true,
172
- isSigner: false,
173
- },
174
- {
175
- name: "failLpUserAccount",
176
- isMut: true,
177
- isSigner: false,
178
- },
179
- {
180
- name: "passLpVaultAccount",
181
- isMut: true,
182
- isSigner: false,
183
- },
184
- {
185
- name: "failLpVaultAccount",
186
- isMut: true,
187
- isSigner: false,
188
- },
189
- {
190
- name: "tokenProgram",
191
- isMut: false,
192
- isSigner: false,
193
- },
194
- {
195
- name: "vaultProgram",
196
- isMut: false,
197
- isSigner: false,
198
- },
199
- ],
200
- args: [],
201
- },
202
- {
203
- name: "executeProposal",
204
- accounts: [
205
- {
206
- name: "proposal",
207
- isMut: true,
208
- isSigner: false,
209
- },
210
- {
211
- name: "dao",
212
- isMut: false,
213
- isSigner: false,
214
- },
215
- ],
216
- args: [],
217
- },
218
- {
219
- name: "updateDao",
220
- accounts: [
221
- {
222
- name: "dao",
223
- isMut: true,
224
- isSigner: false,
225
- },
226
- {
227
- name: "treasury",
228
- isMut: false,
229
- isSigner: true,
230
- },
231
- ],
232
- args: [
233
- {
234
- name: "daoParams",
235
- type: {
236
- defined: "UpdateDaoParams",
237
- },
238
- },
239
- ],
240
- },
241
- ],
242
- accounts: [
243
- {
244
- name: "dao",
245
- type: {
246
- kind: "struct",
247
- fields: [
248
- {
249
- name: "treasuryPdaBump",
250
- type: "u8",
251
- },
252
- {
253
- name: "treasury",
254
- type: "publicKey",
255
- },
256
- {
257
- name: "tokenMint",
258
- type: "publicKey",
259
- },
260
- {
261
- name: "usdcMint",
262
- type: "publicKey",
263
- },
264
- {
265
- name: "proposalCount",
266
- type: "u32",
267
- },
268
- {
269
- name: "passThresholdBps",
270
- type: "u16",
271
- },
272
- {
273
- name: "slotsPerProposal",
274
- type: "u64",
275
- },
276
- {
277
- name: "twapInitialObservation",
278
- docs: [
279
- "For manipulation-resistance the TWAP is a time-weighted average observation,",
280
- "where observation tries to approximate price but can only move by",
281
- "`twap_max_observation_change_per_update` per update. Because it can only move",
282
- "a little bit per update, you need to check that it has a good initial observation.",
283
- "Otherwise, an attacker could create a very high initial observation in the pass",
284
- "market and a very low one in the fail market to force the proposal to pass.",
285
- "",
286
- "We recommend setting an initial observation around the spot price of the token,",
287
- "and max observation change per update around 2% the spot price of the token.",
288
- "For example, if the spot price of META is $400, we'd recommend setting an initial",
289
- "observation of 400 (converted into the AMM prices) and a max observation change per",
290
- "update of 8 (also converted into the AMM prices). Observations can be updated once",
291
- "a minute, so 2% allows the proposal market to reach double the spot price or 0",
292
- "in 50 minutes.",
293
- ],
294
- type: "u128",
295
- },
296
- {
297
- name: "twapMaxObservationChangePerUpdate",
298
- type: "u128",
299
- },
300
- {
301
- name: "minQuoteFutarchicLiquidity",
302
- docs: [
303
- "As an anti-spam measure and to help liquidity, you need to lock up some liquidity",
304
- "in both futarchic markets in order to create a proposal.",
305
- "",
306
- "For example, for META, we can use a `min_quote_futarchic_liquidity` of",
307
- "5000 * 1_000_000 (5000 USDC) and a `min_base_futarchic_liquidity` of",
308
- "10 * 1_000_000_000 (10 META).",
309
- ],
310
- type: "u64",
311
- },
312
- {
313
- name: "minBaseFutarchicLiquidity",
314
- type: "u64",
315
- },
316
- ],
317
- },
318
- },
319
- {
320
- name: "proposal",
321
- type: {
322
- kind: "struct",
323
- fields: [
324
- {
325
- name: "number",
326
- type: "u32",
327
- },
328
- {
329
- name: "proposer",
330
- type: "publicKey",
331
- },
332
- {
333
- name: "descriptionUrl",
334
- type: "string",
335
- },
336
- {
337
- name: "slotEnqueued",
338
- type: "u64",
339
- },
340
- {
341
- name: "state",
342
- type: {
343
- defined: "ProposalState",
344
- },
345
- },
346
- {
347
- name: "instruction",
348
- type: {
349
- defined: "ProposalInstruction",
350
- },
351
- },
352
- {
353
- name: "passAmm",
354
- type: "publicKey",
355
- },
356
- {
357
- name: "failAmm",
358
- type: "publicKey",
359
- },
360
- {
361
- name: "baseVault",
362
- type: "publicKey",
363
- },
364
- {
365
- name: "quoteVault",
366
- type: "publicKey",
367
- },
368
- {
369
- name: "dao",
370
- type: "publicKey",
371
- },
372
- {
373
- name: "passLpTokensLocked",
374
- type: "u64",
375
- },
376
- {
377
- name: "failLpTokensLocked",
378
- type: "u64",
379
- },
380
- {
381
- name: "nonce",
382
- docs: [
383
- "We need to include a per-proposer nonce to prevent some weird proposal",
384
- "front-running edge cases. Using a `u64` means that proposers are unlikely",
385
- "to run into collisions, even if they generate nonces randomly - I've run",
386
- "the math :D",
387
- ],
388
- type: "u64",
389
- },
390
- {
391
- name: "pdaBump",
392
- type: "u8",
393
- },
394
- {
395
- name: "question",
396
- type: "publicKey",
397
- },
398
- ],
399
- },
400
- },
401
- ],
402
- types: [
403
- {
404
- name: "InitializeDaoParams",
405
- type: {
406
- kind: "struct",
407
- fields: [
408
- {
409
- name: "twapInitialObservation",
410
- type: "u128",
411
- },
412
- {
413
- name: "twapMaxObservationChangePerUpdate",
414
- type: "u128",
415
- },
416
- {
417
- name: "minQuoteFutarchicLiquidity",
418
- type: "u64",
419
- },
420
- {
421
- name: "minBaseFutarchicLiquidity",
422
- type: "u64",
423
- },
424
- {
425
- name: "passThresholdBps",
426
- type: {
427
- option: "u16",
428
- },
429
- },
430
- {
431
- name: "slotsPerProposal",
432
- type: {
433
- option: "u64",
434
- },
435
- },
436
- ],
437
- },
438
- },
439
- {
440
- name: "InitializeProposalParams",
441
- type: {
442
- kind: "struct",
443
- fields: [
444
- {
445
- name: "descriptionUrl",
446
- type: "string",
447
- },
448
- {
449
- name: "instruction",
450
- type: {
451
- defined: "ProposalInstruction",
452
- },
453
- },
454
- {
455
- name: "passLpTokensToLock",
456
- type: "u64",
457
- },
458
- {
459
- name: "failLpTokensToLock",
460
- type: "u64",
461
- },
462
- {
463
- name: "nonce",
464
- type: "u64",
465
- },
466
- ],
467
- },
468
- },
469
- {
470
- name: "UpdateDaoParams",
471
- type: {
472
- kind: "struct",
473
- fields: [
474
- {
475
- name: "passThresholdBps",
476
- type: {
477
- option: "u16",
478
- },
479
- },
480
- {
481
- name: "slotsPerProposal",
482
- type: {
483
- option: "u64",
484
- },
485
- },
486
- {
487
- name: "twapInitialObservation",
488
- type: {
489
- option: "u128",
490
- },
491
- },
492
- {
493
- name: "twapMaxObservationChangePerUpdate",
494
- type: {
495
- option: "u128",
496
- },
497
- },
498
- {
499
- name: "minQuoteFutarchicLiquidity",
500
- type: {
501
- option: "u64",
502
- },
503
- },
504
- {
505
- name: "minBaseFutarchicLiquidity",
506
- type: {
507
- option: "u64",
508
- },
509
- },
510
- ],
511
- },
512
- },
513
- {
514
- name: "ProposalAccount",
515
- type: {
516
- kind: "struct",
517
- fields: [
518
- {
519
- name: "pubkey",
520
- type: "publicKey",
521
- },
522
- {
523
- name: "isSigner",
524
- type: "bool",
525
- },
526
- {
527
- name: "isWritable",
528
- type: "bool",
529
- },
530
- ],
531
- },
532
- },
533
- {
534
- name: "ProposalInstruction",
535
- type: {
536
- kind: "struct",
537
- fields: [
538
- {
539
- name: "programId",
540
- type: "publicKey",
541
- },
542
- {
543
- name: "accounts",
544
- type: {
545
- vec: {
546
- defined: "ProposalAccount",
547
- },
548
- },
549
- },
550
- {
551
- name: "data",
552
- type: "bytes",
553
- },
554
- ],
555
- },
556
- },
557
- {
558
- name: "ProposalState",
559
- type: {
560
- kind: "enum",
561
- variants: [
562
- {
563
- name: "Pending",
564
- },
565
- {
566
- name: "Passed",
567
- },
568
- {
569
- name: "Failed",
570
- },
571
- {
572
- name: "Executed",
573
- },
574
- ],
575
- },
576
- },
577
- ],
578
- errors: [
579
- {
580
- code: 6000,
581
- name: "AmmTooOld",
582
- msg: "Amms must have been created within 5 minutes (counted in slots) of proposal initialization",
583
- },
584
- {
585
- code: 6001,
586
- name: "InvalidInitialObservation",
587
- msg: "An amm has an `initial_observation` that doesn't match the `dao`'s config",
588
- },
589
- {
590
- code: 6002,
591
- name: "InvalidMaxObservationChange",
592
- msg: "An amm has a `max_observation_change_per_update` that doesn't match the `dao`'s config",
593
- },
594
- {
595
- code: 6003,
596
- name: "InvalidSettlementAuthority",
597
- msg: "One of the vaults has an invalid `settlement_authority`",
598
- },
599
- {
600
- code: 6004,
601
- name: "ProposalTooYoung",
602
- msg: "Proposal is too young to be executed or rejected",
603
- },
604
- {
605
- code: 6005,
606
- name: "MarketsTooYoung",
607
- msg: "Markets too young for proposal to be finalized. TWAP might need to be cranked",
608
- },
609
- {
610
- code: 6006,
611
- name: "ProposalAlreadyFinalized",
612
- msg: "This proposal has already been finalized",
613
- },
614
- {
615
- code: 6007,
616
- name: "InvalidVaultNonce",
617
- msg: "A conditional vault has an invalid nonce. A nonce should encode the proposal number",
618
- },
619
- {
620
- code: 6008,
621
- name: "ProposalNotPassed",
622
- msg: "This proposal can't be executed because it isn't in the passed state",
623
- },
624
- {
625
- code: 6009,
626
- name: "InsufficientLpTokenBalance",
627
- msg: "The proposer has fewer pass or fail LP tokens than they requested to lock",
628
- },
629
- {
630
- code: 6010,
631
- name: "InsufficientLpTokenLock",
632
- msg: "The LP tokens passed in have less liquidity than the DAO's `min_quote_futarchic_liquidity` or `min_base_futachic_liquidity`",
633
- },
634
- ],
635
- };
636
- //# sourceMappingURL=autocrat.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"autocrat.js","sourceRoot":"","sources":["../../../src/v0.4/types/autocrat.ts"],"names":[],"mappings":"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"}