@coti-io/coti-contracts 0.1.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 (180) hide show
  1. package/.github/workflows/npm-publish.yml +52 -0
  2. package/CODE_OF_CONDUCT.md +44 -0
  3. package/CONTRIBUTING.md +101 -0
  4. package/LICENSE +201 -0
  5. package/README.md +48 -0
  6. package/contracts/access/DataPrivacyFramework/DataPrivacyFramework.sol +480 -0
  7. package/contracts/access/DataPrivacyFramework/README.md +68 -0
  8. package/contracts/access/DataPrivacyFramework/extensions/DataPrivacyFrameworkMpc.sol +1139 -0
  9. package/contracts/mocks/README.md +5 -0
  10. package/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock.sol +9 -0
  11. package/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.sol +17 -0
  12. package/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock.sol +34 -0
  13. package/contracts/mocks/utils/mpc/ArithmeticTestsContract.sol +431 -0
  14. package/contracts/mocks/utils/mpc/BitwiseTestsContract.sol +361 -0
  15. package/contracts/mocks/utils/mpc/Comparison1Tests.Contract.sol +307 -0
  16. package/contracts/mocks/utils/mpc/Comparison2TestsContract.sol +307 -0
  17. package/contracts/mocks/utils/mpc/MinMaxTestsContract.sol +297 -0
  18. package/contracts/mocks/utils/mpc/Miscellaneous1TestsContract.sol +185 -0
  19. package/contracts/mocks/utils/mpc/Miscellaneous2TestsContract.sol +448 -0
  20. package/contracts/mocks/utils/mpc/OffboardToUserKeyTestsContract.sol +81 -0
  21. package/contracts/mocks/utils/mpc/README.md +486 -0
  22. package/contracts/mocks/utils/mpc/ShiftTestsContract.sol +311 -0
  23. package/contracts/mocks/utils/mpc/StringTestsContract.sol +59 -0
  24. package/contracts/mocks/utils/mpc/TransferScalarTestsContract.sol +271 -0
  25. package/contracts/mocks/utils/mpc/TransferTestsContract.sol +715 -0
  26. package/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.sol +25 -0
  27. package/contracts/onboard/AccountOnboard.sol +21 -0
  28. package/contracts/onboard/README.md +65 -0
  29. package/contracts/package.json +11 -0
  30. package/contracts/token/PrivateERC20/IPrivateERC20.sol +142 -0
  31. package/contracts/token/PrivateERC20/PrivateERC20.sol +478 -0
  32. package/contracts/token/PrivateERC20/README.md +104 -0
  33. package/contracts/token/PrivateERC721/PrivateERC721.sol +458 -0
  34. package/contracts/token/PrivateERC721/README.md +282 -0
  35. package/contracts/token/PrivateERC721/extensions/PrivateERC721URIStorage.sol +87 -0
  36. package/contracts/utils/mpc/MpcCore.sol +3215 -0
  37. package/contracts/utils/mpc/MpcInterface.sol +41 -0
  38. package/contracts/utils/mpc/README.md +82 -0
  39. package/hardhat.config.ts +18 -0
  40. package/package.json +14 -0
  41. package/test/access/DataPrivacyFramework/DataPrivacyFramework.test.ts +780 -0
  42. package/test/onboard/AccountOnboard.test.ts +45 -0
  43. package/test/token/PrivateERC20/PrivateERC20.test.ts +546 -0
  44. package/test/token/PrivateERC721/PrivateERC721.test.ts +223 -0
  45. package/test/utils/accounts.ts +55 -0
  46. package/test/utils/mpc/Precompile.test.ts +113 -0
  47. package/test/utils/mpc/String.test.ts +227 -0
  48. package/tsconfig.json +11 -0
  49. package/typechain-types/@openzeppelin/contracts/index.ts +9 -0
  50. package/typechain-types/@openzeppelin/contracts/interfaces/IERC4906.ts +462 -0
  51. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.ts +69 -0
  52. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.ts +69 -0
  53. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.ts +69 -0
  54. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.ts +6 -0
  55. package/typechain-types/@openzeppelin/contracts/interfaces/index.ts +6 -0
  56. package/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721.ts +393 -0
  57. package/typechain-types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.ts +110 -0
  58. package/typechain-types/@openzeppelin/contracts/token/ERC721/index.ts +5 -0
  59. package/typechain-types/@openzeppelin/contracts/token/index.ts +5 -0
  60. package/typechain-types/@openzeppelin/contracts/utils/index.ts +5 -0
  61. package/typechain-types/@openzeppelin/contracts/utils/introspection/ERC165.ts +94 -0
  62. package/typechain-types/@openzeppelin/contracts/utils/introspection/IERC165.ts +94 -0
  63. package/typechain-types/@openzeppelin/contracts/utils/introspection/index.ts +5 -0
  64. package/typechain-types/@openzeppelin/index.ts +5 -0
  65. package/typechain-types/common.ts +131 -0
  66. package/typechain-types/contracts/access/DataPrivacyFramework/DataPrivacyFramework.ts +598 -0
  67. package/typechain-types/contracts/access/DataPrivacyFramework/extensions/DataPrivacyFrameworkMpc.ts +598 -0
  68. package/typechain-types/contracts/access/DataPrivacyFramework/extensions/index.ts +4 -0
  69. package/typechain-types/contracts/access/DataPrivacyFramework/index.ts +6 -0
  70. package/typechain-types/contracts/access/index.ts +5 -0
  71. package/typechain-types/contracts/index.ts +13 -0
  72. package/typechain-types/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock.ts +598 -0
  73. package/typechain-types/contracts/mocks/access/DataPrivacyFramework/index.ts +4 -0
  74. package/typechain-types/contracts/mocks/access/index.ts +5 -0
  75. package/typechain-types/contracts/mocks/index.ts +11 -0
  76. package/typechain-types/contracts/mocks/token/PrivateERC20/PrivateERC20Mock.ts +543 -0
  77. package/typechain-types/contracts/mocks/token/PrivateERC20/index.ts +4 -0
  78. package/typechain-types/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock.ts +576 -0
  79. package/typechain-types/contracts/mocks/token/PrivateERC721/index.ts +4 -0
  80. package/typechain-types/contracts/mocks/token/index.ts +7 -0
  81. package/typechain-types/contracts/mocks/utils/index.ts +5 -0
  82. package/typechain-types/contracts/mocks/utils/mpc/ArithmeticTestsContract.ts +354 -0
  83. package/typechain-types/contracts/mocks/utils/mpc/BitwiseTestsContract.ts +340 -0
  84. package/typechain-types/contracts/mocks/utils/mpc/Comparison1Tests.Contract.sol/Comparison1TestsContract.ts +340 -0
  85. package/typechain-types/contracts/mocks/utils/mpc/Comparison1Tests.Contract.sol/index.ts +4 -0
  86. package/typechain-types/contracts/mocks/utils/mpc/Comparison2TestsContract.ts +340 -0
  87. package/typechain-types/contracts/mocks/utils/mpc/MinMaxTestsContract.ts +321 -0
  88. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous1TestsContract.ts +199 -0
  89. package/typechain-types/contracts/mocks/utils/mpc/Miscellaneous2TestsContract.ts +384 -0
  90. package/typechain-types/contracts/mocks/utils/mpc/OffboardToUserKeyTestsContract.sol/OffboardToUserKeyTestContract.ts +218 -0
  91. package/typechain-types/contracts/mocks/utils/mpc/OffboardToUserKeyTestsContract.sol/index.ts +4 -0
  92. package/typechain-types/contracts/mocks/utils/mpc/ShiftTestsContract.ts +339 -0
  93. package/typechain-types/contracts/mocks/utils/mpc/StringTestsContract.ts +211 -0
  94. package/typechain-types/contracts/mocks/utils/mpc/TransferScalarTestsContract.ts +266 -0
  95. package/typechain-types/contracts/mocks/utils/mpc/TransferTestsContract.ts +288 -0
  96. package/typechain-types/contracts/mocks/utils/mpc/index.ts +17 -0
  97. package/typechain-types/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock.ts +173 -0
  98. package/typechain-types/contracts/mocks/wallet/PrivateERC20Wallet/index.ts +4 -0
  99. package/typechain-types/contracts/mocks/wallet/index.ts +5 -0
  100. package/typechain-types/contracts/onboard/AccountOnboard.ts +135 -0
  101. package/typechain-types/contracts/onboard/index.ts +4 -0
  102. package/typechain-types/contracts/token/PrivateERC20/IPrivateERC20.ts +437 -0
  103. package/typechain-types/contracts/token/PrivateERC20/PrivateERC20.ts +505 -0
  104. package/typechain-types/contracts/token/PrivateERC20/index.ts +5 -0
  105. package/typechain-types/contracts/token/PrivateERC721/PrivateERC721.ts +409 -0
  106. package/typechain-types/contracts/token/PrivateERC721/extensions/PrivateERC721URIStorage.ts +501 -0
  107. package/typechain-types/contracts/token/PrivateERC721/extensions/index.ts +4 -0
  108. package/typechain-types/contracts/token/PrivateERC721/index.ts +6 -0
  109. package/typechain-types/contracts/token/index.ts +7 -0
  110. package/typechain-types/contracts/utils/index.ts +5 -0
  111. package/typechain-types/contracts/utils/mpc/MpcInterface.sol/ExtendedOperations.ts +698 -0
  112. package/typechain-types/contracts/utils/mpc/MpcInterface.sol/index.ts +4 -0
  113. package/typechain-types/contracts/utils/mpc/index.ts +5 -0
  114. package/typechain-types/factories/@openzeppelin/contracts/index.ts +6 -0
  115. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC4906__factory.ts +339 -0
  116. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors__factory.ts +127 -0
  117. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors__factory.ts +111 -0
  118. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors__factory.ts +128 -0
  119. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/index.ts +6 -0
  120. package/typechain-types/factories/@openzeppelin/contracts/interfaces/index.ts +5 -0
  121. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.ts +59 -0
  122. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.ts +307 -0
  123. package/typechain-types/factories/@openzeppelin/contracts/token/ERC721/index.ts +5 -0
  124. package/typechain-types/factories/@openzeppelin/contracts/token/index.ts +4 -0
  125. package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +4 -0
  126. package/typechain-types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.ts +41 -0
  127. package/typechain-types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts +41 -0
  128. package/typechain-types/factories/@openzeppelin/contracts/utils/introspection/index.ts +5 -0
  129. package/typechain-types/factories/@openzeppelin/index.ts +4 -0
  130. package/typechain-types/factories/contracts/access/DataPrivacyFramework/DataPrivacyFramework__factory.ts +621 -0
  131. package/typechain-types/factories/contracts/access/DataPrivacyFramework/extensions/DataPrivacyFrameworkMpc__factory.ts +621 -0
  132. package/typechain-types/factories/contracts/access/DataPrivacyFramework/extensions/index.ts +4 -0
  133. package/typechain-types/factories/contracts/access/DataPrivacyFramework/index.ts +5 -0
  134. package/typechain-types/factories/contracts/access/index.ts +4 -0
  135. package/typechain-types/factories/contracts/index.ts +8 -0
  136. package/typechain-types/factories/contracts/mocks/access/DataPrivacyFramework/DataPrivacyFrameworkMock__factory.ts +670 -0
  137. package/typechain-types/factories/contracts/mocks/access/DataPrivacyFramework/index.ts +4 -0
  138. package/typechain-types/factories/contracts/mocks/access/index.ts +4 -0
  139. package/typechain-types/factories/contracts/mocks/index.ts +7 -0
  140. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/PrivateERC20Mock__factory.ts +615 -0
  141. package/typechain-types/factories/contracts/mocks/token/PrivateERC20/index.ts +4 -0
  142. package/typechain-types/factories/contracts/mocks/token/PrivateERC721/PrivateERC721URIStorageMock__factory.ts +630 -0
  143. package/typechain-types/factories/contracts/mocks/token/PrivateERC721/index.ts +4 -0
  144. package/typechain-types/factories/contracts/mocks/token/index.ts +5 -0
  145. package/typechain-types/factories/contracts/mocks/utils/index.ts +4 -0
  146. package/typechain-types/factories/contracts/mocks/utils/mpc/ArithmeticTestsContract__factory.ts +374 -0
  147. package/typechain-types/factories/contracts/mocks/utils/mpc/BitwiseTestsContract__factory.ts +361 -0
  148. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison1Tests.Contract.sol/Comparison1TestsContract__factory.ts +361 -0
  149. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison1Tests.Contract.sol/index.ts +4 -0
  150. package/typechain-types/factories/contracts/mocks/utils/mpc/Comparison2TestsContract__factory.ts +361 -0
  151. package/typechain-types/factories/contracts/mocks/utils/mpc/MinMaxTestsContract__factory.ts +337 -0
  152. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous1TestsContract__factory.ts +236 -0
  153. package/typechain-types/factories/contracts/mocks/utils/mpc/Miscellaneous2TestsContract__factory.ts +432 -0
  154. package/typechain-types/factories/contracts/mocks/utils/mpc/OffboardToUserKeyTestsContract.sol/OffboardToUserKeyTestContract__factory.ts +245 -0
  155. package/typechain-types/factories/contracts/mocks/utils/mpc/OffboardToUserKeyTestsContract.sol/index.ts +4 -0
  156. package/typechain-types/factories/contracts/mocks/utils/mpc/ShiftTestsContract__factory.ts +374 -0
  157. package/typechain-types/factories/contracts/mocks/utils/mpc/StringTestsContract__factory.ts +264 -0
  158. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferScalarTestsContract__factory.ts +360 -0
  159. package/typechain-types/factories/contracts/mocks/utils/mpc/TransferTestsContract__factory.ts +441 -0
  160. package/typechain-types/factories/contracts/mocks/utils/mpc/index.ts +15 -0
  161. package/typechain-types/factories/contracts/mocks/wallet/PrivateERC20Wallet/PrivateERC20WalletMock__factory.ts +194 -0
  162. package/typechain-types/factories/contracts/mocks/wallet/PrivateERC20Wallet/index.ts +4 -0
  163. package/typechain-types/factories/contracts/mocks/wallet/index.ts +4 -0
  164. package/typechain-types/factories/contracts/onboard/AccountOnboard__factory.ts +104 -0
  165. package/typechain-types/factories/contracts/onboard/index.ts +4 -0
  166. package/typechain-types/factories/contracts/token/PrivateERC20/IPrivateERC20__factory.ts +406 -0
  167. package/typechain-types/factories/contracts/token/PrivateERC20/PrivateERC20__factory.ts +532 -0
  168. package/typechain-types/factories/contracts/token/PrivateERC20/index.ts +5 -0
  169. package/typechain-types/factories/contracts/token/PrivateERC721/PrivateERC721__factory.ts +439 -0
  170. package/typechain-types/factories/contracts/token/PrivateERC721/extensions/PrivateERC721URIStorage__factory.ts +512 -0
  171. package/typechain-types/factories/contracts/token/PrivateERC721/extensions/index.ts +4 -0
  172. package/typechain-types/factories/contracts/token/PrivateERC721/index.ts +5 -0
  173. package/typechain-types/factories/contracts/token/index.ts +5 -0
  174. package/typechain-types/factories/contracts/utils/index.ts +4 -0
  175. package/typechain-types/factories/contracts/utils/mpc/MpcInterface.sol/ExtendedOperations__factory.ts +919 -0
  176. package/typechain-types/factories/contracts/utils/mpc/MpcInterface.sol/index.ts +4 -0
  177. package/typechain-types/factories/contracts/utils/mpc/index.ts +4 -0
  178. package/typechain-types/factories/index.ts +5 -0
  179. package/typechain-types/hardhat.d.ts +621 -0
  180. package/typechain-types/index.ts +72 -0
@@ -0,0 +1,532 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Contract, Interface, type ContractRunner } from "ethers";
6
+ import type {
7
+ PrivateERC20,
8
+ PrivateERC20Interface,
9
+ } from "../../../../contracts/token/PrivateERC20/PrivateERC20";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "address",
16
+ name: "approver",
17
+ type: "address",
18
+ },
19
+ ],
20
+ name: "ERC20InvalidApprover",
21
+ type: "error",
22
+ },
23
+ {
24
+ inputs: [
25
+ {
26
+ internalType: "address",
27
+ name: "receiver",
28
+ type: "address",
29
+ },
30
+ ],
31
+ name: "ERC20InvalidReceiver",
32
+ type: "error",
33
+ },
34
+ {
35
+ inputs: [
36
+ {
37
+ internalType: "address",
38
+ name: "sender",
39
+ type: "address",
40
+ },
41
+ ],
42
+ name: "ERC20InvalidSender",
43
+ type: "error",
44
+ },
45
+ {
46
+ inputs: [
47
+ {
48
+ internalType: "address",
49
+ name: "spender",
50
+ type: "address",
51
+ },
52
+ ],
53
+ name: "ERC20InvalidSpender",
54
+ type: "error",
55
+ },
56
+ {
57
+ anonymous: false,
58
+ inputs: [
59
+ {
60
+ indexed: true,
61
+ internalType: "address",
62
+ name: "owner",
63
+ type: "address",
64
+ },
65
+ {
66
+ indexed: true,
67
+ internalType: "address",
68
+ name: "spender",
69
+ type: "address",
70
+ },
71
+ {
72
+ indexed: false,
73
+ internalType: "ctUint64",
74
+ name: "ownerValue",
75
+ type: "uint256",
76
+ },
77
+ {
78
+ indexed: false,
79
+ internalType: "ctUint64",
80
+ name: "spenderValue",
81
+ type: "uint256",
82
+ },
83
+ ],
84
+ name: "Approval",
85
+ type: "event",
86
+ },
87
+ {
88
+ anonymous: false,
89
+ inputs: [
90
+ {
91
+ indexed: true,
92
+ internalType: "address",
93
+ name: "from",
94
+ type: "address",
95
+ },
96
+ {
97
+ indexed: true,
98
+ internalType: "address",
99
+ name: "to",
100
+ type: "address",
101
+ },
102
+ {
103
+ indexed: false,
104
+ internalType: "ctUint64",
105
+ name: "senderValue",
106
+ type: "uint256",
107
+ },
108
+ {
109
+ indexed: false,
110
+ internalType: "ctUint64",
111
+ name: "receiverValue",
112
+ type: "uint256",
113
+ },
114
+ ],
115
+ name: "Transfer",
116
+ type: "event",
117
+ },
118
+ {
119
+ inputs: [
120
+ {
121
+ internalType: "address",
122
+ name: "account",
123
+ type: "address",
124
+ },
125
+ ],
126
+ name: "accountEncryptionAddress",
127
+ outputs: [
128
+ {
129
+ internalType: "address",
130
+ name: "",
131
+ type: "address",
132
+ },
133
+ ],
134
+ stateMutability: "view",
135
+ type: "function",
136
+ },
137
+ {
138
+ inputs: [
139
+ {
140
+ internalType: "address",
141
+ name: "account",
142
+ type: "address",
143
+ },
144
+ {
145
+ internalType: "bool",
146
+ name: "isSpender",
147
+ type: "bool",
148
+ },
149
+ ],
150
+ name: "allowance",
151
+ outputs: [
152
+ {
153
+ internalType: "gtUint64",
154
+ name: "",
155
+ type: "uint256",
156
+ },
157
+ ],
158
+ stateMutability: "nonpayable",
159
+ type: "function",
160
+ },
161
+ {
162
+ inputs: [
163
+ {
164
+ internalType: "address",
165
+ name: "owner",
166
+ type: "address",
167
+ },
168
+ {
169
+ internalType: "address",
170
+ name: "spender",
171
+ type: "address",
172
+ },
173
+ ],
174
+ name: "allowance",
175
+ outputs: [
176
+ {
177
+ components: [
178
+ {
179
+ internalType: "ctUint64",
180
+ name: "ciphertext",
181
+ type: "uint256",
182
+ },
183
+ {
184
+ internalType: "ctUint64",
185
+ name: "ownerCiphertext",
186
+ type: "uint256",
187
+ },
188
+ {
189
+ internalType: "ctUint64",
190
+ name: "spenderCiphertext",
191
+ type: "uint256",
192
+ },
193
+ ],
194
+ internalType: "struct IPrivateERC20.Allowance",
195
+ name: "",
196
+ type: "tuple",
197
+ },
198
+ ],
199
+ stateMutability: "view",
200
+ type: "function",
201
+ },
202
+ {
203
+ inputs: [
204
+ {
205
+ internalType: "address",
206
+ name: "spender",
207
+ type: "address",
208
+ },
209
+ {
210
+ internalType: "gtUint64",
211
+ name: "value",
212
+ type: "uint256",
213
+ },
214
+ ],
215
+ name: "approve",
216
+ outputs: [
217
+ {
218
+ internalType: "bool",
219
+ name: "",
220
+ type: "bool",
221
+ },
222
+ ],
223
+ stateMutability: "nonpayable",
224
+ type: "function",
225
+ },
226
+ {
227
+ inputs: [
228
+ {
229
+ internalType: "address",
230
+ name: "spender",
231
+ type: "address",
232
+ },
233
+ {
234
+ components: [
235
+ {
236
+ internalType: "ctUint64",
237
+ name: "ciphertext",
238
+ type: "uint256",
239
+ },
240
+ {
241
+ internalType: "bytes",
242
+ name: "signature",
243
+ type: "bytes",
244
+ },
245
+ ],
246
+ internalType: "struct itUint64",
247
+ name: "value",
248
+ type: "tuple",
249
+ },
250
+ ],
251
+ name: "approve",
252
+ outputs: [
253
+ {
254
+ internalType: "bool",
255
+ name: "",
256
+ type: "bool",
257
+ },
258
+ ],
259
+ stateMutability: "nonpayable",
260
+ type: "function",
261
+ },
262
+ {
263
+ inputs: [
264
+ {
265
+ internalType: "address",
266
+ name: "account",
267
+ type: "address",
268
+ },
269
+ ],
270
+ name: "balanceOf",
271
+ outputs: [
272
+ {
273
+ internalType: "ctUint64",
274
+ name: "",
275
+ type: "uint256",
276
+ },
277
+ ],
278
+ stateMutability: "view",
279
+ type: "function",
280
+ },
281
+ {
282
+ inputs: [],
283
+ name: "balanceOf",
284
+ outputs: [
285
+ {
286
+ internalType: "gtUint64",
287
+ name: "",
288
+ type: "uint256",
289
+ },
290
+ ],
291
+ stateMutability: "nonpayable",
292
+ type: "function",
293
+ },
294
+ {
295
+ inputs: [],
296
+ name: "decimals",
297
+ outputs: [
298
+ {
299
+ internalType: "uint8",
300
+ name: "",
301
+ type: "uint8",
302
+ },
303
+ ],
304
+ stateMutability: "view",
305
+ type: "function",
306
+ },
307
+ {
308
+ inputs: [],
309
+ name: "name",
310
+ outputs: [
311
+ {
312
+ internalType: "string",
313
+ name: "",
314
+ type: "string",
315
+ },
316
+ ],
317
+ stateMutability: "view",
318
+ type: "function",
319
+ },
320
+ {
321
+ inputs: [
322
+ {
323
+ internalType: "address",
324
+ name: "account",
325
+ type: "address",
326
+ },
327
+ {
328
+ internalType: "bool",
329
+ name: "isSpender",
330
+ type: "bool",
331
+ },
332
+ ],
333
+ name: "reencryptAllowance",
334
+ outputs: [
335
+ {
336
+ internalType: "bool",
337
+ name: "",
338
+ type: "bool",
339
+ },
340
+ ],
341
+ stateMutability: "nonpayable",
342
+ type: "function",
343
+ },
344
+ {
345
+ inputs: [
346
+ {
347
+ internalType: "address",
348
+ name: "offBoardAddress",
349
+ type: "address",
350
+ },
351
+ ],
352
+ name: "setAccountEncryptionAddress",
353
+ outputs: [
354
+ {
355
+ internalType: "bool",
356
+ name: "",
357
+ type: "bool",
358
+ },
359
+ ],
360
+ stateMutability: "nonpayable",
361
+ type: "function",
362
+ },
363
+ {
364
+ inputs: [],
365
+ name: "symbol",
366
+ outputs: [
367
+ {
368
+ internalType: "string",
369
+ name: "",
370
+ type: "string",
371
+ },
372
+ ],
373
+ stateMutability: "view",
374
+ type: "function",
375
+ },
376
+ {
377
+ inputs: [],
378
+ name: "totalSupply",
379
+ outputs: [
380
+ {
381
+ internalType: "uint256",
382
+ name: "",
383
+ type: "uint256",
384
+ },
385
+ ],
386
+ stateMutability: "view",
387
+ type: "function",
388
+ },
389
+ {
390
+ inputs: [
391
+ {
392
+ internalType: "address",
393
+ name: "to",
394
+ type: "address",
395
+ },
396
+ {
397
+ components: [
398
+ {
399
+ internalType: "ctUint64",
400
+ name: "ciphertext",
401
+ type: "uint256",
402
+ },
403
+ {
404
+ internalType: "bytes",
405
+ name: "signature",
406
+ type: "bytes",
407
+ },
408
+ ],
409
+ internalType: "struct itUint64",
410
+ name: "value",
411
+ type: "tuple",
412
+ },
413
+ ],
414
+ name: "transfer",
415
+ outputs: [
416
+ {
417
+ internalType: "gtBool",
418
+ name: "",
419
+ type: "uint256",
420
+ },
421
+ ],
422
+ stateMutability: "nonpayable",
423
+ type: "function",
424
+ },
425
+ {
426
+ inputs: [
427
+ {
428
+ internalType: "address",
429
+ name: "to",
430
+ type: "address",
431
+ },
432
+ {
433
+ internalType: "gtUint64",
434
+ name: "value",
435
+ type: "uint256",
436
+ },
437
+ ],
438
+ name: "transfer",
439
+ outputs: [
440
+ {
441
+ internalType: "gtBool",
442
+ name: "",
443
+ type: "uint256",
444
+ },
445
+ ],
446
+ stateMutability: "nonpayable",
447
+ type: "function",
448
+ },
449
+ {
450
+ inputs: [
451
+ {
452
+ internalType: "address",
453
+ name: "from",
454
+ type: "address",
455
+ },
456
+ {
457
+ internalType: "address",
458
+ name: "to",
459
+ type: "address",
460
+ },
461
+ {
462
+ components: [
463
+ {
464
+ internalType: "ctUint64",
465
+ name: "ciphertext",
466
+ type: "uint256",
467
+ },
468
+ {
469
+ internalType: "bytes",
470
+ name: "signature",
471
+ type: "bytes",
472
+ },
473
+ ],
474
+ internalType: "struct itUint64",
475
+ name: "value",
476
+ type: "tuple",
477
+ },
478
+ ],
479
+ name: "transferFrom",
480
+ outputs: [
481
+ {
482
+ internalType: "gtBool",
483
+ name: "",
484
+ type: "uint256",
485
+ },
486
+ ],
487
+ stateMutability: "nonpayable",
488
+ type: "function",
489
+ },
490
+ {
491
+ inputs: [
492
+ {
493
+ internalType: "address",
494
+ name: "from",
495
+ type: "address",
496
+ },
497
+ {
498
+ internalType: "address",
499
+ name: "to",
500
+ type: "address",
501
+ },
502
+ {
503
+ internalType: "gtUint64",
504
+ name: "value",
505
+ type: "uint256",
506
+ },
507
+ ],
508
+ name: "transferFrom",
509
+ outputs: [
510
+ {
511
+ internalType: "gtBool",
512
+ name: "",
513
+ type: "uint256",
514
+ },
515
+ ],
516
+ stateMutability: "nonpayable",
517
+ type: "function",
518
+ },
519
+ ] as const;
520
+
521
+ export class PrivateERC20__factory {
522
+ static readonly abi = _abi;
523
+ static createInterface(): PrivateERC20Interface {
524
+ return new Interface(_abi) as PrivateERC20Interface;
525
+ }
526
+ static connect(
527
+ address: string,
528
+ runner?: ContractRunner | null
529
+ ): PrivateERC20 {
530
+ return new Contract(address, _abi, runner) as unknown as PrivateERC20;
531
+ }
532
+ }
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export { IPrivateERC20__factory } from "./IPrivateERC20__factory";
5
+ export { PrivateERC20__factory } from "./PrivateERC20__factory";