@zentity/fhevm-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 (83) hide show
  1. package/README.md +160 -0
  2. package/abi/ComplianceRules.json +352 -0
  3. package/abi/CompliantERC20.json +493 -0
  4. package/abi/IdentityRegistry.json +712 -0
  5. package/abi/index.d.ts +3 -0
  6. package/abi/index.js +9 -0
  7. package/contracts/ARCHITECTURE.md +66 -0
  8. package/contracts/ARCHITECTURE_EXPLAINER.md +77 -0
  9. package/contracts/compliance/ComplianceRules.sol +255 -0
  10. package/contracts/core/IdentityRegistry.sol +352 -0
  11. package/contracts/interfaces/IIdentityRegistry.sol +226 -0
  12. package/contracts/mocks/.gitkeep +0 -0
  13. package/contracts/tokens/CompliantERC20.sol +379 -0
  14. package/deployments/hardhat/addresses.json +20 -0
  15. package/deployments/localhost/.chainId +1 -0
  16. package/deployments/localhost/ComplianceRules.json +662 -0
  17. package/deployments/localhost/CompliantERC20.json +888 -0
  18. package/deployments/localhost/IdentityRegistry.json +1093 -0
  19. package/deployments/localhost/solcInputs/e36969353329df673b4fae03d39e01c4.json +60 -0
  20. package/deployments/sepolia/.chainId +1 -0
  21. package/deployments/sepolia/.gitkeep +0 -0
  22. package/deployments/sepolia/ComplianceRules.json +662 -0
  23. package/deployments/sepolia/CompliantERC20.json +888 -0
  24. package/deployments/sepolia/IdentityRegistry.json +1093 -0
  25. package/deployments/sepolia/solcInputs/93d280ff0d4e798a18947a9ed6015031.json +60 -0
  26. package/dist/index.d.ts +459 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +135 -0
  29. package/package.json +110 -0
  30. package/typechain-types/@fhevm/index.ts +5 -0
  31. package/typechain-types/@fhevm/solidity/config/ZamaConfig.sol/ZamaConfig.ts +69 -0
  32. package/typechain-types/@fhevm/solidity/config/ZamaConfig.sol/ZamaEthereumConfig.ts +90 -0
  33. package/typechain-types/@fhevm/solidity/config/ZamaConfig.sol/index.ts +5 -0
  34. package/typechain-types/@fhevm/solidity/config/index.ts +5 -0
  35. package/typechain-types/@fhevm/solidity/index.ts +7 -0
  36. package/typechain-types/@fhevm/solidity/lib/FHE.sol/FHE.ts +112 -0
  37. package/typechain-types/@fhevm/solidity/lib/FHE.sol/IKMSVerifier.ts +108 -0
  38. package/typechain-types/@fhevm/solidity/lib/FHE.sol/index.ts +5 -0
  39. package/typechain-types/@fhevm/solidity/lib/Impl.sol/IACL.ts +190 -0
  40. package/typechain-types/@fhevm/solidity/lib/Impl.sol/IFHEVMExecutor.ts +623 -0
  41. package/typechain-types/@fhevm/solidity/lib/Impl.sol/IInputVerifier.ts +90 -0
  42. package/typechain-types/@fhevm/solidity/lib/Impl.sol/index.ts +6 -0
  43. package/typechain-types/@fhevm/solidity/lib/index.ts +7 -0
  44. package/typechain-types/common.ts +131 -0
  45. package/typechain-types/contracts/compliance/ComplianceRules.ts +479 -0
  46. package/typechain-types/contracts/compliance/index.ts +4 -0
  47. package/typechain-types/contracts/core/IdentityRegistry.ts +874 -0
  48. package/typechain-types/contracts/core/index.ts +4 -0
  49. package/typechain-types/contracts/index.ts +11 -0
  50. package/typechain-types/contracts/interfaces/IIdentityRegistry.ts +798 -0
  51. package/typechain-types/contracts/interfaces/index.ts +4 -0
  52. package/typechain-types/contracts/tokens/CompliantERC20.sol/CompliantERC20.ts +572 -0
  53. package/typechain-types/contracts/tokens/CompliantERC20.sol/IComplianceChecker.ts +95 -0
  54. package/typechain-types/contracts/tokens/CompliantERC20.sol/index.ts +5 -0
  55. package/typechain-types/contracts/tokens/index.ts +5 -0
  56. package/typechain-types/factories/@fhevm/index.ts +4 -0
  57. package/typechain-types/factories/@fhevm/solidity/config/ZamaConfig.sol/ZamaConfig__factory.ts +69 -0
  58. package/typechain-types/factories/@fhevm/solidity/config/ZamaConfig.sol/ZamaEthereumConfig__factory.ts +43 -0
  59. package/typechain-types/factories/@fhevm/solidity/config/ZamaConfig.sol/index.ts +5 -0
  60. package/typechain-types/factories/@fhevm/solidity/config/index.ts +4 -0
  61. package/typechain-types/factories/@fhevm/solidity/index.ts +5 -0
  62. package/typechain-types/factories/@fhevm/solidity/lib/FHE.sol/FHE__factory.ts +88 -0
  63. package/typechain-types/factories/@fhevm/solidity/lib/FHE.sol/IKMSVerifier__factory.ts +54 -0
  64. package/typechain-types/factories/@fhevm/solidity/lib/FHE.sol/index.ts +5 -0
  65. package/typechain-types/factories/@fhevm/solidity/lib/Impl.sol/IACL__factory.ts +121 -0
  66. package/typechain-types/factories/@fhevm/solidity/lib/Impl.sol/IFHEVMExecutor__factory.ts +810 -0
  67. package/typechain-types/factories/@fhevm/solidity/lib/Impl.sol/IInputVerifier__factory.ts +32 -0
  68. package/typechain-types/factories/@fhevm/solidity/lib/Impl.sol/index.ts +6 -0
  69. package/typechain-types/factories/@fhevm/solidity/lib/index.ts +5 -0
  70. package/typechain-types/factories/contracts/compliance/ComplianceRules__factory.ts +437 -0
  71. package/typechain-types/factories/contracts/compliance/index.ts +4 -0
  72. package/typechain-types/factories/contracts/core/IdentityRegistry__factory.ts +777 -0
  73. package/typechain-types/factories/contracts/core/index.ts +4 -0
  74. package/typechain-types/factories/contracts/index.ts +7 -0
  75. package/typechain-types/factories/contracts/interfaces/IIdentityRegistry__factory.ts +640 -0
  76. package/typechain-types/factories/contracts/interfaces/index.ts +4 -0
  77. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/CompliantERC20__factory.ts +581 -0
  78. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/IComplianceChecker__factory.ts +44 -0
  79. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/index.ts +5 -0
  80. package/typechain-types/factories/contracts/tokens/index.ts +4 -0
  81. package/typechain-types/factories/index.ts +5 -0
  82. package/typechain-types/hardhat.d.ts +261 -0
  83. package/typechain-types/index.ts +32 -0
@@ -0,0 +1,4 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export type { IIdentityRegistry } from "./IIdentityRegistry";
@@ -0,0 +1,572 @@
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
+ EventFragment,
12
+ AddressLike,
13
+ ContractRunner,
14
+ ContractMethod,
15
+ Listener,
16
+ } from "ethers";
17
+ import type {
18
+ TypedContractEvent,
19
+ TypedDeferredTopicFilter,
20
+ TypedEventLog,
21
+ TypedLogDescription,
22
+ TypedListener,
23
+ TypedContractMethod,
24
+ } from "../../../common";
25
+
26
+ export interface CompliantERC20Interface extends Interface {
27
+ getFunction(
28
+ nameOrSignature:
29
+ | "DECIMALS"
30
+ | "acceptOwnership"
31
+ | "allowance"
32
+ | "approve"
33
+ | "balanceOf"
34
+ | "complianceChecker"
35
+ | "confidentialProtocolId"
36
+ | "decimals"
37
+ | "mint"
38
+ | "name"
39
+ | "owner"
40
+ | "pendingOwner"
41
+ | "setComplianceChecker"
42
+ | "symbol"
43
+ | "totalSupply"
44
+ | "transfer(address,bytes32,bytes)"
45
+ | "transfer(address,bytes32)"
46
+ | "transferFrom"
47
+ | "transferOwnership"
48
+ ): FunctionFragment;
49
+
50
+ getEvent(
51
+ nameOrSignatureOrTopic:
52
+ | "Approval"
53
+ | "ComplianceCheckerUpdated"
54
+ | "Mint"
55
+ | "OwnershipTransferStarted"
56
+ | "OwnershipTransferred"
57
+ | "Transfer"
58
+ ): EventFragment;
59
+
60
+ encodeFunctionData(functionFragment: "DECIMALS", values?: undefined): string;
61
+ encodeFunctionData(
62
+ functionFragment: "acceptOwnership",
63
+ values?: undefined
64
+ ): string;
65
+ encodeFunctionData(
66
+ functionFragment: "allowance",
67
+ values: [AddressLike, AddressLike]
68
+ ): string;
69
+ encodeFunctionData(
70
+ functionFragment: "approve",
71
+ values: [AddressLike, BytesLike, BytesLike]
72
+ ): string;
73
+ encodeFunctionData(
74
+ functionFragment: "balanceOf",
75
+ values: [AddressLike]
76
+ ): string;
77
+ encodeFunctionData(
78
+ functionFragment: "complianceChecker",
79
+ values?: undefined
80
+ ): string;
81
+ encodeFunctionData(
82
+ functionFragment: "confidentialProtocolId",
83
+ values?: undefined
84
+ ): string;
85
+ encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
86
+ encodeFunctionData(
87
+ functionFragment: "mint",
88
+ values: [AddressLike, BigNumberish]
89
+ ): string;
90
+ encodeFunctionData(functionFragment: "name", values?: undefined): string;
91
+ encodeFunctionData(functionFragment: "owner", values?: undefined): string;
92
+ encodeFunctionData(
93
+ functionFragment: "pendingOwner",
94
+ values?: undefined
95
+ ): string;
96
+ encodeFunctionData(
97
+ functionFragment: "setComplianceChecker",
98
+ values: [AddressLike]
99
+ ): string;
100
+ encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
101
+ encodeFunctionData(
102
+ functionFragment: "totalSupply",
103
+ values?: undefined
104
+ ): string;
105
+ encodeFunctionData(
106
+ functionFragment: "transfer(address,bytes32,bytes)",
107
+ values: [AddressLike, BytesLike, BytesLike]
108
+ ): string;
109
+ encodeFunctionData(
110
+ functionFragment: "transfer(address,bytes32)",
111
+ values: [AddressLike, BytesLike]
112
+ ): string;
113
+ encodeFunctionData(
114
+ functionFragment: "transferFrom",
115
+ values: [AddressLike, AddressLike, BytesLike, BytesLike]
116
+ ): string;
117
+ encodeFunctionData(
118
+ functionFragment: "transferOwnership",
119
+ values: [AddressLike]
120
+ ): string;
121
+
122
+ decodeFunctionResult(functionFragment: "DECIMALS", data: BytesLike): Result;
123
+ decodeFunctionResult(
124
+ functionFragment: "acceptOwnership",
125
+ data: BytesLike
126
+ ): Result;
127
+ decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result;
128
+ decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
129
+ decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
130
+ decodeFunctionResult(
131
+ functionFragment: "complianceChecker",
132
+ data: BytesLike
133
+ ): Result;
134
+ decodeFunctionResult(
135
+ functionFragment: "confidentialProtocolId",
136
+ data: BytesLike
137
+ ): Result;
138
+ decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result;
139
+ decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result;
140
+ decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;
141
+ decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
142
+ decodeFunctionResult(
143
+ functionFragment: "pendingOwner",
144
+ data: BytesLike
145
+ ): Result;
146
+ decodeFunctionResult(
147
+ functionFragment: "setComplianceChecker",
148
+ data: BytesLike
149
+ ): Result;
150
+ decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result;
151
+ decodeFunctionResult(
152
+ functionFragment: "totalSupply",
153
+ data: BytesLike
154
+ ): Result;
155
+ decodeFunctionResult(
156
+ functionFragment: "transfer(address,bytes32,bytes)",
157
+ data: BytesLike
158
+ ): Result;
159
+ decodeFunctionResult(
160
+ functionFragment: "transfer(address,bytes32)",
161
+ data: BytesLike
162
+ ): Result;
163
+ decodeFunctionResult(
164
+ functionFragment: "transferFrom",
165
+ data: BytesLike
166
+ ): Result;
167
+ decodeFunctionResult(
168
+ functionFragment: "transferOwnership",
169
+ data: BytesLike
170
+ ): Result;
171
+ }
172
+
173
+ export namespace ApprovalEvent {
174
+ export type InputTuple = [owner: AddressLike, spender: AddressLike];
175
+ export type OutputTuple = [owner: string, spender: string];
176
+ export interface OutputObject {
177
+ owner: string;
178
+ spender: string;
179
+ }
180
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
181
+ export type Filter = TypedDeferredTopicFilter<Event>;
182
+ export type Log = TypedEventLog<Event>;
183
+ export type LogDescription = TypedLogDescription<Event>;
184
+ }
185
+
186
+ export namespace ComplianceCheckerUpdatedEvent {
187
+ export type InputTuple = [newChecker: AddressLike];
188
+ export type OutputTuple = [newChecker: string];
189
+ export interface OutputObject {
190
+ newChecker: string;
191
+ }
192
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
193
+ export type Filter = TypedDeferredTopicFilter<Event>;
194
+ export type Log = TypedEventLog<Event>;
195
+ export type LogDescription = TypedLogDescription<Event>;
196
+ }
197
+
198
+ export namespace MintEvent {
199
+ export type InputTuple = [to: AddressLike, amount: BigNumberish];
200
+ export type OutputTuple = [to: string, amount: bigint];
201
+ export interface OutputObject {
202
+ to: string;
203
+ amount: bigint;
204
+ }
205
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
206
+ export type Filter = TypedDeferredTopicFilter<Event>;
207
+ export type Log = TypedEventLog<Event>;
208
+ export type LogDescription = TypedLogDescription<Event>;
209
+ }
210
+
211
+ export namespace OwnershipTransferStartedEvent {
212
+ export type InputTuple = [
213
+ currentOwner: AddressLike,
214
+ pendingOwner: AddressLike
215
+ ];
216
+ export type OutputTuple = [currentOwner: string, pendingOwner: string];
217
+ export interface OutputObject {
218
+ currentOwner: string;
219
+ pendingOwner: string;
220
+ }
221
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
222
+ export type Filter = TypedDeferredTopicFilter<Event>;
223
+ export type Log = TypedEventLog<Event>;
224
+ export type LogDescription = TypedLogDescription<Event>;
225
+ }
226
+
227
+ export namespace OwnershipTransferredEvent {
228
+ export type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike];
229
+ export type OutputTuple = [previousOwner: string, newOwner: string];
230
+ export interface OutputObject {
231
+ previousOwner: string;
232
+ newOwner: string;
233
+ }
234
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
235
+ export type Filter = TypedDeferredTopicFilter<Event>;
236
+ export type Log = TypedEventLog<Event>;
237
+ export type LogDescription = TypedLogDescription<Event>;
238
+ }
239
+
240
+ export namespace TransferEvent {
241
+ export type InputTuple = [from: AddressLike, to: AddressLike];
242
+ export type OutputTuple = [from: string, to: string];
243
+ export interface OutputObject {
244
+ from: string;
245
+ to: string;
246
+ }
247
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
248
+ export type Filter = TypedDeferredTopicFilter<Event>;
249
+ export type Log = TypedEventLog<Event>;
250
+ export type LogDescription = TypedLogDescription<Event>;
251
+ }
252
+
253
+ export interface CompliantERC20 extends BaseContract {
254
+ connect(runner?: ContractRunner | null): CompliantERC20;
255
+ waitForDeployment(): Promise<this>;
256
+
257
+ interface: CompliantERC20Interface;
258
+
259
+ queryFilter<TCEvent extends TypedContractEvent>(
260
+ event: TCEvent,
261
+ fromBlockOrBlockhash?: string | number | undefined,
262
+ toBlock?: string | number | undefined
263
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
264
+ queryFilter<TCEvent extends TypedContractEvent>(
265
+ filter: TypedDeferredTopicFilter<TCEvent>,
266
+ fromBlockOrBlockhash?: string | number | undefined,
267
+ toBlock?: string | number | undefined
268
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
269
+
270
+ on<TCEvent extends TypedContractEvent>(
271
+ event: TCEvent,
272
+ listener: TypedListener<TCEvent>
273
+ ): Promise<this>;
274
+ on<TCEvent extends TypedContractEvent>(
275
+ filter: TypedDeferredTopicFilter<TCEvent>,
276
+ listener: TypedListener<TCEvent>
277
+ ): Promise<this>;
278
+
279
+ once<TCEvent extends TypedContractEvent>(
280
+ event: TCEvent,
281
+ listener: TypedListener<TCEvent>
282
+ ): Promise<this>;
283
+ once<TCEvent extends TypedContractEvent>(
284
+ filter: TypedDeferredTopicFilter<TCEvent>,
285
+ listener: TypedListener<TCEvent>
286
+ ): Promise<this>;
287
+
288
+ listeners<TCEvent extends TypedContractEvent>(
289
+ event: TCEvent
290
+ ): Promise<Array<TypedListener<TCEvent>>>;
291
+ listeners(eventName?: string): Promise<Array<Listener>>;
292
+ removeAllListeners<TCEvent extends TypedContractEvent>(
293
+ event?: TCEvent
294
+ ): Promise<this>;
295
+
296
+ DECIMALS: TypedContractMethod<[], [bigint], "view">;
297
+
298
+ acceptOwnership: TypedContractMethod<[], [void], "nonpayable">;
299
+
300
+ allowance: TypedContractMethod<
301
+ [account: AddressLike, spender: AddressLike],
302
+ [string],
303
+ "view"
304
+ >;
305
+
306
+ approve: TypedContractMethod<
307
+ [spender: AddressLike, encryptedAmount: BytesLike, inputProof: BytesLike],
308
+ [boolean],
309
+ "nonpayable"
310
+ >;
311
+
312
+ balanceOf: TypedContractMethod<[account: AddressLike], [string], "view">;
313
+
314
+ complianceChecker: TypedContractMethod<[], [string], "view">;
315
+
316
+ confidentialProtocolId: TypedContractMethod<[], [bigint], "view">;
317
+
318
+ decimals: TypedContractMethod<[], [bigint], "view">;
319
+
320
+ mint: TypedContractMethod<
321
+ [to: AddressLike, amount: BigNumberish],
322
+ [void],
323
+ "nonpayable"
324
+ >;
325
+
326
+ name: TypedContractMethod<[], [string], "view">;
327
+
328
+ owner: TypedContractMethod<[], [string], "view">;
329
+
330
+ pendingOwner: TypedContractMethod<[], [string], "view">;
331
+
332
+ setComplianceChecker: TypedContractMethod<
333
+ [checker: AddressLike],
334
+ [void],
335
+ "nonpayable"
336
+ >;
337
+
338
+ symbol: TypedContractMethod<[], [string], "view">;
339
+
340
+ totalSupply: TypedContractMethod<[], [bigint], "view">;
341
+
342
+ "transfer(address,bytes32,bytes)": TypedContractMethod<
343
+ [to: AddressLike, encryptedAmount: BytesLike, inputProof: BytesLike],
344
+ [boolean],
345
+ "nonpayable"
346
+ >;
347
+
348
+ "transfer(address,bytes32)": TypedContractMethod<
349
+ [to: AddressLike, amount: BytesLike],
350
+ [boolean],
351
+ "nonpayable"
352
+ >;
353
+
354
+ transferFrom: TypedContractMethod<
355
+ [
356
+ from: AddressLike,
357
+ to: AddressLike,
358
+ encryptedAmount: BytesLike,
359
+ inputProof: BytesLike
360
+ ],
361
+ [boolean],
362
+ "nonpayable"
363
+ >;
364
+
365
+ transferOwnership: TypedContractMethod<
366
+ [newOwner: AddressLike],
367
+ [void],
368
+ "nonpayable"
369
+ >;
370
+
371
+ getFunction<T extends ContractMethod = ContractMethod>(
372
+ key: string | FunctionFragment
373
+ ): T;
374
+
375
+ getFunction(
376
+ nameOrSignature: "DECIMALS"
377
+ ): TypedContractMethod<[], [bigint], "view">;
378
+ getFunction(
379
+ nameOrSignature: "acceptOwnership"
380
+ ): TypedContractMethod<[], [void], "nonpayable">;
381
+ getFunction(
382
+ nameOrSignature: "allowance"
383
+ ): TypedContractMethod<
384
+ [account: AddressLike, spender: AddressLike],
385
+ [string],
386
+ "view"
387
+ >;
388
+ getFunction(
389
+ nameOrSignature: "approve"
390
+ ): TypedContractMethod<
391
+ [spender: AddressLike, encryptedAmount: BytesLike, inputProof: BytesLike],
392
+ [boolean],
393
+ "nonpayable"
394
+ >;
395
+ getFunction(
396
+ nameOrSignature: "balanceOf"
397
+ ): TypedContractMethod<[account: AddressLike], [string], "view">;
398
+ getFunction(
399
+ nameOrSignature: "complianceChecker"
400
+ ): TypedContractMethod<[], [string], "view">;
401
+ getFunction(
402
+ nameOrSignature: "confidentialProtocolId"
403
+ ): TypedContractMethod<[], [bigint], "view">;
404
+ getFunction(
405
+ nameOrSignature: "decimals"
406
+ ): TypedContractMethod<[], [bigint], "view">;
407
+ getFunction(
408
+ nameOrSignature: "mint"
409
+ ): TypedContractMethod<
410
+ [to: AddressLike, amount: BigNumberish],
411
+ [void],
412
+ "nonpayable"
413
+ >;
414
+ getFunction(
415
+ nameOrSignature: "name"
416
+ ): TypedContractMethod<[], [string], "view">;
417
+ getFunction(
418
+ nameOrSignature: "owner"
419
+ ): TypedContractMethod<[], [string], "view">;
420
+ getFunction(
421
+ nameOrSignature: "pendingOwner"
422
+ ): TypedContractMethod<[], [string], "view">;
423
+ getFunction(
424
+ nameOrSignature: "setComplianceChecker"
425
+ ): TypedContractMethod<[checker: AddressLike], [void], "nonpayable">;
426
+ getFunction(
427
+ nameOrSignature: "symbol"
428
+ ): TypedContractMethod<[], [string], "view">;
429
+ getFunction(
430
+ nameOrSignature: "totalSupply"
431
+ ): TypedContractMethod<[], [bigint], "view">;
432
+ getFunction(
433
+ nameOrSignature: "transfer(address,bytes32,bytes)"
434
+ ): TypedContractMethod<
435
+ [to: AddressLike, encryptedAmount: BytesLike, inputProof: BytesLike],
436
+ [boolean],
437
+ "nonpayable"
438
+ >;
439
+ getFunction(
440
+ nameOrSignature: "transfer(address,bytes32)"
441
+ ): TypedContractMethod<
442
+ [to: AddressLike, amount: BytesLike],
443
+ [boolean],
444
+ "nonpayable"
445
+ >;
446
+ getFunction(
447
+ nameOrSignature: "transferFrom"
448
+ ): TypedContractMethod<
449
+ [
450
+ from: AddressLike,
451
+ to: AddressLike,
452
+ encryptedAmount: BytesLike,
453
+ inputProof: BytesLike
454
+ ],
455
+ [boolean],
456
+ "nonpayable"
457
+ >;
458
+ getFunction(
459
+ nameOrSignature: "transferOwnership"
460
+ ): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">;
461
+
462
+ getEvent(
463
+ key: "Approval"
464
+ ): TypedContractEvent<
465
+ ApprovalEvent.InputTuple,
466
+ ApprovalEvent.OutputTuple,
467
+ ApprovalEvent.OutputObject
468
+ >;
469
+ getEvent(
470
+ key: "ComplianceCheckerUpdated"
471
+ ): TypedContractEvent<
472
+ ComplianceCheckerUpdatedEvent.InputTuple,
473
+ ComplianceCheckerUpdatedEvent.OutputTuple,
474
+ ComplianceCheckerUpdatedEvent.OutputObject
475
+ >;
476
+ getEvent(
477
+ key: "Mint"
478
+ ): TypedContractEvent<
479
+ MintEvent.InputTuple,
480
+ MintEvent.OutputTuple,
481
+ MintEvent.OutputObject
482
+ >;
483
+ getEvent(
484
+ key: "OwnershipTransferStarted"
485
+ ): TypedContractEvent<
486
+ OwnershipTransferStartedEvent.InputTuple,
487
+ OwnershipTransferStartedEvent.OutputTuple,
488
+ OwnershipTransferStartedEvent.OutputObject
489
+ >;
490
+ getEvent(
491
+ key: "OwnershipTransferred"
492
+ ): TypedContractEvent<
493
+ OwnershipTransferredEvent.InputTuple,
494
+ OwnershipTransferredEvent.OutputTuple,
495
+ OwnershipTransferredEvent.OutputObject
496
+ >;
497
+ getEvent(
498
+ key: "Transfer"
499
+ ): TypedContractEvent<
500
+ TransferEvent.InputTuple,
501
+ TransferEvent.OutputTuple,
502
+ TransferEvent.OutputObject
503
+ >;
504
+
505
+ filters: {
506
+ "Approval(address,address)": TypedContractEvent<
507
+ ApprovalEvent.InputTuple,
508
+ ApprovalEvent.OutputTuple,
509
+ ApprovalEvent.OutputObject
510
+ >;
511
+ Approval: TypedContractEvent<
512
+ ApprovalEvent.InputTuple,
513
+ ApprovalEvent.OutputTuple,
514
+ ApprovalEvent.OutputObject
515
+ >;
516
+
517
+ "ComplianceCheckerUpdated(address)": TypedContractEvent<
518
+ ComplianceCheckerUpdatedEvent.InputTuple,
519
+ ComplianceCheckerUpdatedEvent.OutputTuple,
520
+ ComplianceCheckerUpdatedEvent.OutputObject
521
+ >;
522
+ ComplianceCheckerUpdated: TypedContractEvent<
523
+ ComplianceCheckerUpdatedEvent.InputTuple,
524
+ ComplianceCheckerUpdatedEvent.OutputTuple,
525
+ ComplianceCheckerUpdatedEvent.OutputObject
526
+ >;
527
+
528
+ "Mint(address,uint256)": TypedContractEvent<
529
+ MintEvent.InputTuple,
530
+ MintEvent.OutputTuple,
531
+ MintEvent.OutputObject
532
+ >;
533
+ Mint: TypedContractEvent<
534
+ MintEvent.InputTuple,
535
+ MintEvent.OutputTuple,
536
+ MintEvent.OutputObject
537
+ >;
538
+
539
+ "OwnershipTransferStarted(address,address)": TypedContractEvent<
540
+ OwnershipTransferStartedEvent.InputTuple,
541
+ OwnershipTransferStartedEvent.OutputTuple,
542
+ OwnershipTransferStartedEvent.OutputObject
543
+ >;
544
+ OwnershipTransferStarted: TypedContractEvent<
545
+ OwnershipTransferStartedEvent.InputTuple,
546
+ OwnershipTransferStartedEvent.OutputTuple,
547
+ OwnershipTransferStartedEvent.OutputObject
548
+ >;
549
+
550
+ "OwnershipTransferred(address,address)": TypedContractEvent<
551
+ OwnershipTransferredEvent.InputTuple,
552
+ OwnershipTransferredEvent.OutputTuple,
553
+ OwnershipTransferredEvent.OutputObject
554
+ >;
555
+ OwnershipTransferred: TypedContractEvent<
556
+ OwnershipTransferredEvent.InputTuple,
557
+ OwnershipTransferredEvent.OutputTuple,
558
+ OwnershipTransferredEvent.OutputObject
559
+ >;
560
+
561
+ "Transfer(address,address)": TypedContractEvent<
562
+ TransferEvent.InputTuple,
563
+ TransferEvent.OutputTuple,
564
+ TransferEvent.OutputObject
565
+ >;
566
+ Transfer: TypedContractEvent<
567
+ TransferEvent.InputTuple,
568
+ TransferEvent.OutputTuple,
569
+ TransferEvent.OutputObject
570
+ >;
571
+ };
572
+ }
@@ -0,0 +1,95 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ BaseContract,
6
+ BytesLike,
7
+ FunctionFragment,
8
+ Result,
9
+ Interface,
10
+ AddressLike,
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 IComplianceCheckerInterface extends Interface {
24
+ getFunction(nameOrSignature: "checkCompliance"): FunctionFragment;
25
+
26
+ encodeFunctionData(
27
+ functionFragment: "checkCompliance",
28
+ values: [AddressLike]
29
+ ): string;
30
+
31
+ decodeFunctionResult(
32
+ functionFragment: "checkCompliance",
33
+ data: BytesLike
34
+ ): Result;
35
+ }
36
+
37
+ export interface IComplianceChecker extends BaseContract {
38
+ connect(runner?: ContractRunner | null): IComplianceChecker;
39
+ waitForDeployment(): Promise<this>;
40
+
41
+ interface: IComplianceCheckerInterface;
42
+
43
+ queryFilter<TCEvent extends TypedContractEvent>(
44
+ event: TCEvent,
45
+ fromBlockOrBlockhash?: string | number | undefined,
46
+ toBlock?: string | number | undefined
47
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
48
+ queryFilter<TCEvent extends TypedContractEvent>(
49
+ filter: TypedDeferredTopicFilter<TCEvent>,
50
+ fromBlockOrBlockhash?: string | number | undefined,
51
+ toBlock?: string | number | undefined
52
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
53
+
54
+ on<TCEvent extends TypedContractEvent>(
55
+ event: TCEvent,
56
+ listener: TypedListener<TCEvent>
57
+ ): Promise<this>;
58
+ on<TCEvent extends TypedContractEvent>(
59
+ filter: TypedDeferredTopicFilter<TCEvent>,
60
+ listener: TypedListener<TCEvent>
61
+ ): Promise<this>;
62
+
63
+ once<TCEvent extends TypedContractEvent>(
64
+ event: TCEvent,
65
+ listener: TypedListener<TCEvent>
66
+ ): Promise<this>;
67
+ once<TCEvent extends TypedContractEvent>(
68
+ filter: TypedDeferredTopicFilter<TCEvent>,
69
+ listener: TypedListener<TCEvent>
70
+ ): Promise<this>;
71
+
72
+ listeners<TCEvent extends TypedContractEvent>(
73
+ event: TCEvent
74
+ ): Promise<Array<TypedListener<TCEvent>>>;
75
+ listeners(eventName?: string): Promise<Array<Listener>>;
76
+ removeAllListeners<TCEvent extends TypedContractEvent>(
77
+ event?: TCEvent
78
+ ): Promise<this>;
79
+
80
+ checkCompliance: TypedContractMethod<
81
+ [user: AddressLike],
82
+ [string],
83
+ "nonpayable"
84
+ >;
85
+
86
+ getFunction<T extends ContractMethod = ContractMethod>(
87
+ key: string | FunctionFragment
88
+ ): T;
89
+
90
+ getFunction(
91
+ nameOrSignature: "checkCompliance"
92
+ ): TypedContractMethod<[user: AddressLike], [string], "nonpayable">;
93
+
94
+ filters: {};
95
+ }
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export type { CompliantERC20 } from "./CompliantERC20";
5
+ export type { IComplianceChecker } from "./IComplianceChecker";
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type * as compliantErc20Sol from "./CompliantERC20.sol";
5
+ export type { compliantErc20Sol };
@@ -0,0 +1,4 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export * as solidity from "./solidity";