@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,810 @@
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
+ IFHEVMExecutor,
8
+ IFHEVMExecutorInterface,
9
+ } from "../../../../../@fhevm/solidity/lib/Impl.sol/IFHEVMExecutor";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "bytes32",
16
+ name: "ct",
17
+ type: "bytes32",
18
+ },
19
+ {
20
+ internalType: "enum FheType",
21
+ name: "toType",
22
+ type: "uint8",
23
+ },
24
+ ],
25
+ name: "cast",
26
+ outputs: [
27
+ {
28
+ internalType: "bytes32",
29
+ name: "result",
30
+ type: "bytes32",
31
+ },
32
+ ],
33
+ stateMutability: "nonpayable",
34
+ type: "function",
35
+ },
36
+ {
37
+ inputs: [
38
+ {
39
+ internalType: "bytes32",
40
+ name: "lhs",
41
+ type: "bytes32",
42
+ },
43
+ {
44
+ internalType: "bytes32",
45
+ name: "rhs",
46
+ type: "bytes32",
47
+ },
48
+ {
49
+ internalType: "bytes1",
50
+ name: "scalarByte",
51
+ type: "bytes1",
52
+ },
53
+ ],
54
+ name: "fheAdd",
55
+ outputs: [
56
+ {
57
+ internalType: "bytes32",
58
+ name: "result",
59
+ type: "bytes32",
60
+ },
61
+ ],
62
+ stateMutability: "nonpayable",
63
+ type: "function",
64
+ },
65
+ {
66
+ inputs: [
67
+ {
68
+ internalType: "bytes32",
69
+ name: "lhs",
70
+ type: "bytes32",
71
+ },
72
+ {
73
+ internalType: "bytes32",
74
+ name: "rhs",
75
+ type: "bytes32",
76
+ },
77
+ {
78
+ internalType: "bytes1",
79
+ name: "scalarByte",
80
+ type: "bytes1",
81
+ },
82
+ ],
83
+ name: "fheBitAnd",
84
+ outputs: [
85
+ {
86
+ internalType: "bytes32",
87
+ name: "result",
88
+ type: "bytes32",
89
+ },
90
+ ],
91
+ stateMutability: "nonpayable",
92
+ type: "function",
93
+ },
94
+ {
95
+ inputs: [
96
+ {
97
+ internalType: "bytes32",
98
+ name: "lhs",
99
+ type: "bytes32",
100
+ },
101
+ {
102
+ internalType: "bytes32",
103
+ name: "rhs",
104
+ type: "bytes32",
105
+ },
106
+ {
107
+ internalType: "bytes1",
108
+ name: "scalarByte",
109
+ type: "bytes1",
110
+ },
111
+ ],
112
+ name: "fheBitOr",
113
+ outputs: [
114
+ {
115
+ internalType: "bytes32",
116
+ name: "result",
117
+ type: "bytes32",
118
+ },
119
+ ],
120
+ stateMutability: "nonpayable",
121
+ type: "function",
122
+ },
123
+ {
124
+ inputs: [
125
+ {
126
+ internalType: "bytes32",
127
+ name: "lhs",
128
+ type: "bytes32",
129
+ },
130
+ {
131
+ internalType: "bytes32",
132
+ name: "rhs",
133
+ type: "bytes32",
134
+ },
135
+ {
136
+ internalType: "bytes1",
137
+ name: "scalarByte",
138
+ type: "bytes1",
139
+ },
140
+ ],
141
+ name: "fheBitXor",
142
+ outputs: [
143
+ {
144
+ internalType: "bytes32",
145
+ name: "result",
146
+ type: "bytes32",
147
+ },
148
+ ],
149
+ stateMutability: "nonpayable",
150
+ type: "function",
151
+ },
152
+ {
153
+ inputs: [
154
+ {
155
+ internalType: "bytes32",
156
+ name: "lhs",
157
+ type: "bytes32",
158
+ },
159
+ {
160
+ internalType: "bytes32",
161
+ name: "rhs",
162
+ type: "bytes32",
163
+ },
164
+ {
165
+ internalType: "bytes1",
166
+ name: "scalarByte",
167
+ type: "bytes1",
168
+ },
169
+ ],
170
+ name: "fheDiv",
171
+ outputs: [
172
+ {
173
+ internalType: "bytes32",
174
+ name: "result",
175
+ type: "bytes32",
176
+ },
177
+ ],
178
+ stateMutability: "nonpayable",
179
+ type: "function",
180
+ },
181
+ {
182
+ inputs: [
183
+ {
184
+ internalType: "bytes32",
185
+ name: "lhs",
186
+ type: "bytes32",
187
+ },
188
+ {
189
+ internalType: "bytes32",
190
+ name: "rhs",
191
+ type: "bytes32",
192
+ },
193
+ {
194
+ internalType: "bytes1",
195
+ name: "scalarByte",
196
+ type: "bytes1",
197
+ },
198
+ ],
199
+ name: "fheEq",
200
+ outputs: [
201
+ {
202
+ internalType: "bytes32",
203
+ name: "result",
204
+ type: "bytes32",
205
+ },
206
+ ],
207
+ stateMutability: "nonpayable",
208
+ type: "function",
209
+ },
210
+ {
211
+ inputs: [
212
+ {
213
+ internalType: "bytes32",
214
+ name: "lhs",
215
+ type: "bytes32",
216
+ },
217
+ {
218
+ internalType: "bytes32",
219
+ name: "rhs",
220
+ type: "bytes32",
221
+ },
222
+ {
223
+ internalType: "bytes1",
224
+ name: "scalarByte",
225
+ type: "bytes1",
226
+ },
227
+ ],
228
+ name: "fheGe",
229
+ outputs: [
230
+ {
231
+ internalType: "bytes32",
232
+ name: "result",
233
+ type: "bytes32",
234
+ },
235
+ ],
236
+ stateMutability: "nonpayable",
237
+ type: "function",
238
+ },
239
+ {
240
+ inputs: [
241
+ {
242
+ internalType: "bytes32",
243
+ name: "lhs",
244
+ type: "bytes32",
245
+ },
246
+ {
247
+ internalType: "bytes32",
248
+ name: "rhs",
249
+ type: "bytes32",
250
+ },
251
+ {
252
+ internalType: "bytes1",
253
+ name: "scalarByte",
254
+ type: "bytes1",
255
+ },
256
+ ],
257
+ name: "fheGt",
258
+ outputs: [
259
+ {
260
+ internalType: "bytes32",
261
+ name: "result",
262
+ type: "bytes32",
263
+ },
264
+ ],
265
+ stateMutability: "nonpayable",
266
+ type: "function",
267
+ },
268
+ {
269
+ inputs: [
270
+ {
271
+ internalType: "bytes32",
272
+ name: "control",
273
+ type: "bytes32",
274
+ },
275
+ {
276
+ internalType: "bytes32",
277
+ name: "ifTrue",
278
+ type: "bytes32",
279
+ },
280
+ {
281
+ internalType: "bytes32",
282
+ name: "ifFalse",
283
+ type: "bytes32",
284
+ },
285
+ ],
286
+ name: "fheIfThenElse",
287
+ outputs: [
288
+ {
289
+ internalType: "bytes32",
290
+ name: "result",
291
+ type: "bytes32",
292
+ },
293
+ ],
294
+ stateMutability: "nonpayable",
295
+ type: "function",
296
+ },
297
+ {
298
+ inputs: [
299
+ {
300
+ internalType: "bytes32",
301
+ name: "lhs",
302
+ type: "bytes32",
303
+ },
304
+ {
305
+ internalType: "bytes32",
306
+ name: "rhs",
307
+ type: "bytes32",
308
+ },
309
+ {
310
+ internalType: "bytes1",
311
+ name: "scalarByte",
312
+ type: "bytes1",
313
+ },
314
+ ],
315
+ name: "fheLe",
316
+ outputs: [
317
+ {
318
+ internalType: "bytes32",
319
+ name: "result",
320
+ type: "bytes32",
321
+ },
322
+ ],
323
+ stateMutability: "nonpayable",
324
+ type: "function",
325
+ },
326
+ {
327
+ inputs: [
328
+ {
329
+ internalType: "bytes32",
330
+ name: "lhs",
331
+ type: "bytes32",
332
+ },
333
+ {
334
+ internalType: "bytes32",
335
+ name: "rhs",
336
+ type: "bytes32",
337
+ },
338
+ {
339
+ internalType: "bytes1",
340
+ name: "scalarByte",
341
+ type: "bytes1",
342
+ },
343
+ ],
344
+ name: "fheLt",
345
+ outputs: [
346
+ {
347
+ internalType: "bytes32",
348
+ name: "result",
349
+ type: "bytes32",
350
+ },
351
+ ],
352
+ stateMutability: "nonpayable",
353
+ type: "function",
354
+ },
355
+ {
356
+ inputs: [
357
+ {
358
+ internalType: "bytes32",
359
+ name: "lhs",
360
+ type: "bytes32",
361
+ },
362
+ {
363
+ internalType: "bytes32",
364
+ name: "rhs",
365
+ type: "bytes32",
366
+ },
367
+ {
368
+ internalType: "bytes1",
369
+ name: "scalarByte",
370
+ type: "bytes1",
371
+ },
372
+ ],
373
+ name: "fheMax",
374
+ outputs: [
375
+ {
376
+ internalType: "bytes32",
377
+ name: "result",
378
+ type: "bytes32",
379
+ },
380
+ ],
381
+ stateMutability: "nonpayable",
382
+ type: "function",
383
+ },
384
+ {
385
+ inputs: [
386
+ {
387
+ internalType: "bytes32",
388
+ name: "lhs",
389
+ type: "bytes32",
390
+ },
391
+ {
392
+ internalType: "bytes32",
393
+ name: "rhs",
394
+ type: "bytes32",
395
+ },
396
+ {
397
+ internalType: "bytes1",
398
+ name: "scalarByte",
399
+ type: "bytes1",
400
+ },
401
+ ],
402
+ name: "fheMin",
403
+ outputs: [
404
+ {
405
+ internalType: "bytes32",
406
+ name: "result",
407
+ type: "bytes32",
408
+ },
409
+ ],
410
+ stateMutability: "nonpayable",
411
+ type: "function",
412
+ },
413
+ {
414
+ inputs: [
415
+ {
416
+ internalType: "bytes32",
417
+ name: "lhs",
418
+ type: "bytes32",
419
+ },
420
+ {
421
+ internalType: "bytes32",
422
+ name: "rhs",
423
+ type: "bytes32",
424
+ },
425
+ {
426
+ internalType: "bytes1",
427
+ name: "scalarByte",
428
+ type: "bytes1",
429
+ },
430
+ ],
431
+ name: "fheMul",
432
+ outputs: [
433
+ {
434
+ internalType: "bytes32",
435
+ name: "result",
436
+ type: "bytes32",
437
+ },
438
+ ],
439
+ stateMutability: "nonpayable",
440
+ type: "function",
441
+ },
442
+ {
443
+ inputs: [
444
+ {
445
+ internalType: "bytes32",
446
+ name: "lhs",
447
+ type: "bytes32",
448
+ },
449
+ {
450
+ internalType: "bytes32",
451
+ name: "rhs",
452
+ type: "bytes32",
453
+ },
454
+ {
455
+ internalType: "bytes1",
456
+ name: "scalarByte",
457
+ type: "bytes1",
458
+ },
459
+ ],
460
+ name: "fheNe",
461
+ outputs: [
462
+ {
463
+ internalType: "bytes32",
464
+ name: "result",
465
+ type: "bytes32",
466
+ },
467
+ ],
468
+ stateMutability: "nonpayable",
469
+ type: "function",
470
+ },
471
+ {
472
+ inputs: [
473
+ {
474
+ internalType: "bytes32",
475
+ name: "ct",
476
+ type: "bytes32",
477
+ },
478
+ ],
479
+ name: "fheNeg",
480
+ outputs: [
481
+ {
482
+ internalType: "bytes32",
483
+ name: "result",
484
+ type: "bytes32",
485
+ },
486
+ ],
487
+ stateMutability: "nonpayable",
488
+ type: "function",
489
+ },
490
+ {
491
+ inputs: [
492
+ {
493
+ internalType: "bytes32",
494
+ name: "ct",
495
+ type: "bytes32",
496
+ },
497
+ ],
498
+ name: "fheNot",
499
+ outputs: [
500
+ {
501
+ internalType: "bytes32",
502
+ name: "result",
503
+ type: "bytes32",
504
+ },
505
+ ],
506
+ stateMutability: "nonpayable",
507
+ type: "function",
508
+ },
509
+ {
510
+ inputs: [
511
+ {
512
+ internalType: "enum FheType",
513
+ name: "randType",
514
+ type: "uint8",
515
+ },
516
+ ],
517
+ name: "fheRand",
518
+ outputs: [
519
+ {
520
+ internalType: "bytes32",
521
+ name: "result",
522
+ type: "bytes32",
523
+ },
524
+ ],
525
+ stateMutability: "nonpayable",
526
+ type: "function",
527
+ },
528
+ {
529
+ inputs: [
530
+ {
531
+ internalType: "uint256",
532
+ name: "upperBound",
533
+ type: "uint256",
534
+ },
535
+ {
536
+ internalType: "enum FheType",
537
+ name: "randType",
538
+ type: "uint8",
539
+ },
540
+ ],
541
+ name: "fheRandBounded",
542
+ outputs: [
543
+ {
544
+ internalType: "bytes32",
545
+ name: "result",
546
+ type: "bytes32",
547
+ },
548
+ ],
549
+ stateMutability: "nonpayable",
550
+ type: "function",
551
+ },
552
+ {
553
+ inputs: [
554
+ {
555
+ internalType: "bytes32",
556
+ name: "lhs",
557
+ type: "bytes32",
558
+ },
559
+ {
560
+ internalType: "bytes32",
561
+ name: "rhs",
562
+ type: "bytes32",
563
+ },
564
+ {
565
+ internalType: "bytes1",
566
+ name: "scalarByte",
567
+ type: "bytes1",
568
+ },
569
+ ],
570
+ name: "fheRem",
571
+ outputs: [
572
+ {
573
+ internalType: "bytes32",
574
+ name: "result",
575
+ type: "bytes32",
576
+ },
577
+ ],
578
+ stateMutability: "nonpayable",
579
+ type: "function",
580
+ },
581
+ {
582
+ inputs: [
583
+ {
584
+ internalType: "bytes32",
585
+ name: "lhs",
586
+ type: "bytes32",
587
+ },
588
+ {
589
+ internalType: "bytes32",
590
+ name: "rhs",
591
+ type: "bytes32",
592
+ },
593
+ {
594
+ internalType: "bytes1",
595
+ name: "scalarByte",
596
+ type: "bytes1",
597
+ },
598
+ ],
599
+ name: "fheRotl",
600
+ outputs: [
601
+ {
602
+ internalType: "bytes32",
603
+ name: "result",
604
+ type: "bytes32",
605
+ },
606
+ ],
607
+ stateMutability: "nonpayable",
608
+ type: "function",
609
+ },
610
+ {
611
+ inputs: [
612
+ {
613
+ internalType: "bytes32",
614
+ name: "lhs",
615
+ type: "bytes32",
616
+ },
617
+ {
618
+ internalType: "bytes32",
619
+ name: "rhs",
620
+ type: "bytes32",
621
+ },
622
+ {
623
+ internalType: "bytes1",
624
+ name: "scalarByte",
625
+ type: "bytes1",
626
+ },
627
+ ],
628
+ name: "fheRotr",
629
+ outputs: [
630
+ {
631
+ internalType: "bytes32",
632
+ name: "result",
633
+ type: "bytes32",
634
+ },
635
+ ],
636
+ stateMutability: "nonpayable",
637
+ type: "function",
638
+ },
639
+ {
640
+ inputs: [
641
+ {
642
+ internalType: "bytes32",
643
+ name: "lhs",
644
+ type: "bytes32",
645
+ },
646
+ {
647
+ internalType: "bytes32",
648
+ name: "rhs",
649
+ type: "bytes32",
650
+ },
651
+ {
652
+ internalType: "bytes1",
653
+ name: "scalarByte",
654
+ type: "bytes1",
655
+ },
656
+ ],
657
+ name: "fheShl",
658
+ outputs: [
659
+ {
660
+ internalType: "bytes32",
661
+ name: "result",
662
+ type: "bytes32",
663
+ },
664
+ ],
665
+ stateMutability: "nonpayable",
666
+ type: "function",
667
+ },
668
+ {
669
+ inputs: [
670
+ {
671
+ internalType: "bytes32",
672
+ name: "lhs",
673
+ type: "bytes32",
674
+ },
675
+ {
676
+ internalType: "bytes32",
677
+ name: "rhs",
678
+ type: "bytes32",
679
+ },
680
+ {
681
+ internalType: "bytes1",
682
+ name: "scalarByte",
683
+ type: "bytes1",
684
+ },
685
+ ],
686
+ name: "fheShr",
687
+ outputs: [
688
+ {
689
+ internalType: "bytes32",
690
+ name: "result",
691
+ type: "bytes32",
692
+ },
693
+ ],
694
+ stateMutability: "nonpayable",
695
+ type: "function",
696
+ },
697
+ {
698
+ inputs: [
699
+ {
700
+ internalType: "bytes32",
701
+ name: "lhs",
702
+ type: "bytes32",
703
+ },
704
+ {
705
+ internalType: "bytes32",
706
+ name: "rhs",
707
+ type: "bytes32",
708
+ },
709
+ {
710
+ internalType: "bytes1",
711
+ name: "scalarByte",
712
+ type: "bytes1",
713
+ },
714
+ ],
715
+ name: "fheSub",
716
+ outputs: [
717
+ {
718
+ internalType: "bytes32",
719
+ name: "result",
720
+ type: "bytes32",
721
+ },
722
+ ],
723
+ stateMutability: "nonpayable",
724
+ type: "function",
725
+ },
726
+ {
727
+ inputs: [],
728
+ name: "getInputVerifierAddress",
729
+ outputs: [
730
+ {
731
+ internalType: "address",
732
+ name: "",
733
+ type: "address",
734
+ },
735
+ ],
736
+ stateMutability: "view",
737
+ type: "function",
738
+ },
739
+ {
740
+ inputs: [
741
+ {
742
+ internalType: "uint256",
743
+ name: "ct",
744
+ type: "uint256",
745
+ },
746
+ {
747
+ internalType: "enum FheType",
748
+ name: "toType",
749
+ type: "uint8",
750
+ },
751
+ ],
752
+ name: "trivialEncrypt",
753
+ outputs: [
754
+ {
755
+ internalType: "bytes32",
756
+ name: "result",
757
+ type: "bytes32",
758
+ },
759
+ ],
760
+ stateMutability: "nonpayable",
761
+ type: "function",
762
+ },
763
+ {
764
+ inputs: [
765
+ {
766
+ internalType: "bytes32",
767
+ name: "inputHandle",
768
+ type: "bytes32",
769
+ },
770
+ {
771
+ internalType: "address",
772
+ name: "callerAddress",
773
+ type: "address",
774
+ },
775
+ {
776
+ internalType: "bytes",
777
+ name: "inputProof",
778
+ type: "bytes",
779
+ },
780
+ {
781
+ internalType: "enum FheType",
782
+ name: "inputType",
783
+ type: "uint8",
784
+ },
785
+ ],
786
+ name: "verifyInput",
787
+ outputs: [
788
+ {
789
+ internalType: "bytes32",
790
+ name: "result",
791
+ type: "bytes32",
792
+ },
793
+ ],
794
+ stateMutability: "nonpayable",
795
+ type: "function",
796
+ },
797
+ ] as const;
798
+
799
+ export class IFHEVMExecutor__factory {
800
+ static readonly abi = _abi;
801
+ static createInterface(): IFHEVMExecutorInterface {
802
+ return new Interface(_abi) as IFHEVMExecutorInterface;
803
+ }
804
+ static connect(
805
+ address: string,
806
+ runner?: ContractRunner | null
807
+ ): IFHEVMExecutor {
808
+ return new Contract(address, _abi, runner) as unknown as IFHEVMExecutor;
809
+ }
810
+ }