@maci-protocol/sdk 0.0.0-ci.01622be

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 (314) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/LICENSE +21 -0
  3. package/README.md +12 -0
  4. package/build/package.json +65 -0
  5. package/build/ts/browser/index.d.ts +13 -0
  6. package/build/ts/browser/index.d.ts.map +1 -0
  7. package/build/ts/browser/index.js +38 -0
  8. package/build/ts/browser/index.js.map +1 -0
  9. package/build/ts/browser/joinPoll.d.ts +10 -0
  10. package/build/ts/browser/joinPoll.d.ts.map +1 -0
  11. package/build/ts/browser/joinPoll.js +88 -0
  12. package/build/ts/browser/joinPoll.js.map +1 -0
  13. package/build/ts/browser/utils.d.ts +18 -0
  14. package/build/ts/browser/utils.d.ts.map +1 -0
  15. package/build/ts/browser/utils.js +37 -0
  16. package/build/ts/browser/utils.js.map +1 -0
  17. package/build/ts/deploy/index.d.ts +6 -0
  18. package/build/ts/deploy/index.d.ts.map +1 -0
  19. package/build/ts/deploy/index.js +12 -0
  20. package/build/ts/deploy/index.js.map +1 -0
  21. package/build/ts/deploy/maci.d.ts +8 -0
  22. package/build/ts/deploy/maci.d.ts.map +1 -0
  23. package/build/ts/deploy/maci.js +87 -0
  24. package/build/ts/deploy/maci.js.map +1 -0
  25. package/build/ts/deploy/poll.d.ts +8 -0
  26. package/build/ts/deploy/poll.d.ts.map +1 -0
  27. package/build/ts/deploy/poll.js +114 -0
  28. package/build/ts/deploy/poll.js.map +1 -0
  29. package/build/ts/deploy/types.d.ts +217 -0
  30. package/build/ts/deploy/types.d.ts.map +1 -0
  31. package/build/ts/deploy/types.js +3 -0
  32. package/build/ts/deploy/types.js.map +1 -0
  33. package/build/ts/deploy/utils.d.ts +11 -0
  34. package/build/ts/deploy/utils.d.ts.map +1 -0
  35. package/build/ts/deploy/utils.js +22 -0
  36. package/build/ts/deploy/utils.js.map +1 -0
  37. package/build/ts/deploy/verifyingKeysRegistry.d.ts +7 -0
  38. package/build/ts/deploy/verifyingKeysRegistry.d.ts.map +1 -0
  39. package/build/ts/deploy/verifyingKeysRegistry.js +14 -0
  40. package/build/ts/deploy/verifyingKeysRegistry.js.map +1 -0
  41. package/build/ts/index.d.ts +16 -0
  42. package/build/ts/index.d.ts.map +1 -0
  43. package/build/ts/index.js +86 -0
  44. package/build/ts/index.js.map +1 -0
  45. package/build/ts/maci/index.d.ts +6 -0
  46. package/build/ts/maci/index.d.ts.map +1 -0
  47. package/build/ts/maci/index.js +17 -0
  48. package/build/ts/maci/index.js.map +1 -0
  49. package/build/ts/maci/merge.d.ts +9 -0
  50. package/build/ts/maci/merge.d.ts.map +1 -0
  51. package/build/ts/maci/merge.js +29 -0
  52. package/build/ts/maci/merge.js.map +1 -0
  53. package/build/ts/maci/policy.d.ts +53 -0
  54. package/build/ts/maci/policy.d.ts.map +1 -0
  55. package/build/ts/maci/policy.js +166 -0
  56. package/build/ts/maci/policy.js.map +1 -0
  57. package/build/ts/maci/state.d.ts +8 -0
  58. package/build/ts/maci/state.d.ts.map +1 -0
  59. package/build/ts/maci/state.js +82 -0
  60. package/build/ts/maci/state.js.map +1 -0
  61. package/build/ts/maci/types.d.ts +208 -0
  62. package/build/ts/maci/types.d.ts.map +1 -0
  63. package/build/ts/maci/types.js +20 -0
  64. package/build/ts/maci/types.js.map +1 -0
  65. package/build/ts/maciKeys/__tests__/keypair.test.d.ts +2 -0
  66. package/build/ts/maciKeys/__tests__/keypair.test.d.ts.map +1 -0
  67. package/build/ts/maciKeys/__tests__/keypair.test.js +24 -0
  68. package/build/ts/maciKeys/__tests__/keypair.test.js.map +1 -0
  69. package/build/ts/maciKeys/__tests__/publicKeys.test.d.ts +2 -0
  70. package/build/ts/maciKeys/__tests__/publicKeys.test.d.ts.map +1 -0
  71. package/build/ts/maciKeys/__tests__/publicKeys.test.js +22 -0
  72. package/build/ts/maciKeys/__tests__/publicKeys.test.js.map +1 -0
  73. package/build/ts/maciKeys/index.d.ts +4 -0
  74. package/build/ts/maciKeys/index.d.ts.map +1 -0
  75. package/build/ts/maciKeys/index.js +8 -0
  76. package/build/ts/maciKeys/index.js.map +1 -0
  77. package/build/ts/maciKeys/keypair.d.ts +9 -0
  78. package/build/ts/maciKeys/keypair.d.ts.map +1 -0
  79. package/build/ts/maciKeys/keypair.js +20 -0
  80. package/build/ts/maciKeys/keypair.js.map +1 -0
  81. package/build/ts/maciKeys/publicKeys.d.ts +8 -0
  82. package/build/ts/maciKeys/publicKeys.d.ts.map +1 -0
  83. package/build/ts/maciKeys/publicKeys.js +23 -0
  84. package/build/ts/maciKeys/publicKeys.js.map +1 -0
  85. package/build/ts/maciKeys/types.d.ts +23 -0
  86. package/build/ts/maciKeys/types.d.ts.map +1 -0
  87. package/build/ts/maciKeys/types.js +3 -0
  88. package/build/ts/maciKeys/types.js.map +1 -0
  89. package/build/ts/poll/index.d.ts +4 -0
  90. package/build/ts/poll/index.d.ts.map +1 -0
  91. package/build/ts/poll/index.js +9 -0
  92. package/build/ts/poll/index.js.map +1 -0
  93. package/build/ts/poll/poll.d.ts +14 -0
  94. package/build/ts/poll/poll.d.ts.map +1 -0
  95. package/build/ts/poll/poll.js +62 -0
  96. package/build/ts/poll/poll.js.map +1 -0
  97. package/build/ts/poll/types.d.ts +151 -0
  98. package/build/ts/poll/types.d.ts.map +1 -0
  99. package/build/ts/poll/types.js +3 -0
  100. package/build/ts/poll/types.js.map +1 -0
  101. package/build/ts/poll/utils.d.ts +9 -0
  102. package/build/ts/poll/utils.d.ts.map +1 -0
  103. package/build/ts/poll/utils.js +43 -0
  104. package/build/ts/poll/utils.js.map +1 -0
  105. package/build/ts/proof/__tests__/download.test.d.ts +2 -0
  106. package/build/ts/proof/__tests__/download.test.d.ts.map +1 -0
  107. package/build/ts/proof/__tests__/download.test.js +53 -0
  108. package/build/ts/proof/__tests__/download.test.js.map +1 -0
  109. package/build/ts/proof/download.d.ts +9 -0
  110. package/build/ts/proof/download.d.ts.map +1 -0
  111. package/build/ts/proof/download.js +47 -0
  112. package/build/ts/proof/download.js.map +1 -0
  113. package/build/ts/proof/generate.d.ts +8 -0
  114. package/build/ts/proof/generate.d.ts.map +1 -0
  115. package/build/ts/proof/generate.js +127 -0
  116. package/build/ts/proof/generate.js.map +1 -0
  117. package/build/ts/proof/index.d.ts +4 -0
  118. package/build/ts/proof/index.d.ts.map +1 -0
  119. package/build/ts/proof/index.js +8 -0
  120. package/build/ts/proof/index.js.map +1 -0
  121. package/build/ts/proof/prove.d.ts +8 -0
  122. package/build/ts/proof/prove.d.ts.map +1 -0
  123. package/build/ts/proof/prove.js +81 -0
  124. package/build/ts/proof/prove.js.map +1 -0
  125. package/build/ts/proof/types.d.ts +201 -0
  126. package/build/ts/proof/types.d.ts.map +1 -0
  127. package/build/ts/proof/types.js +3 -0
  128. package/build/ts/proof/types.js.map +1 -0
  129. package/build/ts/proof/utils.d.ts +10 -0
  130. package/build/ts/proof/utils.d.ts.map +1 -0
  131. package/build/ts/proof/utils.js +24 -0
  132. package/build/ts/proof/utils.js.map +1 -0
  133. package/build/ts/relayer/__tests__/messages.test.d.ts +2 -0
  134. package/build/ts/relayer/__tests__/messages.test.d.ts.map +1 -0
  135. package/build/ts/relayer/__tests__/messages.test.js +76 -0
  136. package/build/ts/relayer/__tests__/messages.test.js.map +1 -0
  137. package/build/ts/relayer/__tests__/utils.test.d.ts +2 -0
  138. package/build/ts/relayer/__tests__/utils.test.d.ts.map +1 -0
  139. package/build/ts/relayer/__tests__/utils.test.js +73 -0
  140. package/build/ts/relayer/__tests__/utils.test.js.map +1 -0
  141. package/build/ts/relayer/index.d.ts +3 -0
  142. package/build/ts/relayer/index.d.ts.map +1 -0
  143. package/build/ts/relayer/index.js +8 -0
  144. package/build/ts/relayer/index.js.map +1 -0
  145. package/build/ts/relayer/messages.d.ts +23 -0
  146. package/build/ts/relayer/messages.d.ts.map +1 -0
  147. package/build/ts/relayer/messages.js +66 -0
  148. package/build/ts/relayer/messages.js.map +1 -0
  149. package/build/ts/relayer/types.d.ts +168 -0
  150. package/build/ts/relayer/types.d.ts.map +1 -0
  151. package/build/ts/relayer/types.js +3 -0
  152. package/build/ts/relayer/types.js.map +1 -0
  153. package/build/ts/relayer/utils.d.ts +12 -0
  154. package/build/ts/relayer/utils.d.ts.map +1 -0
  155. package/build/ts/relayer/utils.js +37 -0
  156. package/build/ts/relayer/utils.js.map +1 -0
  157. package/build/ts/tally/commitments.d.ts +9 -0
  158. package/build/ts/tally/commitments.d.ts.map +1 -0
  159. package/build/ts/tally/commitments.js +43 -0
  160. package/build/ts/tally/commitments.js.map +1 -0
  161. package/build/ts/tally/index.d.ts +5 -0
  162. package/build/ts/tally/index.d.ts.map +1 -0
  163. package/build/ts/tally/index.js +11 -0
  164. package/build/ts/tally/index.js.map +1 -0
  165. package/build/ts/tally/results.d.ts +14 -0
  166. package/build/ts/tally/results.d.ts.map +1 -0
  167. package/build/ts/tally/results.js +44 -0
  168. package/build/ts/tally/results.js.map +1 -0
  169. package/build/ts/tally/types.d.ts +206 -0
  170. package/build/ts/tally/types.d.ts.map +1 -0
  171. package/build/ts/tally/types.js +3 -0
  172. package/build/ts/tally/types.js.map +1 -0
  173. package/build/ts/tally/utils.d.ts +24 -0
  174. package/build/ts/tally/utils.d.ts.map +1 -0
  175. package/build/ts/tally/utils.js +50 -0
  176. package/build/ts/tally/utils.js.map +1 -0
  177. package/build/ts/tally/verification.d.ts +7 -0
  178. package/build/ts/tally/verification.d.ts.map +1 -0
  179. package/build/ts/tally/verification.js +62 -0
  180. package/build/ts/tally/verification.js.map +1 -0
  181. package/build/ts/trees/index.d.ts +3 -0
  182. package/build/ts/trees/index.d.ts.map +1 -0
  183. package/build/ts/trees/index.js +7 -0
  184. package/build/ts/trees/index.js.map +1 -0
  185. package/build/ts/trees/stateTree.d.ts +27 -0
  186. package/build/ts/trees/stateTree.d.ts.map +1 -0
  187. package/build/ts/trees/stateTree.js +104 -0
  188. package/build/ts/trees/stateTree.js.map +1 -0
  189. package/build/ts/trees/types.d.ts +55 -0
  190. package/build/ts/trees/types.d.ts.map +1 -0
  191. package/build/ts/trees/types.js +3 -0
  192. package/build/ts/trees/types.js.map +1 -0
  193. package/build/ts/user/index.d.ts +5 -0
  194. package/build/ts/user/index.d.ts.map +1 -0
  195. package/build/ts/user/index.js +17 -0
  196. package/build/ts/user/index.js.map +1 -0
  197. package/build/ts/user/joinPoll.d.ts +8 -0
  198. package/build/ts/user/joinPoll.d.ts.map +1 -0
  199. package/build/ts/user/joinPoll.js +84 -0
  200. package/build/ts/user/joinPoll.js.map +1 -0
  201. package/build/ts/user/signup.d.ts +20 -0
  202. package/build/ts/user/signup.d.ts.map +1 -0
  203. package/build/ts/user/signup.js +79 -0
  204. package/build/ts/user/signup.js.map +1 -0
  205. package/build/ts/user/types.d.ts +464 -0
  206. package/build/ts/user/types.d.ts.map +1 -0
  207. package/build/ts/user/types.js +3 -0
  208. package/build/ts/user/types.js.map +1 -0
  209. package/build/ts/user/utils.d.ts +80 -0
  210. package/build/ts/user/utils.d.ts.map +1 -0
  211. package/build/ts/user/utils.js +253 -0
  212. package/build/ts/user/utils.js.map +1 -0
  213. package/build/ts/utils/cid.d.ts +23 -0
  214. package/build/ts/utils/cid.d.ts.map +1 -0
  215. package/build/ts/utils/cid.js +72 -0
  216. package/build/ts/utils/cid.js.map +1 -0
  217. package/build/ts/utils/constants.d.ts +2 -0
  218. package/build/ts/utils/constants.d.ts.map +1 -0
  219. package/build/ts/utils/constants.js +5 -0
  220. package/build/ts/utils/constants.js.map +1 -0
  221. package/build/ts/utils/contracts.d.ts +15 -0
  222. package/build/ts/utils/contracts.d.ts.map +1 -0
  223. package/build/ts/utils/contracts.js +26 -0
  224. package/build/ts/utils/contracts.js.map +1 -0
  225. package/build/ts/utils/files.d.ts +9 -0
  226. package/build/ts/utils/files.d.ts.map +1 -0
  227. package/build/ts/utils/files.js +20 -0
  228. package/build/ts/utils/files.js.map +1 -0
  229. package/build/ts/utils/formatting.d.ts +8 -0
  230. package/build/ts/utils/formatting.d.ts.map +1 -0
  231. package/build/ts/utils/formatting.js +11 -0
  232. package/build/ts/utils/formatting.js.map +1 -0
  233. package/build/ts/utils/fundWallet.d.ts +7 -0
  234. package/build/ts/utils/fundWallet.d.ts.map +1 -0
  235. package/build/ts/utils/fundWallet.js +20 -0
  236. package/build/ts/utils/fundWallet.js.map +1 -0
  237. package/build/ts/utils/index.d.ts +12 -0
  238. package/build/ts/utils/index.d.ts.map +1 -0
  239. package/build/ts/utils/index.js +28 -0
  240. package/build/ts/utils/index.js.map +1 -0
  241. package/build/ts/utils/params.d.ts +7 -0
  242. package/build/ts/utils/params.d.ts.map +1 -0
  243. package/build/ts/utils/params.js +19 -0
  244. package/build/ts/utils/params.js.map +1 -0
  245. package/build/ts/utils/proofs.d.ts +13 -0
  246. package/build/ts/utils/proofs.d.ts.map +1 -0
  247. package/build/ts/utils/proofs.js +41 -0
  248. package/build/ts/utils/proofs.js.map +1 -0
  249. package/build/ts/utils/timeTravel.d.ts +7 -0
  250. package/build/ts/utils/timeTravel.d.ts.map +1 -0
  251. package/build/ts/utils/timeTravel.js +14 -0
  252. package/build/ts/utils/timeTravel.js.map +1 -0
  253. package/build/ts/utils/trees.d.ts +13 -0
  254. package/build/ts/utils/trees.d.ts.map +1 -0
  255. package/build/ts/utils/trees.js +30 -0
  256. package/build/ts/utils/trees.js.map +1 -0
  257. package/build/ts/utils/types.d.ts +71 -0
  258. package/build/ts/utils/types.d.ts.map +1 -0
  259. package/build/ts/utils/types.js +3 -0
  260. package/build/ts/utils/types.js.map +1 -0
  261. package/build/ts/utils/utils.d.ts +24 -0
  262. package/build/ts/utils/utils.d.ts.map +1 -0
  263. package/build/ts/utils/utils.js +49 -0
  264. package/build/ts/utils/utils.js.map +1 -0
  265. package/build/ts/verifyingKeys/checkVerifyingKeys.d.ts +10 -0
  266. package/build/ts/verifyingKeys/checkVerifyingKeys.d.ts.map +1 -0
  267. package/build/ts/verifyingKeys/checkVerifyingKeys.js +66 -0
  268. package/build/ts/verifyingKeys/checkVerifyingKeys.js.map +1 -0
  269. package/build/ts/verifyingKeys/index.d.ts +5 -0
  270. package/build/ts/verifyingKeys/index.d.ts.map +1 -0
  271. package/build/ts/verifyingKeys/index.js +13 -0
  272. package/build/ts/verifyingKeys/index.js.map +1 -0
  273. package/build/ts/verifyingKeys/setVerifyingKeys.d.ts +7 -0
  274. package/build/ts/verifyingKeys/setVerifyingKeys.d.ts.map +1 -0
  275. package/build/ts/verifyingKeys/setVerifyingKeys.js +84 -0
  276. package/build/ts/verifyingKeys/setVerifyingKeys.js.map +1 -0
  277. package/build/ts/verifyingKeys/types.d.ts +235 -0
  278. package/build/ts/verifyingKeys/types.d.ts.map +1 -0
  279. package/build/ts/verifyingKeys/types.js +3 -0
  280. package/build/ts/verifyingKeys/types.js.map +1 -0
  281. package/build/ts/verifyingKeys/utils.d.ts +29 -0
  282. package/build/ts/verifyingKeys/utils.d.ts.map +1 -0
  283. package/build/ts/verifyingKeys/utils.js +116 -0
  284. package/build/ts/verifyingKeys/utils.js.map +1 -0
  285. package/build/ts/vote/generate.d.ts +8 -0
  286. package/build/ts/vote/generate.d.ts.map +1 -0
  287. package/build/ts/vote/generate.js +46 -0
  288. package/build/ts/vote/generate.js.map +1 -0
  289. package/build/ts/vote/index.d.ts +6 -0
  290. package/build/ts/vote/index.d.ts.map +1 -0
  291. package/build/ts/vote/index.js +15 -0
  292. package/build/ts/vote/index.js.map +1 -0
  293. package/build/ts/vote/invalidate.d.ts +13 -0
  294. package/build/ts/vote/invalidate.d.ts.map +1 -0
  295. package/build/ts/vote/invalidate.js +44 -0
  296. package/build/ts/vote/invalidate.js.map +1 -0
  297. package/build/ts/vote/publish.d.ts +14 -0
  298. package/build/ts/vote/publish.d.ts.map +1 -0
  299. package/build/ts/vote/publish.js +88 -0
  300. package/build/ts/vote/publish.js.map +1 -0
  301. package/build/ts/vote/submit.d.ts +13 -0
  302. package/build/ts/vote/submit.d.ts.map +1 -0
  303. package/build/ts/vote/submit.js +36 -0
  304. package/build/ts/vote/submit.js.map +1 -0
  305. package/build/ts/vote/types.d.ts +238 -0
  306. package/build/ts/vote/types.d.ts.map +1 -0
  307. package/build/ts/vote/types.js +3 -0
  308. package/build/ts/vote/types.js.map +1 -0
  309. package/build/ts/vote/utils.d.ts +16 -0
  310. package/build/ts/vote/utils.d.ts.map +1 -0
  311. package/build/ts/vote/utils.js +26 -0
  312. package/build/ts/vote/utils.js.map +1 -0
  313. package/build/tsconfig.build.tsbuildinfo +1 -0
  314. package/package.json +66 -0
@@ -0,0 +1,464 @@
1
+ import { LeanIMTMerkleProof } from "@zk-kit/lean-imt";
2
+ import type { MACI, Poll } from "@maci-protocol/contracts/typechain-types";
3
+ import type { PrivateKey, PublicKey } from "@maci-protocol/domainobjs";
4
+ import type { Signer } from "ethers";
5
+ /**
6
+ * Interface for the arguments to the isJoinedUser command
7
+ */
8
+ export interface IJoinedUserArgs {
9
+ /**
10
+ * The address of the MACI contract
11
+ */
12
+ maciAddress: string;
13
+ /**
14
+ * The id of the poll
15
+ */
16
+ pollId: bigint;
17
+ /**
18
+ * Poll public key for the poll
19
+ */
20
+ pollPublicKey: string;
21
+ /**
22
+ * A signer object
23
+ */
24
+ signer: Signer;
25
+ /**
26
+ * The start block number
27
+ */
28
+ startBlock: number;
29
+ }
30
+ /**
31
+ * Interface for the return data to the isRegisteredUser function
32
+ */
33
+ export interface IIsRegisteredUser {
34
+ /**
35
+ * Whether the user is registered
36
+ */
37
+ isRegistered: boolean;
38
+ /**
39
+ * The state index of the user
40
+ */
41
+ stateIndex?: string;
42
+ }
43
+ /**
44
+ * Interface for the return data to the isJoinedUser function
45
+ */
46
+ export interface IIsJoinedUser {
47
+ /**
48
+ * Whether the user joined the poll
49
+ */
50
+ isJoined: boolean;
51
+ /**
52
+ * The state index of the user
53
+ */
54
+ pollStateIndex?: string;
55
+ /**
56
+ * The voice credits of the user
57
+ */
58
+ voiceCredits?: string;
59
+ }
60
+ /**
61
+ * Interface for the arguments to the signup command
62
+ */
63
+ export interface ISignupArgs {
64
+ /**
65
+ * The public key of the user
66
+ */
67
+ maciPublicKey: string;
68
+ /**
69
+ * A signer object
70
+ */
71
+ signer: Signer;
72
+ /**
73
+ * The address of the MACI contract
74
+ */
75
+ maciAddress: string;
76
+ /**
77
+ * The signup policy data
78
+ */
79
+ sgData: string;
80
+ }
81
+ /**
82
+ * Interface for the return data to the signup command
83
+ */
84
+ export interface ISignupData {
85
+ /**
86
+ * The state index of the user
87
+ */
88
+ stateIndex: string;
89
+ /**
90
+ * The signup transaction hash
91
+ */
92
+ transactionHash: string;
93
+ }
94
+ /**
95
+ * Interface for the arguments to the register check command
96
+ */
97
+ export interface IRegisteredUserArgs {
98
+ /**
99
+ * A signer object
100
+ */
101
+ signer: Signer;
102
+ /**
103
+ * The public key of the user
104
+ */
105
+ maciPublicKey: string;
106
+ /**
107
+ * The address of the MACI contract
108
+ */
109
+ maciAddress: string;
110
+ /**
111
+ * Start block for event parsing
112
+ */
113
+ startBlock?: number;
114
+ }
115
+ /**
116
+ * Interface for the arguments to the parsePollJoinEvents function
117
+ */
118
+ export interface IParsePollJoinEventsArgs {
119
+ /**
120
+ * The MACI contract
121
+ */
122
+ pollContract: Poll;
123
+ /**
124
+ * The start block
125
+ */
126
+ startBlock: number;
127
+ /**
128
+ * The current block
129
+ */
130
+ currentBlock: number;
131
+ /**
132
+ * The public key
133
+ */
134
+ pollPublicKey: PublicKey;
135
+ }
136
+ /**
137
+ * Interface for the arguments to the parseSignupEvents function
138
+ */
139
+ export interface IParseSignupEventsArgs {
140
+ /**
141
+ * The MACI contract
142
+ */
143
+ maciContract: MACI;
144
+ /**
145
+ * The start block
146
+ */
147
+ startBlock: number;
148
+ /**
149
+ * The current block
150
+ */
151
+ currentBlock: number;
152
+ /**
153
+ * The public key
154
+ */
155
+ publicKey: PublicKey;
156
+ }
157
+ /**
158
+ * An interface describing the circuit inputs to the PollJoining circuit
159
+ */
160
+ export interface IPollJoiningCircuitInputs {
161
+ /**
162
+ * The private key
163
+ */
164
+ privateKey: string;
165
+ /**
166
+ * The poll public key
167
+ */
168
+ pollPublicKey: string[];
169
+ /**
170
+ * The state leaf
171
+ */
172
+ stateLeaf: string[];
173
+ /**
174
+ * The siblings for the merkle proof
175
+ */
176
+ siblings: string[][];
177
+ /**
178
+ * The path indices
179
+ */
180
+ indices: string[];
181
+ /**
182
+ * The nullifier
183
+ */
184
+ nullifier: string;
185
+ /**
186
+ * The state root
187
+ */
188
+ stateRoot: string;
189
+ /**
190
+ * The actual state tree depth
191
+ */
192
+ actualStateTreeDepth: string;
193
+ /**
194
+ * The poll id
195
+ */
196
+ pollId: string;
197
+ }
198
+ /**
199
+ * An interface describing the circuit inputs to the PollJoined circuit
200
+ */
201
+ export interface IPollJoinedCircuitInputs {
202
+ /**
203
+ * The private key
204
+ */
205
+ privateKey: string;
206
+ /**
207
+ * The voice credits balance
208
+ */
209
+ voiceCreditsBalance: string;
210
+ /**
211
+ * The state leaf
212
+ */
213
+ stateLeaf: string[];
214
+ /**
215
+ * The path elements
216
+ */
217
+ pathElements: string[][];
218
+ /**
219
+ * The path indices
220
+ */
221
+ pathIndices: string[];
222
+ /**
223
+ * The state root
224
+ */
225
+ stateRoot: string;
226
+ /**
227
+ * The actual state tree depth
228
+ */
229
+ actualStateTreeDepth: string;
230
+ }
231
+ /**
232
+ * Interface for the arguments to the joinPoll command
233
+ */
234
+ export interface IJoinPollArgs {
235
+ /**
236
+ * A signer object
237
+ */
238
+ signer: Signer;
239
+ /**
240
+ * The private key of the user
241
+ */
242
+ privateKey: string;
243
+ /**
244
+ * The id of the poll
245
+ */
246
+ pollId: bigint;
247
+ /**
248
+ * The index of the public key in the state tree
249
+ */
250
+ stateIndex?: bigint;
251
+ /**
252
+ * Path to the state file with MACI state
253
+ */
254
+ stateFile?: string;
255
+ /**
256
+ * The address of the MACI contract
257
+ */
258
+ maciAddress: string;
259
+ /**
260
+ * The end block number
261
+ */
262
+ endBlock?: number;
263
+ /**
264
+ * The start block number
265
+ */
266
+ startBlock?: number;
267
+ /**
268
+ * The number of blocks to fetch per batch
269
+ */
270
+ blocksPerBatch?: number;
271
+ /**
272
+ * The path to the poll zkey file
273
+ */
274
+ pollJoiningZkey: string;
275
+ /**
276
+ * Whether to use wasm or rapidsnark
277
+ */
278
+ useWasm?: boolean;
279
+ /**
280
+ * The path to the rapidsnark binary
281
+ */
282
+ rapidsnark?: string;
283
+ /**
284
+ * The path to the poll witnessgen binary
285
+ */
286
+ pollWitgen?: string;
287
+ /**
288
+ * The path to the poll wasm file
289
+ */
290
+ pollWasm?: string;
291
+ /**
292
+ * The signup policy data
293
+ */
294
+ sgDataArg: string;
295
+ /**
296
+ * The initial voice credit proxy data
297
+ */
298
+ ivcpDataArg: string;
299
+ }
300
+ /**
301
+ * Interface for the arguments to the joinPoll command for the browser
302
+ */
303
+ export interface IJoinPollBrowserArgs extends IJoinPollArgs {
304
+ /**
305
+ * Whether to use of not the latest state index
306
+ */
307
+ useLatestStateIndex?: boolean;
308
+ /**
309
+ * The inclusion proof
310
+ */
311
+ inclusionProof?: LeanIMTMerkleProof;
312
+ }
313
+ /**
314
+ * Interface for the return data to the joinPoll command
315
+ */
316
+ export interface IJoinPollData {
317
+ /**
318
+ * The poll state index of the joined user
319
+ */
320
+ pollStateIndex: string;
321
+ /**
322
+ * Voice credits balance
323
+ */
324
+ voiceCredits: string;
325
+ /**
326
+ * Private key nullifier
327
+ */
328
+ nullifier: string;
329
+ /**
330
+ * The join poll transaction hash
331
+ */
332
+ hash: string;
333
+ }
334
+ /**
335
+ * The arguments to check if a nullifier is on chain
336
+ */
337
+ export interface IIsNullifierOnChainArgs {
338
+ /**
339
+ * The address of the MACI contract
340
+ */
341
+ maciAddress: string;
342
+ /**
343
+ * The id of the poll
344
+ */
345
+ pollId: bigint;
346
+ /**
347
+ * The nullifier to check
348
+ */
349
+ nullifier: bigint;
350
+ /**
351
+ * The signer to use
352
+ */
353
+ signer: Signer;
354
+ }
355
+ /**
356
+ * Arguments for IGenMaciStateTreeArgs
357
+ */
358
+ export interface IGenMaciStateTreeArgs {
359
+ /**
360
+ * The MACI contract
361
+ */
362
+ maciContract: MACI;
363
+ /**
364
+ * The signer
365
+ */
366
+ signer: Signer;
367
+ /**
368
+ * The start block
369
+ */
370
+ startBlock?: number;
371
+ /**
372
+ * The end block
373
+ */
374
+ endBlock?: number;
375
+ /**
376
+ * The blocks per batch
377
+ */
378
+ blocksPerBatch?: number;
379
+ }
380
+ /**
381
+ * Arguments for IGenMaciStateTreeWithEndKeyArgs
382
+ */
383
+ export interface IGenMaciStateTreeWithEndKeyArgs extends IGenMaciStateTreeArgs {
384
+ /**
385
+ * The public key of the user
386
+ */
387
+ userPublicKey: PublicKey;
388
+ }
389
+ /**
390
+ * Arguments for getPollJoiningCircuitEvents
391
+ */
392
+ export interface IGetPollJoiningCircuitEventsArgs {
393
+ /**
394
+ * The MACI contract
395
+ */
396
+ maciContract: MACI;
397
+ /**
398
+ * The state index
399
+ */
400
+ stateIndex: bigint;
401
+ /**
402
+ * The poll id
403
+ */
404
+ pollId: bigint;
405
+ /**
406
+ * The user's maci private key
407
+ */
408
+ userMaciPrivateKey: PrivateKey;
409
+ /**
410
+ * The signer
411
+ */
412
+ signer: Signer;
413
+ /**
414
+ * The start block
415
+ */
416
+ startBlock?: number;
417
+ /**
418
+ * The end block
419
+ */
420
+ endBlock?: number;
421
+ /**
422
+ * The blocks per batch
423
+ */
424
+ blocksPerBatch?: number;
425
+ }
426
+ /**
427
+ * Arguments for getPollJoiningCircuitInputsFromStateFile
428
+ */
429
+ export interface IGetPollJoiningCircuitInputsFromStateFileArgs {
430
+ /**
431
+ * The path to the file containing the serialized MACI state
432
+ */
433
+ stateFile: string;
434
+ /**
435
+ * The poll id
436
+ */
437
+ pollId: bigint;
438
+ /**
439
+ * The state index
440
+ */
441
+ stateIndex: bigint;
442
+ /**
443
+ * The user's maci private key
444
+ */
445
+ userMaciPrivateKey: PrivateKey;
446
+ }
447
+ /**
448
+ * Interface for the arguments for the is signed up command
449
+ */
450
+ export interface IHasUserSignedUpArgs {
451
+ /**
452
+ * The address of the MACI contract
453
+ */
454
+ maciAddress: string;
455
+ /**
456
+ * The public key of the user
457
+ */
458
+ maciPublicKey: string;
459
+ /**
460
+ * The signer to use for the transaction
461
+ */
462
+ signer: Signer;
463
+ }
464
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../ts/user/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../ts/user/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,80 @@
1
+ import { PrivateKey, PublicKey } from "@maci-protocol/domainobjs";
2
+ import type { IGetPollJoiningCircuitEventsArgs, IGetPollJoiningCircuitInputsFromStateFileArgs, IParsePollJoinEventsArgs, IParseSignupEventsArgs, IJoinedUserArgs, IIsNullifierOnChainArgs, IGenMaciStateTreeArgs as IGenerateMaciStateTreeArgs, IGenMaciStateTreeWithEndKeyArgs as IGenerateMaciStateTreeWithEndKeyArgs } from "./types";
3
+ import type { IGenerateSignUpTree } from "../trees/types";
4
+ import type { TCircuitInputs } from "../utils/types";
5
+ import type { LeanIMTMerkleProof } from "@zk-kit/lean-imt";
6
+ /**
7
+ * Parse the poll joining events from the Poll contract
8
+ */
9
+ export declare const parsePollJoinEvents: ({ pollContract, startBlock, currentBlock, pollPublicKey, }: IParsePollJoinEventsArgs) => Promise<{
10
+ pollStateIndex?: string;
11
+ voiceCredits?: string;
12
+ }>;
13
+ /**
14
+ * Checks if user is joined to a poll with their public key and get its data
15
+ * @param {IJoinedUserArgs} - The arguments for the join check command
16
+ * @returns user joined or not and poll state index, voice credit balance
17
+ */
18
+ export declare const getJoinedUserData: ({ maciAddress, pollId, pollPublicKey: serializedPollPublicKey, signer, startBlock, }: IJoinedUserArgs) => Promise<{
19
+ isJoined: boolean;
20
+ pollStateIndex?: string;
21
+ voiceCredits?: string;
22
+ }>;
23
+ /**
24
+ * Checks if a user joined a poll with a given nullifier
25
+ * @param {IIsNullifierOnChainArgs} args - The arguments for the is nullifier on chain command
26
+ * @returns whether the nullifier is on chain or not
27
+ */
28
+ export declare const hasUserJoinedPoll: ({ maciAddress, pollId, nullifier, signer, }: IIsNullifierOnChainArgs) => Promise<boolean>;
29
+ /**
30
+ * Parse the signup events from the MACI contract
31
+ */
32
+ export declare const parseSignupEvents: ({ maciContract, startBlock, currentBlock, publicKey, }: IParseSignupEventsArgs) => Promise<{
33
+ stateIndex?: string;
34
+ }>;
35
+ /**
36
+ * Get state index from maci state leaves or from sign up leaves
37
+ * @param publicKeys Public keys from maci state or sign up tree
38
+ * @param userMaciPublicKey Public key of the maci user
39
+ * @param stateIndex State index from the command
40
+ * @returns State index
41
+ */
42
+ export declare const getStateIndex: (publicKeys: PublicKey[], userMaciPublicKey: PublicKey, stateIndex?: bigint) => bigint | undefined;
43
+ /**
44
+ * Create circuit input for pollJoining
45
+ * @param signUpData Sign up tree and state leaves
46
+ * @param stateTreeDepth Maci state tree depth
47
+ * @param maciPrivateKey User's private key for signing up
48
+ * @param pollPrivateKey Poll's private key for the poll joining
49
+ * @param pollPublicKey Poll's public key for the poll joining
50
+ * @param pollId Poll's id
51
+ * @returns stringified circuit inputs
52
+ */
53
+ export declare const joiningCircuitInputs: (inclusionProof: LeanIMTMerkleProof, stateTreeDepth: bigint, maciPrivateKey: PrivateKey, pollPublicKey: PublicKey, pollId: bigint) => TCircuitInputs;
54
+ /**
55
+ * Get the poll joining circuit inputs from a state file
56
+ * @param stateFile - The path to the state file
57
+ * @returns The poll joining circuit inputs
58
+ */
59
+ export declare const getPollJoiningCircuitInputsFromStateFile: ({ stateFile, pollId, stateIndex, userMaciPrivateKey, }: IGetPollJoiningCircuitInputsFromStateFileArgs) => Promise<TCircuitInputs>;
60
+ /**
61
+ * Generate MACI's state tree from the MACI contract
62
+ * @param {IGenerateMaciStateTreeArgs} args - The arguments for the generate maci state tree command
63
+ * @returns The MACI's state tree
64
+ */
65
+ export declare const generateMaciStateTree: ({ maciContract, signer, startBlock, endBlock, blocksPerBatch, }: IGenerateMaciStateTreeArgs) => Promise<IGenerateSignUpTree>;
66
+ /**
67
+ * Generate MACI's state tree from the MACI contract with a given end key
68
+ * @param {IGenerateMaciStateTreeWithEndKeyArgs} args - The arguments for the generate maci state tree command
69
+ * @returns The MACI's state tree
70
+ */
71
+ export declare const generateMaciStateTreeWithEndKey: ({ maciContract, signer, startBlock, endBlock, blocksPerBatch, userPublicKey, }: IGenerateMaciStateTreeWithEndKeyArgs) => Promise<IGenerateSignUpTree>;
72
+ /**
73
+ * Get the poll joining circuit events from a state file
74
+ * @param maciContract - The MACI contract
75
+ * @param startBlock - The start block
76
+ * @param signer - The signer
77
+ * @returns The poll joining circuit events
78
+ */
79
+ export declare const getPollJoiningCircuitEvents: ({ maciContract, stateIndex, pollId, userMaciPrivateKey, signer, startBlock, endBlock, blocksPerBatch, }: IGetPollJoiningCircuitEventsArgs) => Promise<TCircuitInputs>;
80
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../ts/user/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAW,UAAU,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI3E,OAAO,KAAK,EACV,gCAAgC,EAChC,6CAA6C,EAC7C,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,qBAAqB,IAAI,0BAA0B,EACnD,+BAA+B,IAAI,oCAAoC,EACxE,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAK3D;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAU,4DAKvC,wBAAwB,KAAG,OAAO,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAyBA,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAU,sFAMrC,eAAe,KAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAqBjG,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAU,6CAKrC,uBAAuB,KAAG,OAAO,CAAC,OAAO,CAM3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAU,wDAKrC,sBAAsB,KAAG,OAAO,CAAC;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAsB1D,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GACxB,YAAY,SAAS,EAAE,EACvB,mBAAmB,SAAS,EAC5B,aAAa,MAAM,KAClB,MAAM,GAAG,SAYX,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,GAC/B,gBAAgB,kBAAkB,EAClC,gBAAgB,MAAM,EACtB,gBAAgB,UAAU,EAC1B,eAAe,SAAS,EACxB,QAAQ,MAAM,KACb,cA0CF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wCAAwC,GAAU,wDAK5D,6CAA6C,KAAG,OAAO,CAAC,cAAc,CAwBxE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAU,iEAMzC,0BAA0B,KAAG,OAAO,CAAC,mBAAmB,CAgB1D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,GAAU,gFAOnD,oCAAoC,KAAG,OAAO,CAAC,mBAAmB,CAgBpE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GAAU,yGAS/C,gCAAgC,KAAG,OAAO,CAAC,cAAc,CA+B3D,CAAC"}