@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,698 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BigNumberish,
7
+ BytesLike,
8
+ FunctionFragment,
9
+ Result,
10
+ Interface,
11
+ ContractRunner,
12
+ ContractMethod,
13
+ Listener,
14
+ } from "ethers";
15
+ import type {
16
+ TypedContractEvent,
17
+ TypedDeferredTopicFilter,
18
+ TypedEventLog,
19
+ TypedListener,
20
+ TypedContractMethod,
21
+ } from "../../../../common";
22
+
23
+ export interface ExtendedOperationsInterface extends Interface {
24
+ getFunction(
25
+ nameOrSignature:
26
+ | "Add"
27
+ | "And"
28
+ | "Decrypt"
29
+ | "Div"
30
+ | "Eq"
31
+ | "Ge"
32
+ | "GetUserKey"
33
+ | "Gt"
34
+ | "Le"
35
+ | "Lt"
36
+ | "Max"
37
+ | "Min"
38
+ | "Mul"
39
+ | "Mux"
40
+ | "Ne"
41
+ | "Not"
42
+ | "OffBoard"
43
+ | "OffBoardToUser"
44
+ | "OnBoard"
45
+ | "Or"
46
+ | "Rand"
47
+ | "RandBoundedBits"
48
+ | "Rem"
49
+ | "SetPublic"
50
+ | "Shl"
51
+ | "Shr"
52
+ | "Sub"
53
+ | "Transfer"
54
+ | "TransferWithAllowance"
55
+ | "ValidateCiphertext"
56
+ | "Xor"
57
+ ): FunctionFragment;
58
+
59
+ encodeFunctionData(
60
+ functionFragment: "Add",
61
+ values: [BytesLike, BigNumberish, BigNumberish]
62
+ ): string;
63
+ encodeFunctionData(
64
+ functionFragment: "And",
65
+ values: [BytesLike, BigNumberish, BigNumberish]
66
+ ): string;
67
+ encodeFunctionData(
68
+ functionFragment: "Decrypt",
69
+ values: [BytesLike, BigNumberish]
70
+ ): string;
71
+ encodeFunctionData(
72
+ functionFragment: "Div",
73
+ values: [BytesLike, BigNumberish, BigNumberish]
74
+ ): string;
75
+ encodeFunctionData(
76
+ functionFragment: "Eq",
77
+ values: [BytesLike, BigNumberish, BigNumberish]
78
+ ): string;
79
+ encodeFunctionData(
80
+ functionFragment: "Ge",
81
+ values: [BytesLike, BigNumberish, BigNumberish]
82
+ ): string;
83
+ encodeFunctionData(
84
+ functionFragment: "GetUserKey",
85
+ values: [BytesLike]
86
+ ): string;
87
+ encodeFunctionData(
88
+ functionFragment: "Gt",
89
+ values: [BytesLike, BigNumberish, BigNumberish]
90
+ ): string;
91
+ encodeFunctionData(
92
+ functionFragment: "Le",
93
+ values: [BytesLike, BigNumberish, BigNumberish]
94
+ ): string;
95
+ encodeFunctionData(
96
+ functionFragment: "Lt",
97
+ values: [BytesLike, BigNumberish, BigNumberish]
98
+ ): string;
99
+ encodeFunctionData(
100
+ functionFragment: "Max",
101
+ values: [BytesLike, BigNumberish, BigNumberish]
102
+ ): string;
103
+ encodeFunctionData(
104
+ functionFragment: "Min",
105
+ values: [BytesLike, BigNumberish, BigNumberish]
106
+ ): string;
107
+ encodeFunctionData(
108
+ functionFragment: "Mul",
109
+ values: [BytesLike, BigNumberish, BigNumberish]
110
+ ): string;
111
+ encodeFunctionData(
112
+ functionFragment: "Mux",
113
+ values: [BytesLike, BigNumberish, BigNumberish, BigNumberish]
114
+ ): string;
115
+ encodeFunctionData(
116
+ functionFragment: "Ne",
117
+ values: [BytesLike, BigNumberish, BigNumberish]
118
+ ): string;
119
+ encodeFunctionData(
120
+ functionFragment: "Not",
121
+ values: [BytesLike, BigNumberish]
122
+ ): string;
123
+ encodeFunctionData(
124
+ functionFragment: "OffBoard",
125
+ values: [BytesLike, BigNumberish]
126
+ ): string;
127
+ encodeFunctionData(
128
+ functionFragment: "OffBoardToUser",
129
+ values: [BytesLike, BigNumberish, BytesLike]
130
+ ): string;
131
+ encodeFunctionData(
132
+ functionFragment: "OnBoard",
133
+ values: [BytesLike, BigNumberish]
134
+ ): string;
135
+ encodeFunctionData(
136
+ functionFragment: "Or",
137
+ values: [BytesLike, BigNumberish, BigNumberish]
138
+ ): string;
139
+ encodeFunctionData(functionFragment: "Rand", values: [BytesLike]): string;
140
+ encodeFunctionData(
141
+ functionFragment: "RandBoundedBits",
142
+ values: [BytesLike, BigNumberish]
143
+ ): string;
144
+ encodeFunctionData(
145
+ functionFragment: "Rem",
146
+ values: [BytesLike, BigNumberish, BigNumberish]
147
+ ): string;
148
+ encodeFunctionData(
149
+ functionFragment: "SetPublic",
150
+ values: [BytesLike, BigNumberish]
151
+ ): string;
152
+ encodeFunctionData(
153
+ functionFragment: "Shl",
154
+ values: [BytesLike, BigNumberish, BigNumberish]
155
+ ): string;
156
+ encodeFunctionData(
157
+ functionFragment: "Shr",
158
+ values: [BytesLike, BigNumberish, BigNumberish]
159
+ ): string;
160
+ encodeFunctionData(
161
+ functionFragment: "Sub",
162
+ values: [BytesLike, BigNumberish, BigNumberish]
163
+ ): string;
164
+ encodeFunctionData(
165
+ functionFragment: "Transfer",
166
+ values: [BytesLike, BigNumberish, BigNumberish, BigNumberish]
167
+ ): string;
168
+ encodeFunctionData(
169
+ functionFragment: "TransferWithAllowance",
170
+ values: [BytesLike, BigNumberish, BigNumberish, BigNumberish, BigNumberish]
171
+ ): string;
172
+ encodeFunctionData(
173
+ functionFragment: "ValidateCiphertext",
174
+ values: [BytesLike, BigNumberish, BytesLike]
175
+ ): string;
176
+ encodeFunctionData(
177
+ functionFragment: "Xor",
178
+ values: [BytesLike, BigNumberish, BigNumberish]
179
+ ): string;
180
+
181
+ decodeFunctionResult(functionFragment: "Add", data: BytesLike): Result;
182
+ decodeFunctionResult(functionFragment: "And", data: BytesLike): Result;
183
+ decodeFunctionResult(functionFragment: "Decrypt", data: BytesLike): Result;
184
+ decodeFunctionResult(functionFragment: "Div", data: BytesLike): Result;
185
+ decodeFunctionResult(functionFragment: "Eq", data: BytesLike): Result;
186
+ decodeFunctionResult(functionFragment: "Ge", data: BytesLike): Result;
187
+ decodeFunctionResult(functionFragment: "GetUserKey", data: BytesLike): Result;
188
+ decodeFunctionResult(functionFragment: "Gt", data: BytesLike): Result;
189
+ decodeFunctionResult(functionFragment: "Le", data: BytesLike): Result;
190
+ decodeFunctionResult(functionFragment: "Lt", data: BytesLike): Result;
191
+ decodeFunctionResult(functionFragment: "Max", data: BytesLike): Result;
192
+ decodeFunctionResult(functionFragment: "Min", data: BytesLike): Result;
193
+ decodeFunctionResult(functionFragment: "Mul", data: BytesLike): Result;
194
+ decodeFunctionResult(functionFragment: "Mux", data: BytesLike): Result;
195
+ decodeFunctionResult(functionFragment: "Ne", data: BytesLike): Result;
196
+ decodeFunctionResult(functionFragment: "Not", data: BytesLike): Result;
197
+ decodeFunctionResult(functionFragment: "OffBoard", data: BytesLike): Result;
198
+ decodeFunctionResult(
199
+ functionFragment: "OffBoardToUser",
200
+ data: BytesLike
201
+ ): Result;
202
+ decodeFunctionResult(functionFragment: "OnBoard", data: BytesLike): Result;
203
+ decodeFunctionResult(functionFragment: "Or", data: BytesLike): Result;
204
+ decodeFunctionResult(functionFragment: "Rand", data: BytesLike): Result;
205
+ decodeFunctionResult(
206
+ functionFragment: "RandBoundedBits",
207
+ data: BytesLike
208
+ ): Result;
209
+ decodeFunctionResult(functionFragment: "Rem", data: BytesLike): Result;
210
+ decodeFunctionResult(functionFragment: "SetPublic", data: BytesLike): Result;
211
+ decodeFunctionResult(functionFragment: "Shl", data: BytesLike): Result;
212
+ decodeFunctionResult(functionFragment: "Shr", data: BytesLike): Result;
213
+ decodeFunctionResult(functionFragment: "Sub", data: BytesLike): Result;
214
+ decodeFunctionResult(functionFragment: "Transfer", data: BytesLike): Result;
215
+ decodeFunctionResult(
216
+ functionFragment: "TransferWithAllowance",
217
+ data: BytesLike
218
+ ): Result;
219
+ decodeFunctionResult(
220
+ functionFragment: "ValidateCiphertext",
221
+ data: BytesLike
222
+ ): Result;
223
+ decodeFunctionResult(functionFragment: "Xor", data: BytesLike): Result;
224
+ }
225
+
226
+ export interface ExtendedOperations extends BaseContract {
227
+ connect(runner?: ContractRunner | null): ExtendedOperations;
228
+ waitForDeployment(): Promise<this>;
229
+
230
+ interface: ExtendedOperationsInterface;
231
+
232
+ queryFilter<TCEvent extends TypedContractEvent>(
233
+ event: TCEvent,
234
+ fromBlockOrBlockhash?: string | number | undefined,
235
+ toBlock?: string | number | undefined
236
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
237
+ queryFilter<TCEvent extends TypedContractEvent>(
238
+ filter: TypedDeferredTopicFilter<TCEvent>,
239
+ fromBlockOrBlockhash?: string | number | undefined,
240
+ toBlock?: string | number | undefined
241
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
242
+
243
+ on<TCEvent extends TypedContractEvent>(
244
+ event: TCEvent,
245
+ listener: TypedListener<TCEvent>
246
+ ): Promise<this>;
247
+ on<TCEvent extends TypedContractEvent>(
248
+ filter: TypedDeferredTopicFilter<TCEvent>,
249
+ listener: TypedListener<TCEvent>
250
+ ): Promise<this>;
251
+
252
+ once<TCEvent extends TypedContractEvent>(
253
+ event: TCEvent,
254
+ listener: TypedListener<TCEvent>
255
+ ): Promise<this>;
256
+ once<TCEvent extends TypedContractEvent>(
257
+ filter: TypedDeferredTopicFilter<TCEvent>,
258
+ listener: TypedListener<TCEvent>
259
+ ): Promise<this>;
260
+
261
+ listeners<TCEvent extends TypedContractEvent>(
262
+ event: TCEvent
263
+ ): Promise<Array<TypedListener<TCEvent>>>;
264
+ listeners(eventName?: string): Promise<Array<Listener>>;
265
+ removeAllListeners<TCEvent extends TypedContractEvent>(
266
+ event?: TCEvent
267
+ ): Promise<this>;
268
+
269
+ Add: TypedContractMethod<
270
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
271
+ [bigint],
272
+ "nonpayable"
273
+ >;
274
+
275
+ And: TypedContractMethod<
276
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
277
+ [bigint],
278
+ "nonpayable"
279
+ >;
280
+
281
+ Decrypt: TypedContractMethod<
282
+ [metaData: BytesLike, a: BigNumberish],
283
+ [bigint],
284
+ "nonpayable"
285
+ >;
286
+
287
+ Div: TypedContractMethod<
288
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
289
+ [bigint],
290
+ "nonpayable"
291
+ >;
292
+
293
+ Eq: TypedContractMethod<
294
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
295
+ [bigint],
296
+ "nonpayable"
297
+ >;
298
+
299
+ Ge: TypedContractMethod<
300
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
301
+ [bigint],
302
+ "nonpayable"
303
+ >;
304
+
305
+ GetUserKey: TypedContractMethod<[signedEK: BytesLike], [string], "view">;
306
+
307
+ Gt: TypedContractMethod<
308
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
309
+ [bigint],
310
+ "nonpayable"
311
+ >;
312
+
313
+ Le: TypedContractMethod<
314
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
315
+ [bigint],
316
+ "nonpayable"
317
+ >;
318
+
319
+ Lt: TypedContractMethod<
320
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
321
+ [bigint],
322
+ "nonpayable"
323
+ >;
324
+
325
+ Max: TypedContractMethod<
326
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
327
+ [bigint],
328
+ "nonpayable"
329
+ >;
330
+
331
+ Min: TypedContractMethod<
332
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
333
+ [bigint],
334
+ "nonpayable"
335
+ >;
336
+
337
+ Mul: TypedContractMethod<
338
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
339
+ [bigint],
340
+ "nonpayable"
341
+ >;
342
+
343
+ Mux: TypedContractMethod<
344
+ [metaData: BytesLike, bit: BigNumberish, a: BigNumberish, b: BigNumberish],
345
+ [bigint],
346
+ "nonpayable"
347
+ >;
348
+
349
+ Ne: TypedContractMethod<
350
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
351
+ [bigint],
352
+ "nonpayable"
353
+ >;
354
+
355
+ Not: TypedContractMethod<
356
+ [metaData: BytesLike, a: BigNumberish],
357
+ [bigint],
358
+ "nonpayable"
359
+ >;
360
+
361
+ OffBoard: TypedContractMethod<
362
+ [metaData: BytesLike, ct: BigNumberish],
363
+ [bigint],
364
+ "nonpayable"
365
+ >;
366
+
367
+ OffBoardToUser: TypedContractMethod<
368
+ [metaData: BytesLike, ct: BigNumberish, addr: BytesLike],
369
+ [bigint],
370
+ "nonpayable"
371
+ >;
372
+
373
+ OnBoard: TypedContractMethod<
374
+ [metaData: BytesLike, ct: BigNumberish],
375
+ [bigint],
376
+ "nonpayable"
377
+ >;
378
+
379
+ Or: TypedContractMethod<
380
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
381
+ [bigint],
382
+ "nonpayable"
383
+ >;
384
+
385
+ Rand: TypedContractMethod<[metaData: BytesLike], [bigint], "nonpayable">;
386
+
387
+ RandBoundedBits: TypedContractMethod<
388
+ [metaData: BytesLike, numBits: BigNumberish],
389
+ [bigint],
390
+ "nonpayable"
391
+ >;
392
+
393
+ Rem: TypedContractMethod<
394
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
395
+ [bigint],
396
+ "nonpayable"
397
+ >;
398
+
399
+ SetPublic: TypedContractMethod<
400
+ [metaData: BytesLike, ct: BigNumberish],
401
+ [bigint],
402
+ "nonpayable"
403
+ >;
404
+
405
+ Shl: TypedContractMethod<
406
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
407
+ [bigint],
408
+ "nonpayable"
409
+ >;
410
+
411
+ Shr: TypedContractMethod<
412
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
413
+ [bigint],
414
+ "nonpayable"
415
+ >;
416
+
417
+ Sub: TypedContractMethod<
418
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
419
+ [bigint],
420
+ "nonpayable"
421
+ >;
422
+
423
+ Transfer: TypedContractMethod<
424
+ [
425
+ metaData: BytesLike,
426
+ a: BigNumberish,
427
+ b: BigNumberish,
428
+ amount: BigNumberish
429
+ ],
430
+ [[bigint, bigint, bigint] & { new_a: bigint; new_b: bigint; res: bigint }],
431
+ "nonpayable"
432
+ >;
433
+
434
+ TransferWithAllowance: TypedContractMethod<
435
+ [
436
+ metaData: BytesLike,
437
+ a: BigNumberish,
438
+ b: BigNumberish,
439
+ amount: BigNumberish,
440
+ allowance: BigNumberish
441
+ ],
442
+ [
443
+ [bigint, bigint, bigint, bigint] & {
444
+ new_a: bigint;
445
+ new_b: bigint;
446
+ res: bigint;
447
+ new_allowance: bigint;
448
+ }
449
+ ],
450
+ "nonpayable"
451
+ >;
452
+
453
+ ValidateCiphertext: TypedContractMethod<
454
+ [metaData: BytesLike, ciphertext: BigNumberish, signature: BytesLike],
455
+ [bigint],
456
+ "nonpayable"
457
+ >;
458
+
459
+ Xor: TypedContractMethod<
460
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
461
+ [bigint],
462
+ "nonpayable"
463
+ >;
464
+
465
+ getFunction<T extends ContractMethod = ContractMethod>(
466
+ key: string | FunctionFragment
467
+ ): T;
468
+
469
+ getFunction(
470
+ nameOrSignature: "Add"
471
+ ): TypedContractMethod<
472
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
473
+ [bigint],
474
+ "nonpayable"
475
+ >;
476
+ getFunction(
477
+ nameOrSignature: "And"
478
+ ): TypedContractMethod<
479
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
480
+ [bigint],
481
+ "nonpayable"
482
+ >;
483
+ getFunction(
484
+ nameOrSignature: "Decrypt"
485
+ ): TypedContractMethod<
486
+ [metaData: BytesLike, a: BigNumberish],
487
+ [bigint],
488
+ "nonpayable"
489
+ >;
490
+ getFunction(
491
+ nameOrSignature: "Div"
492
+ ): TypedContractMethod<
493
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
494
+ [bigint],
495
+ "nonpayable"
496
+ >;
497
+ getFunction(
498
+ nameOrSignature: "Eq"
499
+ ): TypedContractMethod<
500
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
501
+ [bigint],
502
+ "nonpayable"
503
+ >;
504
+ getFunction(
505
+ nameOrSignature: "Ge"
506
+ ): TypedContractMethod<
507
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
508
+ [bigint],
509
+ "nonpayable"
510
+ >;
511
+ getFunction(
512
+ nameOrSignature: "GetUserKey"
513
+ ): TypedContractMethod<[signedEK: BytesLike], [string], "view">;
514
+ getFunction(
515
+ nameOrSignature: "Gt"
516
+ ): TypedContractMethod<
517
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
518
+ [bigint],
519
+ "nonpayable"
520
+ >;
521
+ getFunction(
522
+ nameOrSignature: "Le"
523
+ ): TypedContractMethod<
524
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
525
+ [bigint],
526
+ "nonpayable"
527
+ >;
528
+ getFunction(
529
+ nameOrSignature: "Lt"
530
+ ): TypedContractMethod<
531
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
532
+ [bigint],
533
+ "nonpayable"
534
+ >;
535
+ getFunction(
536
+ nameOrSignature: "Max"
537
+ ): TypedContractMethod<
538
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
539
+ [bigint],
540
+ "nonpayable"
541
+ >;
542
+ getFunction(
543
+ nameOrSignature: "Min"
544
+ ): TypedContractMethod<
545
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
546
+ [bigint],
547
+ "nonpayable"
548
+ >;
549
+ getFunction(
550
+ nameOrSignature: "Mul"
551
+ ): TypedContractMethod<
552
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
553
+ [bigint],
554
+ "nonpayable"
555
+ >;
556
+ getFunction(
557
+ nameOrSignature: "Mux"
558
+ ): TypedContractMethod<
559
+ [metaData: BytesLike, bit: BigNumberish, a: BigNumberish, b: BigNumberish],
560
+ [bigint],
561
+ "nonpayable"
562
+ >;
563
+ getFunction(
564
+ nameOrSignature: "Ne"
565
+ ): TypedContractMethod<
566
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
567
+ [bigint],
568
+ "nonpayable"
569
+ >;
570
+ getFunction(
571
+ nameOrSignature: "Not"
572
+ ): TypedContractMethod<
573
+ [metaData: BytesLike, a: BigNumberish],
574
+ [bigint],
575
+ "nonpayable"
576
+ >;
577
+ getFunction(
578
+ nameOrSignature: "OffBoard"
579
+ ): TypedContractMethod<
580
+ [metaData: BytesLike, ct: BigNumberish],
581
+ [bigint],
582
+ "nonpayable"
583
+ >;
584
+ getFunction(
585
+ nameOrSignature: "OffBoardToUser"
586
+ ): TypedContractMethod<
587
+ [metaData: BytesLike, ct: BigNumberish, addr: BytesLike],
588
+ [bigint],
589
+ "nonpayable"
590
+ >;
591
+ getFunction(
592
+ nameOrSignature: "OnBoard"
593
+ ): TypedContractMethod<
594
+ [metaData: BytesLike, ct: BigNumberish],
595
+ [bigint],
596
+ "nonpayable"
597
+ >;
598
+ getFunction(
599
+ nameOrSignature: "Or"
600
+ ): TypedContractMethod<
601
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
602
+ [bigint],
603
+ "nonpayable"
604
+ >;
605
+ getFunction(
606
+ nameOrSignature: "Rand"
607
+ ): TypedContractMethod<[metaData: BytesLike], [bigint], "nonpayable">;
608
+ getFunction(
609
+ nameOrSignature: "RandBoundedBits"
610
+ ): TypedContractMethod<
611
+ [metaData: BytesLike, numBits: BigNumberish],
612
+ [bigint],
613
+ "nonpayable"
614
+ >;
615
+ getFunction(
616
+ nameOrSignature: "Rem"
617
+ ): TypedContractMethod<
618
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
619
+ [bigint],
620
+ "nonpayable"
621
+ >;
622
+ getFunction(
623
+ nameOrSignature: "SetPublic"
624
+ ): TypedContractMethod<
625
+ [metaData: BytesLike, ct: BigNumberish],
626
+ [bigint],
627
+ "nonpayable"
628
+ >;
629
+ getFunction(
630
+ nameOrSignature: "Shl"
631
+ ): TypedContractMethod<
632
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
633
+ [bigint],
634
+ "nonpayable"
635
+ >;
636
+ getFunction(
637
+ nameOrSignature: "Shr"
638
+ ): TypedContractMethod<
639
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
640
+ [bigint],
641
+ "nonpayable"
642
+ >;
643
+ getFunction(
644
+ nameOrSignature: "Sub"
645
+ ): TypedContractMethod<
646
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
647
+ [bigint],
648
+ "nonpayable"
649
+ >;
650
+ getFunction(
651
+ nameOrSignature: "Transfer"
652
+ ): TypedContractMethod<
653
+ [
654
+ metaData: BytesLike,
655
+ a: BigNumberish,
656
+ b: BigNumberish,
657
+ amount: BigNumberish
658
+ ],
659
+ [[bigint, bigint, bigint] & { new_a: bigint; new_b: bigint; res: bigint }],
660
+ "nonpayable"
661
+ >;
662
+ getFunction(
663
+ nameOrSignature: "TransferWithAllowance"
664
+ ): TypedContractMethod<
665
+ [
666
+ metaData: BytesLike,
667
+ a: BigNumberish,
668
+ b: BigNumberish,
669
+ amount: BigNumberish,
670
+ allowance: BigNumberish
671
+ ],
672
+ [
673
+ [bigint, bigint, bigint, bigint] & {
674
+ new_a: bigint;
675
+ new_b: bigint;
676
+ res: bigint;
677
+ new_allowance: bigint;
678
+ }
679
+ ],
680
+ "nonpayable"
681
+ >;
682
+ getFunction(
683
+ nameOrSignature: "ValidateCiphertext"
684
+ ): TypedContractMethod<
685
+ [metaData: BytesLike, ciphertext: BigNumberish, signature: BytesLike],
686
+ [bigint],
687
+ "nonpayable"
688
+ >;
689
+ getFunction(
690
+ nameOrSignature: "Xor"
691
+ ): TypedContractMethod<
692
+ [metaData: BytesLike, lhs: BigNumberish, rhs: BigNumberish],
693
+ [bigint],
694
+ "nonpayable"
695
+ >;
696
+
697
+ filters: {};
698
+ }
@@ -0,0 +1,4 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export type { ExtendedOperations } from "./ExtendedOperations";
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type * as mpcInterfaceSol from "./MpcInterface.sol";
5
+ export type { mpcInterfaceSol };
@@ -0,0 +1,6 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export * as interfaces from "./interfaces";
5
+ export * as token from "./token";
6
+ export * as utils from "./utils";