@metadaoproject/futarchy 0.3.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/AmmClient.d.ts +191 -0
  2. package/dist/AmmClient.js +278 -0
  3. package/dist/AmmClient.js.map +1 -0
  4. package/dist/AutocratClient.d.ts +284 -0
  5. package/dist/AutocratClient.js +229 -0
  6. package/dist/AutocratClient.js.map +1 -0
  7. package/dist/ConditionalVaultClient.d.ts +146 -0
  8. package/dist/ConditionalVaultClient.js +124 -0
  9. package/dist/ConditionalVaultClient.js.map +1 -0
  10. package/dist/InstructionHandler.d.ts +27 -0
  11. package/dist/InstructionHandler.js +95 -0
  12. package/dist/InstructionHandler.js.map +1 -0
  13. package/dist/constants.d.ts +9 -0
  14. package/dist/constants.js +13 -0
  15. package/dist/constants.js.map +1 -0
  16. package/dist/index.d.ts +6 -0
  17. package/dist/index.js +23 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/types/amm.d.ts +542 -0
  20. package/dist/types/amm.js +545 -0
  21. package/dist/types/amm.js.map +1 -0
  22. package/dist/types/autocrat.d.ts +632 -0
  23. package/dist/types/autocrat.js +635 -0
  24. package/dist/types/autocrat.js.map +1 -0
  25. package/dist/types/conditional_vault.d.ts +448 -0
  26. package/dist/types/conditional_vault.js +451 -0
  27. package/dist/types/conditional_vault.js.map +1 -0
  28. package/dist/types/index.d.ts +20 -0
  29. package/dist/types/index.js +10 -0
  30. package/dist/types/index.js.map +1 -0
  31. package/dist/utils/cu.d.ts +8 -0
  32. package/dist/utils/cu.js +12 -0
  33. package/dist/utils/cu.js.map +1 -0
  34. package/dist/utils/filters.d.ts +3 -0
  35. package/dist/utils/filters.js +19 -0
  36. package/dist/utils/filters.js.map +1 -0
  37. package/dist/utils/index.d.ts +17 -0
  38. package/dist/utils/index.js +51 -0
  39. package/dist/utils/index.js.map +1 -0
  40. package/dist/utils/instruction.d.ts +4 -0
  41. package/dist/utils/instruction.js +14 -0
  42. package/dist/utils/instruction.js.map +1 -0
  43. package/dist/utils/metadata.d.ts +4 -0
  44. package/dist/utils/metadata.js +30 -0
  45. package/dist/utils/metadata.js.map +1 -0
  46. package/dist/utils/pda.d.ts +10 -0
  47. package/dist/utils/pda.js +58 -0
  48. package/dist/utils/pda.js.map +1 -0
  49. package/dist/utils/priceMath.d.ts +9 -0
  50. package/dist/utils/priceMath.js +42 -0
  51. package/dist/utils/priceMath.js.map +1 -0
  52. package/package.json +35 -0
@@ -0,0 +1,451 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IDL = void 0;
4
+ exports.IDL = {
5
+ version: "0.3.0",
6
+ name: "conditional_vault",
7
+ instructions: [
8
+ {
9
+ name: "initializeConditionalVault",
10
+ accounts: [
11
+ {
12
+ name: "vault",
13
+ isMut: true,
14
+ isSigner: false,
15
+ },
16
+ {
17
+ name: "underlyingTokenMint",
18
+ isMut: false,
19
+ isSigner: false,
20
+ },
21
+ {
22
+ name: "conditionalOnFinalizeTokenMint",
23
+ isMut: true,
24
+ isSigner: false,
25
+ },
26
+ {
27
+ name: "conditionalOnRevertTokenMint",
28
+ isMut: true,
29
+ isSigner: false,
30
+ },
31
+ {
32
+ name: "vaultUnderlyingTokenAccount",
33
+ isMut: false,
34
+ isSigner: false,
35
+ },
36
+ {
37
+ name: "payer",
38
+ isMut: true,
39
+ isSigner: true,
40
+ },
41
+ {
42
+ name: "tokenProgram",
43
+ isMut: false,
44
+ isSigner: false,
45
+ },
46
+ {
47
+ name: "associatedTokenProgram",
48
+ isMut: false,
49
+ isSigner: false,
50
+ },
51
+ {
52
+ name: "systemProgram",
53
+ isMut: false,
54
+ isSigner: false,
55
+ },
56
+ ],
57
+ args: [
58
+ {
59
+ name: "args",
60
+ type: {
61
+ defined: "InitializeConditionalVaultArgs",
62
+ },
63
+ },
64
+ ],
65
+ },
66
+ {
67
+ name: "addMetadataToConditionalTokens",
68
+ accounts: [
69
+ {
70
+ name: "payer",
71
+ isMut: true,
72
+ isSigner: true,
73
+ },
74
+ {
75
+ name: "vault",
76
+ isMut: true,
77
+ isSigner: false,
78
+ },
79
+ {
80
+ name: "underlyingTokenMint",
81
+ isMut: true,
82
+ isSigner: false,
83
+ },
84
+ {
85
+ name: "underlyingTokenMetadata",
86
+ isMut: false,
87
+ isSigner: false,
88
+ },
89
+ {
90
+ name: "conditionalOnFinalizeTokenMint",
91
+ isMut: true,
92
+ isSigner: false,
93
+ },
94
+ {
95
+ name: "conditionalOnRevertTokenMint",
96
+ isMut: true,
97
+ isSigner: false,
98
+ },
99
+ {
100
+ name: "conditionalOnFinalizeTokenMetadata",
101
+ isMut: true,
102
+ isSigner: false,
103
+ },
104
+ {
105
+ name: "conditionalOnRevertTokenMetadata",
106
+ isMut: true,
107
+ isSigner: false,
108
+ },
109
+ {
110
+ name: "tokenMetadataProgram",
111
+ isMut: false,
112
+ isSigner: false,
113
+ },
114
+ {
115
+ name: "systemProgram",
116
+ isMut: false,
117
+ isSigner: false,
118
+ },
119
+ {
120
+ name: "rent",
121
+ isMut: false,
122
+ isSigner: false,
123
+ },
124
+ ],
125
+ args: [
126
+ {
127
+ name: "args",
128
+ type: {
129
+ defined: "AddMetadataToConditionalTokensArgs",
130
+ },
131
+ },
132
+ ],
133
+ },
134
+ {
135
+ name: "settleConditionalVault",
136
+ accounts: [
137
+ {
138
+ name: "settlementAuthority",
139
+ isMut: false,
140
+ isSigner: true,
141
+ },
142
+ {
143
+ name: "vault",
144
+ isMut: true,
145
+ isSigner: false,
146
+ },
147
+ ],
148
+ args: [
149
+ {
150
+ name: "newStatus",
151
+ type: {
152
+ defined: "VaultStatus",
153
+ },
154
+ },
155
+ ],
156
+ },
157
+ {
158
+ name: "mergeConditionalTokensForUnderlyingTokens",
159
+ accounts: [
160
+ {
161
+ name: "vault",
162
+ isMut: false,
163
+ isSigner: false,
164
+ },
165
+ {
166
+ name: "conditionalOnFinalizeTokenMint",
167
+ isMut: true,
168
+ isSigner: false,
169
+ },
170
+ {
171
+ name: "conditionalOnRevertTokenMint",
172
+ isMut: true,
173
+ isSigner: false,
174
+ },
175
+ {
176
+ name: "vaultUnderlyingTokenAccount",
177
+ isMut: true,
178
+ isSigner: false,
179
+ },
180
+ {
181
+ name: "authority",
182
+ isMut: false,
183
+ isSigner: true,
184
+ },
185
+ {
186
+ name: "userConditionalOnFinalizeTokenAccount",
187
+ isMut: true,
188
+ isSigner: false,
189
+ },
190
+ {
191
+ name: "userConditionalOnRevertTokenAccount",
192
+ isMut: true,
193
+ isSigner: false,
194
+ },
195
+ {
196
+ name: "userUnderlyingTokenAccount",
197
+ isMut: true,
198
+ isSigner: false,
199
+ },
200
+ {
201
+ name: "tokenProgram",
202
+ isMut: false,
203
+ isSigner: false,
204
+ },
205
+ ],
206
+ args: [
207
+ {
208
+ name: "amount",
209
+ type: "u64",
210
+ },
211
+ ],
212
+ },
213
+ {
214
+ name: "mintConditionalTokens",
215
+ accounts: [
216
+ {
217
+ name: "vault",
218
+ isMut: false,
219
+ isSigner: false,
220
+ },
221
+ {
222
+ name: "conditionalOnFinalizeTokenMint",
223
+ isMut: true,
224
+ isSigner: false,
225
+ },
226
+ {
227
+ name: "conditionalOnRevertTokenMint",
228
+ isMut: true,
229
+ isSigner: false,
230
+ },
231
+ {
232
+ name: "vaultUnderlyingTokenAccount",
233
+ isMut: true,
234
+ isSigner: false,
235
+ },
236
+ {
237
+ name: "authority",
238
+ isMut: false,
239
+ isSigner: true,
240
+ },
241
+ {
242
+ name: "userConditionalOnFinalizeTokenAccount",
243
+ isMut: true,
244
+ isSigner: false,
245
+ },
246
+ {
247
+ name: "userConditionalOnRevertTokenAccount",
248
+ isMut: true,
249
+ isSigner: false,
250
+ },
251
+ {
252
+ name: "userUnderlyingTokenAccount",
253
+ isMut: true,
254
+ isSigner: false,
255
+ },
256
+ {
257
+ name: "tokenProgram",
258
+ isMut: false,
259
+ isSigner: false,
260
+ },
261
+ ],
262
+ args: [
263
+ {
264
+ name: "amount",
265
+ type: "u64",
266
+ },
267
+ ],
268
+ },
269
+ {
270
+ name: "redeemConditionalTokensForUnderlyingTokens",
271
+ accounts: [
272
+ {
273
+ name: "vault",
274
+ isMut: false,
275
+ isSigner: false,
276
+ },
277
+ {
278
+ name: "conditionalOnFinalizeTokenMint",
279
+ isMut: true,
280
+ isSigner: false,
281
+ },
282
+ {
283
+ name: "conditionalOnRevertTokenMint",
284
+ isMut: true,
285
+ isSigner: false,
286
+ },
287
+ {
288
+ name: "vaultUnderlyingTokenAccount",
289
+ isMut: true,
290
+ isSigner: false,
291
+ },
292
+ {
293
+ name: "authority",
294
+ isMut: false,
295
+ isSigner: true,
296
+ },
297
+ {
298
+ name: "userConditionalOnFinalizeTokenAccount",
299
+ isMut: true,
300
+ isSigner: false,
301
+ },
302
+ {
303
+ name: "userConditionalOnRevertTokenAccount",
304
+ isMut: true,
305
+ isSigner: false,
306
+ },
307
+ {
308
+ name: "userUnderlyingTokenAccount",
309
+ isMut: true,
310
+ isSigner: false,
311
+ },
312
+ {
313
+ name: "tokenProgram",
314
+ isMut: false,
315
+ isSigner: false,
316
+ },
317
+ ],
318
+ args: [],
319
+ },
320
+ ],
321
+ accounts: [
322
+ {
323
+ name: "conditionalVault",
324
+ type: {
325
+ kind: "struct",
326
+ fields: [
327
+ {
328
+ name: "status",
329
+ type: {
330
+ defined: "VaultStatus",
331
+ },
332
+ },
333
+ {
334
+ name: "settlementAuthority",
335
+ docs: [
336
+ "The account that can either finalize the vault to make conditional tokens",
337
+ "redeemable for underlying tokens or revert the vault to make deposit",
338
+ "slips redeemable for underlying tokens.",
339
+ ],
340
+ type: "publicKey",
341
+ },
342
+ {
343
+ name: "underlyingTokenMint",
344
+ docs: ["The mint of the tokens that are deposited into the vault."],
345
+ type: "publicKey",
346
+ },
347
+ {
348
+ name: "underlyingTokenAccount",
349
+ docs: ["The vault's storage account for deposited funds."],
350
+ type: "publicKey",
351
+ },
352
+ {
353
+ name: "conditionalOnFinalizeTokenMint",
354
+ type: "publicKey",
355
+ },
356
+ {
357
+ name: "conditionalOnRevertTokenMint",
358
+ type: "publicKey",
359
+ },
360
+ {
361
+ name: "pdaBump",
362
+ type: "u8",
363
+ },
364
+ {
365
+ name: "decimals",
366
+ type: "u8",
367
+ },
368
+ ],
369
+ },
370
+ },
371
+ ],
372
+ types: [
373
+ {
374
+ name: "AddMetadataToConditionalTokensArgs",
375
+ type: {
376
+ kind: "struct",
377
+ fields: [
378
+ {
379
+ name: "proposalNumber",
380
+ type: "u64",
381
+ },
382
+ {
383
+ name: "onFinalizeUri",
384
+ type: "string",
385
+ },
386
+ {
387
+ name: "onRevertUri",
388
+ type: "string",
389
+ },
390
+ ],
391
+ },
392
+ },
393
+ {
394
+ name: "InitializeConditionalVaultArgs",
395
+ type: {
396
+ kind: "struct",
397
+ fields: [
398
+ {
399
+ name: "settlementAuthority",
400
+ type: "publicKey",
401
+ },
402
+ ],
403
+ },
404
+ },
405
+ {
406
+ name: "VaultStatus",
407
+ type: {
408
+ kind: "enum",
409
+ variants: [
410
+ {
411
+ name: "Active",
412
+ },
413
+ {
414
+ name: "Finalized",
415
+ },
416
+ {
417
+ name: "Reverted",
418
+ },
419
+ ],
420
+ },
421
+ },
422
+ ],
423
+ errors: [
424
+ {
425
+ code: 6000,
426
+ name: "InsufficientUnderlyingTokens",
427
+ msg: "Insufficient underlying token balance to mint this amount of conditional tokens",
428
+ },
429
+ {
430
+ code: 6001,
431
+ name: "InvalidVaultUnderlyingTokenAccount",
432
+ msg: "This `vault_underlying_token_account` is not this vault's `underlying_token_account`",
433
+ },
434
+ {
435
+ code: 6002,
436
+ name: "InvalidConditionalTokenMint",
437
+ msg: "This conditional token mint is not this vault's conditional token mint",
438
+ },
439
+ {
440
+ code: 6003,
441
+ name: "CantRedeemConditionalTokens",
442
+ msg: "Vault needs to be settled as finalized before users can redeem conditional tokens for underlying tokens",
443
+ },
444
+ {
445
+ code: 6004,
446
+ name: "VaultAlreadySettled",
447
+ msg: "Once a vault has been settled, its status as either finalized or reverted cannot be changed",
448
+ },
449
+ ],
450
+ };
451
+ //# sourceMappingURL=conditional_vault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditional_vault.js","sourceRoot":"","sources":["../../src/types/conditional_vault.ts"],"names":[],"mappings":";;;AAgca,QAAA,GAAG,GAAqB;IACnC,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,mBAAmB;IACzB,YAAY,EAAE;QACZ;YACE,IAAI,EAAE,4BAA4B;YAClC,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gCAAgC;oBACtC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,8BAA8B;oBACpC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,6BAA6B;oBACnC,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,wBAAwB;oBAC9B,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;wBACJ,OAAO,EAAE,gCAAgC;qBAC1C;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,gCAAgC;YACtC,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,yBAAyB;oBAC/B,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gCAAgC;oBACtC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,8BAA8B;oBACpC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,oCAAoC;oBAC1C,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,kCAAkC;oBACxC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,sBAAsB;oBAC5B,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;wBACJ,OAAO,EAAE,oCAAoC;qBAC9C;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,qBAAqB;oBAC3B,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE;wBACJ,OAAO,EAAE,aAAa;qBACvB;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,2CAA2C;YACjD,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gCAAgC;oBACtC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,8BAA8B;oBACpC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,6BAA6B;oBACnC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,IAAI,EAAE,uCAAuC;oBAC7C,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,qCAAqC;oBAC3C,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,4BAA4B;oBAClC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,KAAK;iBACZ;aACF;SACF;QACD;YACE,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gCAAgC;oBACtC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,8BAA8B;oBACpC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,6BAA6B;oBACnC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,IAAI,EAAE,uCAAuC;oBAC7C,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,qCAAqC;oBAC3C,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,4BAA4B;oBAClC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,KAAK;iBACZ;aACF;SACF;QACD;YACE,IAAI,EAAE,4CAA4C;YAClD,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,gCAAgC;oBACtC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,8BAA8B;oBACpC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,6BAA6B;oBACnC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,IAAI;iBACf;gBACD;oBACE,IAAI,EAAE,uCAAuC;oBAC7C,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,qCAAqC;oBAC3C,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,4BAA4B;oBAClC,KAAK,EAAE,IAAI;oBACX,QAAQ,EAAE,KAAK;iBAChB;gBACD;oBACE,IAAI,EAAE,cAAc;oBACpB,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,KAAK;iBAChB;aACF;YACD,IAAI,EAAE,EAAE;SACT;KACF;IACD,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE;4BACJ,OAAO,EAAE,aAAa;yBACvB;qBACF;oBACD;wBACE,IAAI,EAAE,qBAAqB;wBAC3B,IAAI,EAAE;4BACJ,2EAA2E;4BAC3E,sEAAsE;4BACtE,yCAAyC;yBAC1C;wBACD,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,qBAAqB;wBAC3B,IAAI,EAAE,CAAC,2DAA2D,CAAC;wBACnE,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,wBAAwB;wBAC9B,IAAI,EAAE,CAAC,kDAAkD,CAAC;wBAC1D,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,gCAAgC;wBACtC,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,8BAA8B;wBACpC,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,IAAI;qBACX;oBACD;wBACE,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,IAAI;qBACX;iBACF;aACF;SACF;KACF;IACD,KAAK,EAAE;QACL;YACE,IAAI,EAAE,oCAAoC;YAC1C,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,gBAAgB;wBACtB,IAAI,EAAE,KAAK;qBACZ;oBACD;wBACE,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,QAAQ;qBACf;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,gCAAgC;YACtC,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,qBAAqB;wBAC3B,IAAI,EAAE,WAAW;qBAClB;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE;gBACJ,IAAI,EAAE,MAAM;gBACZ,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,WAAW;qBAClB;oBACD;wBACE,IAAI,EAAE,UAAU;qBACjB;iBACF;aACF;SACF;KACF;IACD,MAAM,EAAE;QACN;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,8BAA8B;YACpC,GAAG,EAAE,iFAAiF;SACvF;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,oCAAoC;YAC1C,GAAG,EAAE,sFAAsF;SAC5F;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,6BAA6B;YACnC,GAAG,EAAE,wEAAwE;SAC9E;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,6BAA6B;YACnC,GAAG,EAAE,yGAAyG;SAC/G;QACD;YACE,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,qBAAqB;YAC3B,GAAG,EAAE,6FAA6F;SACnG;KACF;CACF,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { Autocrat } from "./autocrat";
2
+ export { Autocrat, IDL as AutocratIDL } from "./autocrat";
3
+ import { Amm } from "./amm";
4
+ export { Amm, IDL as AmmIDL } from "./amm";
5
+ import { ConditionalVault } from "./conditional_vault";
6
+ export { ConditionalVault, IDL as ConditionalVaultIDL, } from "./conditional_vault";
7
+ import type { IdlAccounts, IdlTypes } from "@coral-xyz/anchor";
8
+ import { PublicKey } from "@solana/web3.js";
9
+ export type InitializeDaoParams = IdlTypes<Autocrat>["InitializeDaoParams"];
10
+ export type UpdateDaoParams = IdlTypes<Autocrat>["UpdateDaoParams"];
11
+ export type ProposalInstruction = IdlTypes<Autocrat>["ProposalInstruction"];
12
+ export type Proposal = IdlAccounts<Autocrat>["proposal"];
13
+ export type ProposalWrapper = {
14
+ account: Proposal;
15
+ publicKey: PublicKey;
16
+ };
17
+ export type DaoAccount = IdlAccounts<Autocrat>["dao"];
18
+ export type ProposalAccount = IdlAccounts<Autocrat>["proposal"];
19
+ export type AmmAccount = IdlAccounts<Amm>["amm"];
20
+ export type ConditionalVaultAccount = IdlAccounts<ConditionalVault>["conditionalVault"];
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConditionalVaultIDL = exports.AmmIDL = exports.AutocratIDL = void 0;
4
+ var autocrat_1 = require("./autocrat");
5
+ Object.defineProperty(exports, "AutocratIDL", { enumerable: true, get: function () { return autocrat_1.IDL; } });
6
+ var amm_1 = require("./amm");
7
+ Object.defineProperty(exports, "AmmIDL", { enumerable: true, get: function () { return amm_1.IDL; } });
8
+ var conditional_vault_1 = require("./conditional_vault");
9
+ Object.defineProperty(exports, "ConditionalVaultIDL", { enumerable: true, get: function () { return conditional_vault_1.IDL; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;AACA,uCAA0D;AAAvC,uGAAA,GAAG,OAAe;AAGrC,6BAA2C;AAA7B,6FAAA,GAAG,OAAU;AAG3B,yDAG6B;AAD3B,wHAAA,GAAG,OAAuB"}
@@ -0,0 +1,8 @@
1
+ export declare const MaxCUs: {
2
+ createIdempotent: number;
3
+ initializeConditionalVault: number;
4
+ mintConditionalTokens: number;
5
+ initializeAmm: number;
6
+ addLiquidity: number;
7
+ initializeProposal: number;
8
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MaxCUs = void 0;
4
+ exports.MaxCUs = {
5
+ createIdempotent: 25_000,
6
+ initializeConditionalVault: 45_000,
7
+ mintConditionalTokens: 35_000,
8
+ initializeAmm: 120_000,
9
+ addLiquidity: 120_000,
10
+ initializeProposal: 60_000,
11
+ };
12
+ //# sourceMappingURL=cu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cu.js","sourceRoot":"","sources":["../../src/utils/cu.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,gBAAgB,EAAE,MAAM;IACxB,0BAA0B,EAAE,MAAM;IAClC,qBAAqB,EAAE,MAAM;IAC7B,aAAa,EAAE,OAAO;IACtB,YAAY,EAAE,OAAO;IACrB,kBAAkB,EAAE,MAAM;CAC3B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { GetProgramAccountsFilter, PublicKey } from "@solana/web3.js";
2
+ export declare const filterPositionsByUser: (userAddr: PublicKey) => GetProgramAccountsFilter;
3
+ export declare const filterPositionsByAmm: (ammAddr: PublicKey) => GetProgramAccountsFilter;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.filterPositionsByAmm = exports.filterPositionsByUser = void 0;
4
+ const filterPositionsByUser = (userAddr) => ({
5
+ memcmp: {
6
+ offset: 8,
7
+ bytes: userAddr.toBase58(),
8
+ },
9
+ });
10
+ exports.filterPositionsByUser = filterPositionsByUser;
11
+ const filterPositionsByAmm = (ammAddr) => ({
12
+ memcmp: {
13
+ offset: 8 + // discriminator
14
+ 32,
15
+ bytes: ammAddr.toBase58(),
16
+ },
17
+ });
18
+ exports.filterPositionsByAmm = filterPositionsByAmm;
19
+ //# sourceMappingURL=filters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../src/utils/filters.ts"],"names":[],"mappings":";;;AAEO,MAAM,qBAAqB,GAAG,CACnC,QAAmB,EACO,EAAE,CAAC,CAAC;IAC9B,MAAM,EAAE;QACN,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE;KAC3B;CACF,CAAC,CAAC;AAPU,QAAA,qBAAqB,yBAO/B;AAEI,MAAM,oBAAoB,GAAG,CAClC,OAAkB,EACQ,EAAE,CAAC,CAAC;IAC9B,MAAM,EAAE;QACN,MAAM,EACJ,CAAC,GAAG,gBAAgB;YACpB,EAAE;QACJ,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;KAC1B;CACF,CAAC,CAAC;AATU,QAAA,oBAAoB,wBAS9B"}
@@ -0,0 +1,17 @@
1
+ /// <reference types="solana-bankrun/node_modules/@solana/web3.js" />
2
+ export * from "./filters";
3
+ export * from "./pda";
4
+ export * from "./priceMath";
5
+ export * from "./metadata";
6
+ export * from "./cu";
7
+ export * from "./instruction";
8
+ import { AccountMeta, PublicKey } from "@solana/web3.js";
9
+ export declare enum PriorityFeeTier {
10
+ NORMAL = 35,
11
+ HIGH = 3571,
12
+ TURBO = 357142
13
+ }
14
+ export declare const addComputeUnits: (num_units?: number) => import("@solana/web3.js").TransactionInstruction;
15
+ export declare const addPriorityFee: (pf: number) => import("@solana/web3.js").TransactionInstruction;
16
+ export declare const pubkeyToAccountInfo: (pubkey: PublicKey, isWritable: boolean, isSigner?: boolean) => AccountMeta;
17
+ export declare function sleep(ms: number): Promise<unknown>;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.sleep = exports.pubkeyToAccountInfo = exports.addPriorityFee = exports.addComputeUnits = exports.PriorityFeeTier = void 0;
18
+ __exportStar(require("./filters"), exports);
19
+ __exportStar(require("./pda"), exports);
20
+ __exportStar(require("./priceMath"), exports);
21
+ __exportStar(require("./metadata"), exports);
22
+ __exportStar(require("./cu"), exports);
23
+ __exportStar(require("./instruction"), exports);
24
+ const web3_js_1 = require("@solana/web3.js");
25
+ var PriorityFeeTier;
26
+ (function (PriorityFeeTier) {
27
+ PriorityFeeTier[PriorityFeeTier["NORMAL"] = 35] = "NORMAL";
28
+ PriorityFeeTier[PriorityFeeTier["HIGH"] = 3571] = "HIGH";
29
+ PriorityFeeTier[PriorityFeeTier["TURBO"] = 357142] = "TURBO";
30
+ })(PriorityFeeTier = exports.PriorityFeeTier || (exports.PriorityFeeTier = {}));
31
+ const addComputeUnits = (num_units = 1_400_000) => web3_js_1.ComputeBudgetProgram.setComputeUnitLimit({
32
+ units: num_units,
33
+ });
34
+ exports.addComputeUnits = addComputeUnits;
35
+ const addPriorityFee = (pf) => web3_js_1.ComputeBudgetProgram.setComputeUnitPrice({
36
+ microLamports: pf,
37
+ });
38
+ exports.addPriorityFee = addPriorityFee;
39
+ const pubkeyToAccountInfo = (pubkey, isWritable, isSigner = false) => {
40
+ return {
41
+ pubkey: pubkey,
42
+ isSigner: isSigner,
43
+ isWritable: isWritable,
44
+ };
45
+ };
46
+ exports.pubkeyToAccountInfo = pubkeyToAccountInfo;
47
+ async function sleep(ms) {
48
+ return new Promise((resolve) => setTimeout(resolve, ms));
49
+ }
50
+ exports.sleep = sleep;
51
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,wCAAsB;AACtB,8CAA4B;AAC5B,6CAA2B;AAC3B,uCAAqB;AACrB,gDAA8B;AAE9B,6CAA+E;AAE/E,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,0DAAW,CAAA;IACX,wDAAW,CAAA;IACX,4DAAc,CAAA;AAChB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B;AAEM,MAAM,eAAe,GAAG,CAAC,YAAoB,SAAS,EAAE,EAAE,CAC/D,8BAAoB,CAAC,mBAAmB,CAAC;IACvC,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAHQ,QAAA,eAAe,mBAGvB;AAEE,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,EAAE,CAC3C,8BAAoB,CAAC,mBAAmB,CAAC;IACvC,aAAa,EAAE,EAAE;CAClB,CAAC,CAAC;AAHQ,QAAA,cAAc,kBAGtB;AAEE,MAAM,mBAAmB,GAAG,CACjC,MAAiB,EACjB,UAAmB,EACnB,QAAQ,GAAG,KAAK,EACH,EAAE;IACf,OAAO;QACL,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE,UAAU;KACvB,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,mBAAmB,uBAU9B;AAEK,KAAK,UAAU,KAAK,CAAC,EAAU;IACpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAFD,sBAEC"}
@@ -0,0 +1,4 @@
1
+ import { TransactionInstruction } from "@solana/web3.js";
2
+ export declare class InstructionUtils {
3
+ static getInstructions(...methodBuilders: any[]): Promise<TransactionInstruction[]>;
4
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InstructionUtils = void 0;
4
+ class InstructionUtils {
5
+ static async getInstructions(...methodBuilders) {
6
+ let instructions = [];
7
+ for (const methodBuilder of methodBuilders) {
8
+ instructions.push(...(await methodBuilder.transaction()).instructions);
9
+ }
10
+ return instructions;
11
+ }
12
+ }
13
+ exports.InstructionUtils = InstructionUtils;
14
+ //# sourceMappingURL=instruction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instruction.js","sourceRoot":"","sources":["../../src/utils/instruction.ts"],"names":[],"mappings":";;;AAGA,MAAa,gBAAgB;IACpB,MAAM,CAAC,KAAK,CAAC,eAAe,CACjC,GAAG,cAAqB;QAExB,IAAI,YAAY,GAA6B,EAAE,CAAC;QAEhD,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE;YAC1C,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;SACxE;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAZD,4CAYC"}
@@ -0,0 +1,4 @@
1
+ import { Connection } from "@solana/web3.js";
2
+ import { UmiPlugin } from "@metaplex-foundation/umi";
3
+ export declare const assetImageMap: Record<string, string>;
4
+ export declare const uploadConditionalTokenMetadataJson: (connection: Connection, identityPlugin: UmiPlugin, proposalNumber: number, symbol: string) => Promise<string>;