@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,439 @@
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
+ PrivateERC721,
8
+ PrivateERC721Interface,
9
+ } from "../../../../contracts/token/PrivateERC721/PrivateERC721";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "address",
16
+ name: "sender",
17
+ type: "address",
18
+ },
19
+ {
20
+ internalType: "uint256",
21
+ name: "tokenId",
22
+ type: "uint256",
23
+ },
24
+ {
25
+ internalType: "address",
26
+ name: "owner",
27
+ type: "address",
28
+ },
29
+ ],
30
+ name: "ERC721IncorrectOwner",
31
+ type: "error",
32
+ },
33
+ {
34
+ inputs: [
35
+ {
36
+ internalType: "address",
37
+ name: "operator",
38
+ type: "address",
39
+ },
40
+ {
41
+ internalType: "uint256",
42
+ name: "tokenId",
43
+ type: "uint256",
44
+ },
45
+ ],
46
+ name: "ERC721InsufficientApproval",
47
+ type: "error",
48
+ },
49
+ {
50
+ inputs: [
51
+ {
52
+ internalType: "address",
53
+ name: "approver",
54
+ type: "address",
55
+ },
56
+ ],
57
+ name: "ERC721InvalidApprover",
58
+ type: "error",
59
+ },
60
+ {
61
+ inputs: [
62
+ {
63
+ internalType: "address",
64
+ name: "operator",
65
+ type: "address",
66
+ },
67
+ ],
68
+ name: "ERC721InvalidOperator",
69
+ type: "error",
70
+ },
71
+ {
72
+ inputs: [
73
+ {
74
+ internalType: "address",
75
+ name: "owner",
76
+ type: "address",
77
+ },
78
+ ],
79
+ name: "ERC721InvalidOwner",
80
+ type: "error",
81
+ },
82
+ {
83
+ inputs: [
84
+ {
85
+ internalType: "address",
86
+ name: "receiver",
87
+ type: "address",
88
+ },
89
+ ],
90
+ name: "ERC721InvalidReceiver",
91
+ type: "error",
92
+ },
93
+ {
94
+ inputs: [
95
+ {
96
+ internalType: "address",
97
+ name: "sender",
98
+ type: "address",
99
+ },
100
+ ],
101
+ name: "ERC721InvalidSender",
102
+ type: "error",
103
+ },
104
+ {
105
+ inputs: [
106
+ {
107
+ internalType: "uint256",
108
+ name: "tokenId",
109
+ type: "uint256",
110
+ },
111
+ ],
112
+ name: "ERC721NonexistentToken",
113
+ type: "error",
114
+ },
115
+ {
116
+ anonymous: false,
117
+ inputs: [
118
+ {
119
+ indexed: true,
120
+ internalType: "address",
121
+ name: "owner",
122
+ type: "address",
123
+ },
124
+ {
125
+ indexed: true,
126
+ internalType: "address",
127
+ name: "approved",
128
+ type: "address",
129
+ },
130
+ {
131
+ indexed: true,
132
+ internalType: "uint256",
133
+ name: "tokenId",
134
+ type: "uint256",
135
+ },
136
+ ],
137
+ name: "Approval",
138
+ type: "event",
139
+ },
140
+ {
141
+ anonymous: false,
142
+ inputs: [
143
+ {
144
+ indexed: true,
145
+ internalType: "address",
146
+ name: "owner",
147
+ type: "address",
148
+ },
149
+ {
150
+ indexed: true,
151
+ internalType: "address",
152
+ name: "operator",
153
+ type: "address",
154
+ },
155
+ {
156
+ indexed: false,
157
+ internalType: "bool",
158
+ name: "approved",
159
+ type: "bool",
160
+ },
161
+ ],
162
+ name: "ApprovalForAll",
163
+ type: "event",
164
+ },
165
+ {
166
+ anonymous: false,
167
+ inputs: [
168
+ {
169
+ indexed: true,
170
+ internalType: "address",
171
+ name: "from",
172
+ type: "address",
173
+ },
174
+ {
175
+ indexed: true,
176
+ internalType: "address",
177
+ name: "to",
178
+ type: "address",
179
+ },
180
+ {
181
+ indexed: true,
182
+ internalType: "uint256",
183
+ name: "tokenId",
184
+ type: "uint256",
185
+ },
186
+ ],
187
+ name: "Transfer",
188
+ type: "event",
189
+ },
190
+ {
191
+ inputs: [
192
+ {
193
+ internalType: "address",
194
+ name: "to",
195
+ type: "address",
196
+ },
197
+ {
198
+ internalType: "uint256",
199
+ name: "tokenId",
200
+ type: "uint256",
201
+ },
202
+ ],
203
+ name: "approve",
204
+ outputs: [],
205
+ stateMutability: "nonpayable",
206
+ type: "function",
207
+ },
208
+ {
209
+ inputs: [
210
+ {
211
+ internalType: "address",
212
+ name: "owner",
213
+ type: "address",
214
+ },
215
+ ],
216
+ name: "balanceOf",
217
+ outputs: [
218
+ {
219
+ internalType: "uint256",
220
+ name: "",
221
+ type: "uint256",
222
+ },
223
+ ],
224
+ stateMutability: "view",
225
+ type: "function",
226
+ },
227
+ {
228
+ inputs: [
229
+ {
230
+ internalType: "uint256",
231
+ name: "tokenId",
232
+ type: "uint256",
233
+ },
234
+ ],
235
+ name: "getApproved",
236
+ outputs: [
237
+ {
238
+ internalType: "address",
239
+ name: "",
240
+ type: "address",
241
+ },
242
+ ],
243
+ stateMutability: "view",
244
+ type: "function",
245
+ },
246
+ {
247
+ inputs: [
248
+ {
249
+ internalType: "address",
250
+ name: "owner",
251
+ type: "address",
252
+ },
253
+ {
254
+ internalType: "address",
255
+ name: "operator",
256
+ type: "address",
257
+ },
258
+ ],
259
+ name: "isApprovedForAll",
260
+ outputs: [
261
+ {
262
+ internalType: "bool",
263
+ name: "",
264
+ type: "bool",
265
+ },
266
+ ],
267
+ stateMutability: "view",
268
+ type: "function",
269
+ },
270
+ {
271
+ inputs: [],
272
+ name: "name",
273
+ outputs: [
274
+ {
275
+ internalType: "string",
276
+ name: "",
277
+ type: "string",
278
+ },
279
+ ],
280
+ stateMutability: "view",
281
+ type: "function",
282
+ },
283
+ {
284
+ inputs: [
285
+ {
286
+ internalType: "uint256",
287
+ name: "tokenId",
288
+ type: "uint256",
289
+ },
290
+ ],
291
+ name: "ownerOf",
292
+ outputs: [
293
+ {
294
+ internalType: "address",
295
+ name: "",
296
+ type: "address",
297
+ },
298
+ ],
299
+ stateMutability: "view",
300
+ type: "function",
301
+ },
302
+ {
303
+ inputs: [
304
+ {
305
+ internalType: "address",
306
+ name: "from",
307
+ type: "address",
308
+ },
309
+ {
310
+ internalType: "address",
311
+ name: "to",
312
+ type: "address",
313
+ },
314
+ {
315
+ internalType: "uint256",
316
+ name: "tokenId",
317
+ type: "uint256",
318
+ },
319
+ ],
320
+ name: "safeTransferFrom",
321
+ outputs: [],
322
+ stateMutability: "nonpayable",
323
+ type: "function",
324
+ },
325
+ {
326
+ inputs: [
327
+ {
328
+ internalType: "address",
329
+ name: "from",
330
+ type: "address",
331
+ },
332
+ {
333
+ internalType: "address",
334
+ name: "to",
335
+ type: "address",
336
+ },
337
+ {
338
+ internalType: "uint256",
339
+ name: "tokenId",
340
+ type: "uint256",
341
+ },
342
+ {
343
+ internalType: "bytes",
344
+ name: "data",
345
+ type: "bytes",
346
+ },
347
+ ],
348
+ name: "safeTransferFrom",
349
+ outputs: [],
350
+ stateMutability: "nonpayable",
351
+ type: "function",
352
+ },
353
+ {
354
+ inputs: [
355
+ {
356
+ internalType: "address",
357
+ name: "operator",
358
+ type: "address",
359
+ },
360
+ {
361
+ internalType: "bool",
362
+ name: "approved",
363
+ type: "bool",
364
+ },
365
+ ],
366
+ name: "setApprovalForAll",
367
+ outputs: [],
368
+ stateMutability: "nonpayable",
369
+ type: "function",
370
+ },
371
+ {
372
+ inputs: [
373
+ {
374
+ internalType: "bytes4",
375
+ name: "interfaceId",
376
+ type: "bytes4",
377
+ },
378
+ ],
379
+ name: "supportsInterface",
380
+ outputs: [
381
+ {
382
+ internalType: "bool",
383
+ name: "",
384
+ type: "bool",
385
+ },
386
+ ],
387
+ stateMutability: "view",
388
+ type: "function",
389
+ },
390
+ {
391
+ inputs: [],
392
+ name: "symbol",
393
+ outputs: [
394
+ {
395
+ internalType: "string",
396
+ name: "",
397
+ type: "string",
398
+ },
399
+ ],
400
+ stateMutability: "view",
401
+ type: "function",
402
+ },
403
+ {
404
+ inputs: [
405
+ {
406
+ internalType: "address",
407
+ name: "from",
408
+ type: "address",
409
+ },
410
+ {
411
+ internalType: "address",
412
+ name: "to",
413
+ type: "address",
414
+ },
415
+ {
416
+ internalType: "uint256",
417
+ name: "tokenId",
418
+ type: "uint256",
419
+ },
420
+ ],
421
+ name: "transferFrom",
422
+ outputs: [],
423
+ stateMutability: "nonpayable",
424
+ type: "function",
425
+ },
426
+ ] as const;
427
+
428
+ export class PrivateERC721__factory {
429
+ static readonly abi = _abi;
430
+ static createInterface(): PrivateERC721Interface {
431
+ return new Interface(_abi) as PrivateERC721Interface;
432
+ }
433
+ static connect(
434
+ address: string,
435
+ runner?: ContractRunner | null
436
+ ): PrivateERC721 {
437
+ return new Contract(address, _abi, runner) as unknown as PrivateERC721;
438
+ }
439
+ }