@zentity/fhevm-contracts 0.3.0 → 0.4.1

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 (123) hide show
  1. package/abi/ComplianceRules.json +25 -16
  2. package/abi/CompliantERC20.json +30 -16
  3. package/abi/IdentityRegistry.json +496 -119
  4. package/contracts/compliance/ComplianceRules.sol +40 -189
  5. package/contracts/core/IdentityRegistry.sol +280 -232
  6. package/contracts/interfaces/IComplianceRules.sol +30 -0
  7. package/contracts/interfaces/IIdentityRegistry.sol +133 -159
  8. package/contracts/proxy/ERC1967Proxy.sol +6 -0
  9. package/contracts/test/MockFacilitator.sol +40 -0
  10. package/contracts/tokens/CompliantERC20.sol +28 -242
  11. package/deployments/hardhat/addresses.json +3 -8
  12. package/deployments/sepolia/ComplianceRules.json +91 -207
  13. package/deployments/sepolia/CompliantERC20.json +114 -293
  14. package/deployments/sepolia/IdentityRegistry.json +498 -742
  15. package/deployments/sepolia/IdentityRegistry_Implementation.json +1698 -0
  16. package/deployments/sepolia/IdentityRegistry_Proxy.json +192 -0
  17. package/deployments/sepolia/addresses.json +5 -6
  18. package/dist/index.d.ts +175 -9
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +44 -1
  21. package/package.json +1 -1
  22. package/typechain-types/@openzeppelin/contracts/access/Ownable.ts +153 -0
  23. package/typechain-types/@openzeppelin/contracts/access/Ownable2Step.ts +217 -0
  24. package/typechain-types/@openzeppelin/contracts/access/index.ts +5 -0
  25. package/typechain-types/@openzeppelin/contracts/index.ts +11 -0
  26. package/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.ts +168 -0
  27. package/typechain-types/@openzeppelin/contracts/interfaces/IERC5267.ts +151 -0
  28. package/typechain-types/{contracts/tokens/CompliantERC20.sol/IComplianceChecker.ts → @openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts} +12 -17
  29. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  30. package/typechain-types/@openzeppelin/contracts/interfaces/index.ts +7 -0
  31. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +105 -0
  32. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.ts +69 -0
  33. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  34. package/typechain-types/@openzeppelin/contracts/proxy/Proxy.ts +69 -0
  35. package/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +90 -0
  36. package/typechain-types/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
  37. package/typechain-types/@openzeppelin/contracts/proxy/index.ts +8 -0
  38. package/typechain-types/@openzeppelin/contracts/utils/Address.ts +69 -0
  39. package/typechain-types/@openzeppelin/contracts/utils/Errors.ts +69 -0
  40. package/typechain-types/@openzeppelin/contracts/utils/Strings.ts +69 -0
  41. package/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.ts +69 -0
  42. package/typechain-types/@openzeppelin/contracts/utils/cryptography/index.ts +4 -0
  43. package/typechain-types/@openzeppelin/contracts/utils/index.ts +10 -0
  44. package/typechain-types/@openzeppelin/contracts/utils/math/SafeCast.ts +69 -0
  45. package/typechain-types/@openzeppelin/contracts/utils/math/index.ts +4 -0
  46. package/typechain-types/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.ts +251 -0
  47. package/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +186 -0
  48. package/typechain-types/@openzeppelin/contracts-upgradeable/access/index.ts +5 -0
  49. package/typechain-types/@openzeppelin/contracts-upgradeable/index.ts +9 -0
  50. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.ts +5 -0
  51. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts +105 -0
  52. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.ts +196 -0
  53. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
  54. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts +105 -0
  55. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable.ts +184 -0
  56. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/cryptography/index.ts +4 -0
  57. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.ts +6 -0
  58. package/typechain-types/@openzeppelin/index.ts +7 -0
  59. package/typechain-types/contracts/compliance/ComplianceRules.ts +18 -7
  60. package/typechain-types/contracts/core/IdentityRegistry.ts +493 -233
  61. package/typechain-types/contracts/index.ts +2 -0
  62. package/typechain-types/contracts/interfaces/IComplianceRules.ts +290 -0
  63. package/typechain-types/contracts/interfaces/IIdentityRegistry.ts +269 -341
  64. package/typechain-types/contracts/interfaces/index.ts +1 -0
  65. package/typechain-types/contracts/test/MockFacilitator.ts +187 -0
  66. package/typechain-types/contracts/test/index.ts +4 -0
  67. package/typechain-types/contracts/tokens/{CompliantERC20.sol/CompliantERC20.ts → CompliantERC20.ts} +19 -8
  68. package/typechain-types/contracts/tokens/index.ts +1 -2
  69. package/typechain-types/factories/@openzeppelin/contracts/access/Ownable2Step__factory.ts +138 -0
  70. package/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +96 -0
  71. package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +5 -0
  72. package/typechain-types/factories/@openzeppelin/contracts/index.ts +7 -0
  73. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts +67 -0
  74. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC5267__factory.ts +71 -0
  75. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +38 -0
  76. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  77. package/typechain-types/factories/@openzeppelin/contracts/interfaces/index.ts +6 -0
  78. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +144 -0
  79. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.ts +105 -0
  80. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  81. package/typechain-types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +26 -0
  82. package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +35 -0
  83. package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
  84. package/typechain-types/factories/@openzeppelin/contracts/proxy/index.ts +6 -0
  85. package/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.ts +75 -0
  86. package/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.ts +101 -0
  87. package/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.ts +90 -0
  88. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.ts +91 -0
  89. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.ts +4 -0
  90. package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +8 -0
  91. package/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.ts +118 -0
  92. package/typechain-types/factories/@openzeppelin/contracts/utils/math/index.ts +4 -0
  93. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable__factory.ts +165 -0
  94. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +122 -0
  95. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +5 -0
  96. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.ts +6 -0
  97. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts +4 -0
  98. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts +48 -0
  99. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.ts +153 -0
  100. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
  101. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts +48 -0
  102. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable__factory.ts +97 -0
  103. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/cryptography/index.ts +4 -0
  104. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.ts +5 -0
  105. package/typechain-types/factories/@openzeppelin/index.ts +5 -0
  106. package/typechain-types/factories/contracts/compliance/ComplianceRules__factory.ts +26 -17
  107. package/typechain-types/factories/contracts/core/IdentityRegistry__factory.ts +493 -116
  108. package/typechain-types/factories/contracts/index.ts +1 -0
  109. package/typechain-types/factories/contracts/interfaces/IComplianceRules__factory.ts +193 -0
  110. package/typechain-types/factories/contracts/interfaces/IIdentityRegistry__factory.ts +236 -186
  111. package/typechain-types/factories/contracts/interfaces/index.ts +1 -0
  112. package/typechain-types/factories/contracts/test/MockFacilitator__factory.ts +194 -0
  113. package/typechain-types/factories/contracts/test/index.ts +4 -0
  114. package/typechain-types/factories/contracts/tokens/CompliantERC20__factory.ts +595 -0
  115. package/typechain-types/factories/contracts/tokens/index.ts +1 -1
  116. package/typechain-types/factories/index.ts +1 -0
  117. package/typechain-types/hardhat.d.ts +394 -16
  118. package/typechain-types/index.ts +48 -4
  119. package/deployments/hardhat/.chainId +0 -1
  120. package/typechain-types/contracts/tokens/CompliantERC20.sol/index.ts +0 -5
  121. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/CompliantERC20__factory.ts +0 -581
  122. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/IComplianceChecker__factory.ts +0 -44
  123. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/index.ts +0 -5
@@ -4,4 +4,5 @@
4
4
  export * as compliance from "./compliance";
5
5
  export * as core from "./core";
6
6
  export * as interfaces from "./interfaces";
7
+ export * as test from "./test";
7
8
  export * as tokens from "./tokens";
@@ -0,0 +1,193 @@
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
+ IComplianceRules,
8
+ IComplianceRulesInterface,
9
+ } from "../../../contracts/interfaces/IComplianceRules";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [],
14
+ name: "AccessProhibited",
15
+ type: "error",
16
+ },
17
+ {
18
+ inputs: [],
19
+ name: "CallerNotAuthorized",
20
+ type: "error",
21
+ },
22
+ {
23
+ anonymous: false,
24
+ inputs: [
25
+ {
26
+ indexed: true,
27
+ internalType: "address",
28
+ name: "caller",
29
+ type: "address",
30
+ },
31
+ {
32
+ indexed: true,
33
+ internalType: "bool",
34
+ name: "allowed",
35
+ type: "bool",
36
+ },
37
+ ],
38
+ name: "AuthorizedCallerUpdated",
39
+ type: "event",
40
+ },
41
+ {
42
+ anonymous: false,
43
+ inputs: [
44
+ {
45
+ indexed: true,
46
+ internalType: "address",
47
+ name: "user",
48
+ type: "address",
49
+ },
50
+ ],
51
+ name: "ComplianceChecked",
52
+ type: "event",
53
+ },
54
+ {
55
+ anonymous: false,
56
+ inputs: [
57
+ {
58
+ indexed: true,
59
+ internalType: "uint8",
60
+ name: "newLevel",
61
+ type: "uint8",
62
+ },
63
+ ],
64
+ name: "MinComplianceLevelUpdated",
65
+ type: "event",
66
+ },
67
+ {
68
+ inputs: [
69
+ {
70
+ internalType: "address",
71
+ name: "caller",
72
+ type: "address",
73
+ },
74
+ ],
75
+ name: "authorizedCallers",
76
+ outputs: [
77
+ {
78
+ internalType: "bool",
79
+ name: "",
80
+ type: "bool",
81
+ },
82
+ ],
83
+ stateMutability: "view",
84
+ type: "function",
85
+ },
86
+ {
87
+ inputs: [
88
+ {
89
+ internalType: "address",
90
+ name: "user",
91
+ type: "address",
92
+ },
93
+ ],
94
+ name: "checkCompliance",
95
+ outputs: [
96
+ {
97
+ internalType: "ebool",
98
+ name: "",
99
+ type: "bytes32",
100
+ },
101
+ ],
102
+ stateMutability: "nonpayable",
103
+ type: "function",
104
+ },
105
+ {
106
+ inputs: [
107
+ {
108
+ internalType: "address",
109
+ name: "user",
110
+ type: "address",
111
+ },
112
+ {
113
+ internalType: "uint16",
114
+ name: "allowedCountry",
115
+ type: "uint16",
116
+ },
117
+ ],
118
+ name: "checkComplianceWithCountry",
119
+ outputs: [
120
+ {
121
+ internalType: "ebool",
122
+ name: "",
123
+ type: "bytes32",
124
+ },
125
+ ],
126
+ stateMutability: "nonpayable",
127
+ type: "function",
128
+ },
129
+ {
130
+ inputs: [
131
+ {
132
+ internalType: "address",
133
+ name: "user",
134
+ type: "address",
135
+ },
136
+ ],
137
+ name: "getComplianceResult",
138
+ outputs: [
139
+ {
140
+ internalType: "ebool",
141
+ name: "",
142
+ type: "bytes32",
143
+ },
144
+ ],
145
+ stateMutability: "view",
146
+ type: "function",
147
+ },
148
+ {
149
+ inputs: [
150
+ {
151
+ internalType: "address",
152
+ name: "user",
153
+ type: "address",
154
+ },
155
+ ],
156
+ name: "hasComplianceResult",
157
+ outputs: [
158
+ {
159
+ internalType: "bool",
160
+ name: "",
161
+ type: "bool",
162
+ },
163
+ ],
164
+ stateMutability: "view",
165
+ type: "function",
166
+ },
167
+ {
168
+ inputs: [],
169
+ name: "minComplianceLevel",
170
+ outputs: [
171
+ {
172
+ internalType: "uint8",
173
+ name: "",
174
+ type: "uint8",
175
+ },
176
+ ],
177
+ stateMutability: "view",
178
+ type: "function",
179
+ },
180
+ ] as const;
181
+
182
+ export class IComplianceRules__factory {
183
+ static readonly abi = _abi;
184
+ static createInterface(): IComplianceRulesInterface {
185
+ return new Interface(_abi) as IComplianceRulesInterface;
186
+ }
187
+ static connect(
188
+ address: string,
189
+ runner?: ContractRunner | null
190
+ ): IComplianceRules {
191
+ return new Contract(address, _abi, runner) as unknown as IComplianceRules;
192
+ }
193
+ }