@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,339 @@
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 declare namespace ShiftTestsContract {
24
+ export type Check16Struct = {
25
+ res16_16: BigNumberish;
26
+ res8_16: BigNumberish;
27
+ res16_8: BigNumberish;
28
+ };
29
+
30
+ export type Check16StructOutput = [
31
+ res16_16: bigint,
32
+ res8_16: bigint,
33
+ res16_8: bigint
34
+ ] & { res16_16: bigint; res8_16: bigint; res16_8: bigint };
35
+
36
+ export type Check32Struct = {
37
+ res32_32: BigNumberish;
38
+ res8_32: BigNumberish;
39
+ res32_8: BigNumberish;
40
+ res16_32: BigNumberish;
41
+ res32_16: BigNumberish;
42
+ };
43
+
44
+ export type Check32StructOutput = [
45
+ res32_32: bigint,
46
+ res8_32: bigint,
47
+ res32_8: bigint,
48
+ res16_32: bigint,
49
+ res32_16: bigint
50
+ ] & {
51
+ res32_32: bigint;
52
+ res8_32: bigint;
53
+ res32_8: bigint;
54
+ res16_32: bigint;
55
+ res32_16: bigint;
56
+ };
57
+
58
+ export type Check64Struct = {
59
+ res64_64: BigNumberish;
60
+ res8_64: BigNumberish;
61
+ res64_8: BigNumberish;
62
+ res16_64: BigNumberish;
63
+ res64_16: BigNumberish;
64
+ res32_64: BigNumberish;
65
+ res64_32: BigNumberish;
66
+ };
67
+
68
+ export type Check64StructOutput = [
69
+ res64_64: bigint,
70
+ res8_64: bigint,
71
+ res64_8: bigint,
72
+ res16_64: bigint,
73
+ res64_16: bigint,
74
+ res32_64: bigint,
75
+ res64_32: bigint
76
+ ] & {
77
+ res64_64: bigint;
78
+ res8_64: bigint;
79
+ res64_8: bigint;
80
+ res16_64: bigint;
81
+ res64_16: bigint;
82
+ res32_64: bigint;
83
+ res64_32: bigint;
84
+ };
85
+
86
+ export type AllGTCastingValuesStruct = {
87
+ a8_s: BigNumberish;
88
+ b8_s: BigNumberish;
89
+ a16_s: BigNumberish;
90
+ b16_s: BigNumberish;
91
+ a32_s: BigNumberish;
92
+ b32_s: BigNumberish;
93
+ a64_s: BigNumberish;
94
+ b64_s: BigNumberish;
95
+ };
96
+
97
+ export type AllGTCastingValuesStructOutput = [
98
+ a8_s: bigint,
99
+ b8_s: bigint,
100
+ a16_s: bigint,
101
+ b16_s: bigint,
102
+ a32_s: bigint,
103
+ b32_s: bigint,
104
+ a64_s: bigint,
105
+ b64_s: bigint
106
+ ] & {
107
+ a8_s: bigint;
108
+ b8_s: bigint;
109
+ a16_s: bigint;
110
+ b16_s: bigint;
111
+ a32_s: bigint;
112
+ b32_s: bigint;
113
+ a64_s: bigint;
114
+ b64_s: bigint;
115
+ };
116
+ }
117
+
118
+ export interface ShiftTestsContractInterface extends Interface {
119
+ getFunction(
120
+ nameOrSignature:
121
+ | "decryptAndCompareResults16"
122
+ | "decryptAndCompareResults32"
123
+ | "decryptAndCompareResults64"
124
+ | "getAllShiftResults"
125
+ | "getResult"
126
+ | "setPublicValues"
127
+ | "shlTest"
128
+ | "shrTest"
129
+ ): FunctionFragment;
130
+
131
+ encodeFunctionData(
132
+ functionFragment: "decryptAndCompareResults16",
133
+ values: [ShiftTestsContract.Check16Struct]
134
+ ): string;
135
+ encodeFunctionData(
136
+ functionFragment: "decryptAndCompareResults32",
137
+ values: [ShiftTestsContract.Check32Struct]
138
+ ): string;
139
+ encodeFunctionData(
140
+ functionFragment: "decryptAndCompareResults64",
141
+ values: [ShiftTestsContract.Check64Struct]
142
+ ): string;
143
+ encodeFunctionData(
144
+ functionFragment: "getAllShiftResults",
145
+ values?: undefined
146
+ ): string;
147
+ encodeFunctionData(functionFragment: "getResult", values?: undefined): string;
148
+ encodeFunctionData(
149
+ functionFragment: "setPublicValues",
150
+ values: [
151
+ ShiftTestsContract.AllGTCastingValuesStruct,
152
+ BigNumberish,
153
+ BigNumberish
154
+ ]
155
+ ): string;
156
+ encodeFunctionData(
157
+ functionFragment: "shlTest",
158
+ values: [BigNumberish, BigNumberish]
159
+ ): string;
160
+ encodeFunctionData(
161
+ functionFragment: "shrTest",
162
+ values: [BigNumberish, BigNumberish]
163
+ ): string;
164
+
165
+ decodeFunctionResult(
166
+ functionFragment: "decryptAndCompareResults16",
167
+ data: BytesLike
168
+ ): Result;
169
+ decodeFunctionResult(
170
+ functionFragment: "decryptAndCompareResults32",
171
+ data: BytesLike
172
+ ): Result;
173
+ decodeFunctionResult(
174
+ functionFragment: "decryptAndCompareResults64",
175
+ data: BytesLike
176
+ ): Result;
177
+ decodeFunctionResult(
178
+ functionFragment: "getAllShiftResults",
179
+ data: BytesLike
180
+ ): Result;
181
+ decodeFunctionResult(functionFragment: "getResult", data: BytesLike): Result;
182
+ decodeFunctionResult(
183
+ functionFragment: "setPublicValues",
184
+ data: BytesLike
185
+ ): Result;
186
+ decodeFunctionResult(functionFragment: "shlTest", data: BytesLike): Result;
187
+ decodeFunctionResult(functionFragment: "shrTest", data: BytesLike): Result;
188
+ }
189
+
190
+ export interface ShiftTestsContract extends BaseContract {
191
+ connect(runner?: ContractRunner | null): ShiftTestsContract;
192
+ waitForDeployment(): Promise<this>;
193
+
194
+ interface: ShiftTestsContractInterface;
195
+
196
+ queryFilter<TCEvent extends TypedContractEvent>(
197
+ event: TCEvent,
198
+ fromBlockOrBlockhash?: string | number | undefined,
199
+ toBlock?: string | number | undefined
200
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
201
+ queryFilter<TCEvent extends TypedContractEvent>(
202
+ filter: TypedDeferredTopicFilter<TCEvent>,
203
+ fromBlockOrBlockhash?: string | number | undefined,
204
+ toBlock?: string | number | undefined
205
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
206
+
207
+ on<TCEvent extends TypedContractEvent>(
208
+ event: TCEvent,
209
+ listener: TypedListener<TCEvent>
210
+ ): Promise<this>;
211
+ on<TCEvent extends TypedContractEvent>(
212
+ filter: TypedDeferredTopicFilter<TCEvent>,
213
+ listener: TypedListener<TCEvent>
214
+ ): Promise<this>;
215
+
216
+ once<TCEvent extends TypedContractEvent>(
217
+ event: TCEvent,
218
+ listener: TypedListener<TCEvent>
219
+ ): Promise<this>;
220
+ once<TCEvent extends TypedContractEvent>(
221
+ filter: TypedDeferredTopicFilter<TCEvent>,
222
+ listener: TypedListener<TCEvent>
223
+ ): Promise<this>;
224
+
225
+ listeners<TCEvent extends TypedContractEvent>(
226
+ event: TCEvent
227
+ ): Promise<Array<TypedListener<TCEvent>>>;
228
+ listeners(eventName?: string): Promise<Array<Listener>>;
229
+ removeAllListeners<TCEvent extends TypedContractEvent>(
230
+ event?: TCEvent
231
+ ): Promise<this>;
232
+
233
+ decryptAndCompareResults16: TypedContractMethod<
234
+ [check16: ShiftTestsContract.Check16Struct],
235
+ [bigint],
236
+ "nonpayable"
237
+ >;
238
+
239
+ decryptAndCompareResults32: TypedContractMethod<
240
+ [check32: ShiftTestsContract.Check32Struct],
241
+ [bigint],
242
+ "nonpayable"
243
+ >;
244
+
245
+ decryptAndCompareResults64: TypedContractMethod<
246
+ [check64: ShiftTestsContract.Check64Struct],
247
+ [bigint],
248
+ "nonpayable"
249
+ >;
250
+
251
+ getAllShiftResults: TypedContractMethod<
252
+ [],
253
+ [[bigint, bigint, bigint, bigint]],
254
+ "view"
255
+ >;
256
+
257
+ getResult: TypedContractMethod<[], [bigint], "view">;
258
+
259
+ setPublicValues: TypedContractMethod<
260
+ [
261
+ castingValues: ShiftTestsContract.AllGTCastingValuesStruct,
262
+ a: BigNumberish,
263
+ b: BigNumberish
264
+ ],
265
+ [void],
266
+ "nonpayable"
267
+ >;
268
+
269
+ shlTest: TypedContractMethod<
270
+ [a: BigNumberish, b: BigNumberish],
271
+ [[bigint, bigint, bigint, bigint]],
272
+ "nonpayable"
273
+ >;
274
+
275
+ shrTest: TypedContractMethod<
276
+ [a: BigNumberish, b: BigNumberish],
277
+ [bigint],
278
+ "nonpayable"
279
+ >;
280
+
281
+ getFunction<T extends ContractMethod = ContractMethod>(
282
+ key: string | FunctionFragment
283
+ ): T;
284
+
285
+ getFunction(
286
+ nameOrSignature: "decryptAndCompareResults16"
287
+ ): TypedContractMethod<
288
+ [check16: ShiftTestsContract.Check16Struct],
289
+ [bigint],
290
+ "nonpayable"
291
+ >;
292
+ getFunction(
293
+ nameOrSignature: "decryptAndCompareResults32"
294
+ ): TypedContractMethod<
295
+ [check32: ShiftTestsContract.Check32Struct],
296
+ [bigint],
297
+ "nonpayable"
298
+ >;
299
+ getFunction(
300
+ nameOrSignature: "decryptAndCompareResults64"
301
+ ): TypedContractMethod<
302
+ [check64: ShiftTestsContract.Check64Struct],
303
+ [bigint],
304
+ "nonpayable"
305
+ >;
306
+ getFunction(
307
+ nameOrSignature: "getAllShiftResults"
308
+ ): TypedContractMethod<[], [[bigint, bigint, bigint, bigint]], "view">;
309
+ getFunction(
310
+ nameOrSignature: "getResult"
311
+ ): TypedContractMethod<[], [bigint], "view">;
312
+ getFunction(
313
+ nameOrSignature: "setPublicValues"
314
+ ): TypedContractMethod<
315
+ [
316
+ castingValues: ShiftTestsContract.AllGTCastingValuesStruct,
317
+ a: BigNumberish,
318
+ b: BigNumberish
319
+ ],
320
+ [void],
321
+ "nonpayable"
322
+ >;
323
+ getFunction(
324
+ nameOrSignature: "shlTest"
325
+ ): TypedContractMethod<
326
+ [a: BigNumberish, b: BigNumberish],
327
+ [[bigint, bigint, bigint, bigint]],
328
+ "nonpayable"
329
+ >;
330
+ getFunction(
331
+ nameOrSignature: "shrTest"
332
+ ): TypedContractMethod<
333
+ [a: BigNumberish, b: BigNumberish],
334
+ [bigint],
335
+ "nonpayable"
336
+ >;
337
+
338
+ filters: {};
339
+ }
@@ -0,0 +1,211 @@
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 type CtStringStruct = { value: BigNumberish[] };
24
+
25
+ export type CtStringStructOutput = [value: bigint[]] & { value: bigint[] };
26
+
27
+ export type ItStringStruct = {
28
+ ciphertext: CtStringStruct;
29
+ signature: BytesLike[];
30
+ };
31
+
32
+ export type ItStringStructOutput = [
33
+ ciphertext: CtStringStructOutput,
34
+ signature: string[]
35
+ ] & { ciphertext: CtStringStructOutput; signature: string[] };
36
+
37
+ export interface StringTestsContractInterface extends Interface {
38
+ getFunction(
39
+ nameOrSignature:
40
+ | "decryptNetworkEncryptedString"
41
+ | "getUserEncryptedString"
42
+ | "isEqual"
43
+ | "plaintext"
44
+ | "setIsEqual"
45
+ | "setNetworkEncryptedString"
46
+ | "setPublicString"
47
+ | "setUserEncryptedString"
48
+ ): FunctionFragment;
49
+
50
+ encodeFunctionData(
51
+ functionFragment: "decryptNetworkEncryptedString",
52
+ values?: undefined
53
+ ): string;
54
+ encodeFunctionData(
55
+ functionFragment: "getUserEncryptedString",
56
+ values?: undefined
57
+ ): string;
58
+ encodeFunctionData(functionFragment: "isEqual", values?: undefined): string;
59
+ encodeFunctionData(functionFragment: "plaintext", values?: undefined): string;
60
+ encodeFunctionData(
61
+ functionFragment: "setIsEqual",
62
+ values: [ItStringStruct, ItStringStruct, boolean]
63
+ ): string;
64
+ encodeFunctionData(
65
+ functionFragment: "setNetworkEncryptedString",
66
+ values: [ItStringStruct]
67
+ ): string;
68
+ encodeFunctionData(
69
+ functionFragment: "setPublicString",
70
+ values: [string]
71
+ ): string;
72
+ encodeFunctionData(
73
+ functionFragment: "setUserEncryptedString",
74
+ values: [ItStringStruct]
75
+ ): string;
76
+
77
+ decodeFunctionResult(
78
+ functionFragment: "decryptNetworkEncryptedString",
79
+ data: BytesLike
80
+ ): Result;
81
+ decodeFunctionResult(
82
+ functionFragment: "getUserEncryptedString",
83
+ data: BytesLike
84
+ ): Result;
85
+ decodeFunctionResult(functionFragment: "isEqual", data: BytesLike): Result;
86
+ decodeFunctionResult(functionFragment: "plaintext", data: BytesLike): Result;
87
+ decodeFunctionResult(functionFragment: "setIsEqual", data: BytesLike): Result;
88
+ decodeFunctionResult(
89
+ functionFragment: "setNetworkEncryptedString",
90
+ data: BytesLike
91
+ ): Result;
92
+ decodeFunctionResult(
93
+ functionFragment: "setPublicString",
94
+ data: BytesLike
95
+ ): Result;
96
+ decodeFunctionResult(
97
+ functionFragment: "setUserEncryptedString",
98
+ data: BytesLike
99
+ ): Result;
100
+ }
101
+
102
+ export interface StringTestsContract extends BaseContract {
103
+ connect(runner?: ContractRunner | null): StringTestsContract;
104
+ waitForDeployment(): Promise<this>;
105
+
106
+ interface: StringTestsContractInterface;
107
+
108
+ queryFilter<TCEvent extends TypedContractEvent>(
109
+ event: TCEvent,
110
+ fromBlockOrBlockhash?: string | number | undefined,
111
+ toBlock?: string | number | undefined
112
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
113
+ queryFilter<TCEvent extends TypedContractEvent>(
114
+ filter: TypedDeferredTopicFilter<TCEvent>,
115
+ fromBlockOrBlockhash?: string | number | undefined,
116
+ toBlock?: string | number | undefined
117
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
118
+
119
+ on<TCEvent extends TypedContractEvent>(
120
+ event: TCEvent,
121
+ listener: TypedListener<TCEvent>
122
+ ): Promise<this>;
123
+ on<TCEvent extends TypedContractEvent>(
124
+ filter: TypedDeferredTopicFilter<TCEvent>,
125
+ listener: TypedListener<TCEvent>
126
+ ): Promise<this>;
127
+
128
+ once<TCEvent extends TypedContractEvent>(
129
+ event: TCEvent,
130
+ listener: TypedListener<TCEvent>
131
+ ): Promise<this>;
132
+ once<TCEvent extends TypedContractEvent>(
133
+ filter: TypedDeferredTopicFilter<TCEvent>,
134
+ listener: TypedListener<TCEvent>
135
+ ): Promise<this>;
136
+
137
+ listeners<TCEvent extends TypedContractEvent>(
138
+ event: TCEvent
139
+ ): Promise<Array<TypedListener<TCEvent>>>;
140
+ listeners(eventName?: string): Promise<Array<Listener>>;
141
+ removeAllListeners<TCEvent extends TypedContractEvent>(
142
+ event?: TCEvent
143
+ ): Promise<this>;
144
+
145
+ decryptNetworkEncryptedString: TypedContractMethod<[], [void], "nonpayable">;
146
+
147
+ getUserEncryptedString: TypedContractMethod<
148
+ [],
149
+ [CtStringStructOutput],
150
+ "view"
151
+ >;
152
+
153
+ isEqual: TypedContractMethod<[], [boolean], "view">;
154
+
155
+ plaintext: TypedContractMethod<[], [string], "view">;
156
+
157
+ setIsEqual: TypedContractMethod<
158
+ [a_: ItStringStruct, b_: ItStringStruct, useEq: boolean],
159
+ [void],
160
+ "nonpayable"
161
+ >;
162
+
163
+ setNetworkEncryptedString: TypedContractMethod<
164
+ [it_: ItStringStruct],
165
+ [void],
166
+ "nonpayable"
167
+ >;
168
+
169
+ setPublicString: TypedContractMethod<[str: string], [void], "nonpayable">;
170
+
171
+ setUserEncryptedString: TypedContractMethod<
172
+ [it_: ItStringStruct],
173
+ [void],
174
+ "nonpayable"
175
+ >;
176
+
177
+ getFunction<T extends ContractMethod = ContractMethod>(
178
+ key: string | FunctionFragment
179
+ ): T;
180
+
181
+ getFunction(
182
+ nameOrSignature: "decryptNetworkEncryptedString"
183
+ ): TypedContractMethod<[], [void], "nonpayable">;
184
+ getFunction(
185
+ nameOrSignature: "getUserEncryptedString"
186
+ ): TypedContractMethod<[], [CtStringStructOutput], "view">;
187
+ getFunction(
188
+ nameOrSignature: "isEqual"
189
+ ): TypedContractMethod<[], [boolean], "view">;
190
+ getFunction(
191
+ nameOrSignature: "plaintext"
192
+ ): TypedContractMethod<[], [string], "view">;
193
+ getFunction(
194
+ nameOrSignature: "setIsEqual"
195
+ ): TypedContractMethod<
196
+ [a_: ItStringStruct, b_: ItStringStruct, useEq: boolean],
197
+ [void],
198
+ "nonpayable"
199
+ >;
200
+ getFunction(
201
+ nameOrSignature: "setNetworkEncryptedString"
202
+ ): TypedContractMethod<[it_: ItStringStruct], [void], "nonpayable">;
203
+ getFunction(
204
+ nameOrSignature: "setPublicString"
205
+ ): TypedContractMethod<[str: string], [void], "nonpayable">;
206
+ getFunction(
207
+ nameOrSignature: "setUserEncryptedString"
208
+ ): TypedContractMethod<[it_: ItStringStruct], [void], "nonpayable">;
209
+
210
+ filters: {};
211
+ }