@zentity/fhevm-contracts 0.3.0 → 0.4.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 (117) 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/dist/index.d.ts +175 -9
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +44 -1
  15. package/package.json +1 -1
  16. package/typechain-types/@openzeppelin/contracts/access/Ownable.ts +153 -0
  17. package/typechain-types/@openzeppelin/contracts/access/Ownable2Step.ts +217 -0
  18. package/typechain-types/@openzeppelin/contracts/access/index.ts +5 -0
  19. package/typechain-types/@openzeppelin/contracts/index.ts +11 -0
  20. package/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.ts +168 -0
  21. package/typechain-types/@openzeppelin/contracts/interfaces/IERC5267.ts +151 -0
  22. package/typechain-types/{contracts/tokens/CompliantERC20.sol/IComplianceChecker.ts → @openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts} +12 -17
  23. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  24. package/typechain-types/@openzeppelin/contracts/interfaces/index.ts +7 -0
  25. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +105 -0
  26. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.ts +69 -0
  27. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  28. package/typechain-types/@openzeppelin/contracts/proxy/Proxy.ts +69 -0
  29. package/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +90 -0
  30. package/typechain-types/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
  31. package/typechain-types/@openzeppelin/contracts/proxy/index.ts +8 -0
  32. package/typechain-types/@openzeppelin/contracts/utils/Address.ts +69 -0
  33. package/typechain-types/@openzeppelin/contracts/utils/Errors.ts +69 -0
  34. package/typechain-types/@openzeppelin/contracts/utils/Strings.ts +69 -0
  35. package/typechain-types/@openzeppelin/contracts/utils/cryptography/ECDSA.ts +69 -0
  36. package/typechain-types/@openzeppelin/contracts/utils/cryptography/index.ts +4 -0
  37. package/typechain-types/@openzeppelin/contracts/utils/index.ts +10 -0
  38. package/typechain-types/@openzeppelin/contracts/utils/math/SafeCast.ts +69 -0
  39. package/typechain-types/@openzeppelin/contracts/utils/math/index.ts +4 -0
  40. package/typechain-types/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.ts +251 -0
  41. package/typechain-types/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.ts +186 -0
  42. package/typechain-types/@openzeppelin/contracts-upgradeable/access/index.ts +5 -0
  43. package/typechain-types/@openzeppelin/contracts-upgradeable/index.ts +9 -0
  44. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.ts +5 -0
  45. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts +105 -0
  46. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.ts +196 -0
  47. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
  48. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts +105 -0
  49. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable.ts +184 -0
  50. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/cryptography/index.ts +4 -0
  51. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.ts +6 -0
  52. package/typechain-types/@openzeppelin/index.ts +7 -0
  53. package/typechain-types/contracts/compliance/ComplianceRules.ts +18 -7
  54. package/typechain-types/contracts/core/IdentityRegistry.ts +493 -233
  55. package/typechain-types/contracts/index.ts +2 -0
  56. package/typechain-types/contracts/interfaces/IComplianceRules.ts +290 -0
  57. package/typechain-types/contracts/interfaces/IIdentityRegistry.ts +269 -341
  58. package/typechain-types/contracts/interfaces/index.ts +1 -0
  59. package/typechain-types/contracts/test/MockFacilitator.ts +187 -0
  60. package/typechain-types/contracts/test/index.ts +4 -0
  61. package/typechain-types/contracts/tokens/{CompliantERC20.sol/CompliantERC20.ts → CompliantERC20.ts} +19 -8
  62. package/typechain-types/contracts/tokens/index.ts +1 -2
  63. package/typechain-types/factories/@openzeppelin/contracts/access/Ownable2Step__factory.ts +138 -0
  64. package/typechain-types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +96 -0
  65. package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +5 -0
  66. package/typechain-types/factories/@openzeppelin/contracts/index.ts +7 -0
  67. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts +67 -0
  68. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC5267__factory.ts +71 -0
  69. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +38 -0
  70. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  71. package/typechain-types/factories/@openzeppelin/contracts/interfaces/index.ts +6 -0
  72. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +144 -0
  73. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.ts +105 -0
  74. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +5 -0
  75. package/typechain-types/factories/@openzeppelin/contracts/proxy/Proxy__factory.ts +26 -0
  76. package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +35 -0
  77. package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
  78. package/typechain-types/factories/@openzeppelin/contracts/proxy/index.ts +6 -0
  79. package/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.ts +75 -0
  80. package/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.ts +101 -0
  81. package/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.ts +90 -0
  82. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.ts +91 -0
  83. package/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/index.ts +4 -0
  84. package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +8 -0
  85. package/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.ts +118 -0
  86. package/typechain-types/factories/@openzeppelin/contracts/utils/math/index.ts +4 -0
  87. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable__factory.ts +165 -0
  88. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.ts +122 -0
  89. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +5 -0
  90. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.ts +6 -0
  91. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts +4 -0
  92. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts +48 -0
  93. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.ts +153 -0
  94. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
  95. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts +48 -0
  96. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/cryptography/EIP712Upgradeable__factory.ts +97 -0
  97. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/cryptography/index.ts +4 -0
  98. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.ts +5 -0
  99. package/typechain-types/factories/@openzeppelin/index.ts +5 -0
  100. package/typechain-types/factories/contracts/compliance/ComplianceRules__factory.ts +26 -17
  101. package/typechain-types/factories/contracts/core/IdentityRegistry__factory.ts +493 -116
  102. package/typechain-types/factories/contracts/index.ts +1 -0
  103. package/typechain-types/factories/contracts/interfaces/IComplianceRules__factory.ts +193 -0
  104. package/typechain-types/factories/contracts/interfaces/IIdentityRegistry__factory.ts +236 -186
  105. package/typechain-types/factories/contracts/interfaces/index.ts +1 -0
  106. package/typechain-types/factories/contracts/test/MockFacilitator__factory.ts +194 -0
  107. package/typechain-types/factories/contracts/test/index.ts +4 -0
  108. package/typechain-types/factories/contracts/tokens/CompliantERC20__factory.ts +595 -0
  109. package/typechain-types/factories/contracts/tokens/index.ts +1 -1
  110. package/typechain-types/factories/index.ts +1 -0
  111. package/typechain-types/hardhat.d.ts +394 -16
  112. package/typechain-types/index.ts +48 -4
  113. package/deployments/hardhat/.chainId +0 -1
  114. package/typechain-types/contracts/tokens/CompliantERC20.sol/index.ts +0 -5
  115. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/CompliantERC20__factory.ts +0 -581
  116. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/IComplianceChecker__factory.ts +0 -44
  117. package/typechain-types/factories/contracts/tokens/CompliantERC20.sol/index.ts +0 -5
@@ -23,70 +23,125 @@ import type {
23
23
  TypedContractMethod,
24
24
  } from "../../common";
25
25
 
26
+ export declare namespace IIdentityRegistry {
27
+ export type AttestPermitDataStruct = {
28
+ birthYearOffset: BigNumberish;
29
+ countryCode: BigNumberish;
30
+ complianceLevel: BigNumberish;
31
+ isBlacklisted: boolean;
32
+ proofSetHash: BytesLike;
33
+ policyVersion: BigNumberish;
34
+ deadline: BigNumberish;
35
+ v: BigNumberish;
36
+ r: BytesLike;
37
+ s: BytesLike;
38
+ };
39
+
40
+ export type AttestPermitDataStructOutput = [
41
+ birthYearOffset: bigint,
42
+ countryCode: bigint,
43
+ complianceLevel: bigint,
44
+ isBlacklisted: boolean,
45
+ proofSetHash: string,
46
+ policyVersion: bigint,
47
+ deadline: bigint,
48
+ v: bigint,
49
+ r: string,
50
+ s: string
51
+ ] & {
52
+ birthYearOffset: bigint;
53
+ countryCode: bigint;
54
+ complianceLevel: bigint;
55
+ isBlacklisted: boolean;
56
+ proofSetHash: string;
57
+ policyVersion: bigint;
58
+ deadline: bigint;
59
+ v: bigint;
60
+ r: string;
61
+ s: string;
62
+ };
63
+ }
64
+
26
65
  export interface IIdentityRegistryInterface extends Interface {
27
66
  getFunction(
28
67
  nameOrSignature:
29
- | "acceptOwnership"
30
- | "addRegistrar"
31
- | "attestIdentity"
68
+ | "ATTR_ALL"
69
+ | "ATTR_BIRTH_YEAR"
70
+ | "ATTR_BLACKLIST"
71
+ | "ATTR_COMPLIANCE"
72
+ | "ATTR_COUNTRY"
73
+ | "attestWithPermit"
32
74
  | "attestationTimestamp"
75
+ | "checkCompliance"
33
76
  | "currentAttestationId"
34
- | "getAttestationMetadata"
35
77
  | "getBirthYearOffset"
36
78
  | "getBlacklistStatus"
37
79
  | "getComplianceLevel"
38
80
  | "getCountryCode"
81
+ | "getGrantedAttributes"
82
+ | "getPolicyVersion"
83
+ | "getProofSetHash"
84
+ | "getVerificationResult"
39
85
  | "grantAccessTo"
86
+ | "grantAttributeAccess"
40
87
  | "hasMinComplianceLevel"
41
88
  | "isAttested"
42
89
  | "isFromCountry"
43
90
  | "isNotBlacklisted"
44
- | "latestAttestationId"
45
- | "owner"
46
- | "pendingOwner"
91
+ | "nonces"
47
92
  | "registrars"
48
- | "removeRegistrar"
49
93
  | "revokeIdentity"
50
- | "transferOwnership"
94
+ | "revokeIdentityFor"
51
95
  ): FunctionFragment;
52
96
 
53
97
  getEvent(
54
98
  nameOrSignatureOrTopic:
55
- | "AccessGranted"
99
+ | "AttributeAccessGranted"
56
100
  | "IdentityAttested"
57
- | "IdentityAttestedDetailed"
58
101
  | "IdentityRevoked"
59
- | "IdentityRevokedDetailed"
60
- | "OwnershipTransferStarted"
61
- | "OwnershipTransferred"
62
- | "RegistrarAdded"
63
- | "RegistrarRemoved"
102
+ | "RegistrarUpdated"
64
103
  ): EventFragment;
65
104
 
105
+ encodeFunctionData(functionFragment: "ATTR_ALL", values?: undefined): string;
66
106
  encodeFunctionData(
67
- functionFragment: "acceptOwnership",
107
+ functionFragment: "ATTR_BIRTH_YEAR",
68
108
  values?: undefined
69
109
  ): string;
70
110
  encodeFunctionData(
71
- functionFragment: "addRegistrar",
72
- values: [AddressLike]
111
+ functionFragment: "ATTR_BLACKLIST",
112
+ values?: undefined
73
113
  ): string;
74
114
  encodeFunctionData(
75
- functionFragment: "attestIdentity",
76
- values: [AddressLike, BytesLike, BytesLike, BytesLike, BytesLike, BytesLike]
115
+ functionFragment: "ATTR_COMPLIANCE",
116
+ values?: undefined
77
117
  ): string;
78
118
  encodeFunctionData(
79
- functionFragment: "attestationTimestamp",
80
- values: [AddressLike]
119
+ functionFragment: "ATTR_COUNTRY",
120
+ values?: undefined
81
121
  ): string;
82
122
  encodeFunctionData(
83
- functionFragment: "currentAttestationId",
123
+ functionFragment: "attestWithPermit",
124
+ values: [
125
+ IIdentityRegistry.AttestPermitDataStruct,
126
+ BytesLike,
127
+ BytesLike,
128
+ BytesLike,
129
+ BytesLike,
130
+ BytesLike
131
+ ]
132
+ ): string;
133
+ encodeFunctionData(
134
+ functionFragment: "attestationTimestamp",
84
135
  values: [AddressLike]
85
136
  ): string;
86
137
  encodeFunctionData(
87
- functionFragment: "getAttestationMetadata",
138
+ functionFragment: "checkCompliance",
88
139
  values: [AddressLike, BigNumberish]
89
140
  ): string;
141
+ encodeFunctionData(
142
+ functionFragment: "currentAttestationId",
143
+ values: [AddressLike]
144
+ ): string;
90
145
  encodeFunctionData(
91
146
  functionFragment: "getBirthYearOffset",
92
147
  values: [AddressLike]
@@ -103,10 +158,30 @@ export interface IIdentityRegistryInterface extends Interface {
103
158
  functionFragment: "getCountryCode",
104
159
  values: [AddressLike]
105
160
  ): string;
161
+ encodeFunctionData(
162
+ functionFragment: "getGrantedAttributes",
163
+ values: [AddressLike, AddressLike]
164
+ ): string;
165
+ encodeFunctionData(
166
+ functionFragment: "getPolicyVersion",
167
+ values: [AddressLike]
168
+ ): string;
169
+ encodeFunctionData(
170
+ functionFragment: "getProofSetHash",
171
+ values: [AddressLike]
172
+ ): string;
173
+ encodeFunctionData(
174
+ functionFragment: "getVerificationResult",
175
+ values: [BytesLike]
176
+ ): string;
106
177
  encodeFunctionData(
107
178
  functionFragment: "grantAccessTo",
108
179
  values: [AddressLike]
109
180
  ): string;
181
+ encodeFunctionData(
182
+ functionFragment: "grantAttributeAccess",
183
+ values: [AddressLike, BigNumberish, BigNumberish]
184
+ ): string;
110
185
  encodeFunctionData(
111
186
  functionFragment: "hasMinComplianceLevel",
112
187
  values: [AddressLike, BigNumberish]
@@ -123,42 +198,39 @@ export interface IIdentityRegistryInterface extends Interface {
123
198
  functionFragment: "isNotBlacklisted",
124
199
  values: [AddressLike]
125
200
  ): string;
126
- encodeFunctionData(
127
- functionFragment: "latestAttestationId",
128
- values: [AddressLike]
129
- ): string;
130
- encodeFunctionData(functionFragment: "owner", values?: undefined): string;
131
- encodeFunctionData(
132
- functionFragment: "pendingOwner",
133
- values?: undefined
134
- ): string;
201
+ encodeFunctionData(functionFragment: "nonces", values: [AddressLike]): string;
135
202
  encodeFunctionData(
136
203
  functionFragment: "registrars",
137
204
  values: [AddressLike]
138
205
  ): string;
139
- encodeFunctionData(
140
- functionFragment: "removeRegistrar",
141
- values: [AddressLike]
142
- ): string;
143
206
  encodeFunctionData(
144
207
  functionFragment: "revokeIdentity",
145
- values: [AddressLike]
208
+ values?: undefined
146
209
  ): string;
147
210
  encodeFunctionData(
148
- functionFragment: "transferOwnership",
211
+ functionFragment: "revokeIdentityFor",
149
212
  values: [AddressLike]
150
213
  ): string;
151
214
 
215
+ decodeFunctionResult(functionFragment: "ATTR_ALL", data: BytesLike): Result;
216
+ decodeFunctionResult(
217
+ functionFragment: "ATTR_BIRTH_YEAR",
218
+ data: BytesLike
219
+ ): Result;
152
220
  decodeFunctionResult(
153
- functionFragment: "acceptOwnership",
221
+ functionFragment: "ATTR_BLACKLIST",
154
222
  data: BytesLike
155
223
  ): Result;
156
224
  decodeFunctionResult(
157
- functionFragment: "addRegistrar",
225
+ functionFragment: "ATTR_COMPLIANCE",
158
226
  data: BytesLike
159
227
  ): Result;
160
228
  decodeFunctionResult(
161
- functionFragment: "attestIdentity",
229
+ functionFragment: "ATTR_COUNTRY",
230
+ data: BytesLike
231
+ ): Result;
232
+ decodeFunctionResult(
233
+ functionFragment: "attestWithPermit",
162
234
  data: BytesLike
163
235
  ): Result;
164
236
  decodeFunctionResult(
@@ -166,11 +238,11 @@ export interface IIdentityRegistryInterface extends Interface {
166
238
  data: BytesLike
167
239
  ): Result;
168
240
  decodeFunctionResult(
169
- functionFragment: "currentAttestationId",
241
+ functionFragment: "checkCompliance",
170
242
  data: BytesLike
171
243
  ): Result;
172
244
  decodeFunctionResult(
173
- functionFragment: "getAttestationMetadata",
245
+ functionFragment: "currentAttestationId",
174
246
  data: BytesLike
175
247
  ): Result;
176
248
  decodeFunctionResult(
@@ -190,90 +262,72 @@ export interface IIdentityRegistryInterface extends Interface {
190
262
  data: BytesLike
191
263
  ): Result;
192
264
  decodeFunctionResult(
193
- functionFragment: "grantAccessTo",
265
+ functionFragment: "getGrantedAttributes",
194
266
  data: BytesLike
195
267
  ): Result;
196
268
  decodeFunctionResult(
197
- functionFragment: "hasMinComplianceLevel",
269
+ functionFragment: "getPolicyVersion",
198
270
  data: BytesLike
199
271
  ): Result;
200
- decodeFunctionResult(functionFragment: "isAttested", data: BytesLike): Result;
201
272
  decodeFunctionResult(
202
- functionFragment: "isFromCountry",
273
+ functionFragment: "getProofSetHash",
203
274
  data: BytesLike
204
275
  ): Result;
205
276
  decodeFunctionResult(
206
- functionFragment: "isNotBlacklisted",
277
+ functionFragment: "getVerificationResult",
207
278
  data: BytesLike
208
279
  ): Result;
209
280
  decodeFunctionResult(
210
- functionFragment: "latestAttestationId",
281
+ functionFragment: "grantAccessTo",
211
282
  data: BytesLike
212
283
  ): Result;
213
- decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
214
284
  decodeFunctionResult(
215
- functionFragment: "pendingOwner",
285
+ functionFragment: "grantAttributeAccess",
286
+ data: BytesLike
287
+ ): Result;
288
+ decodeFunctionResult(
289
+ functionFragment: "hasMinComplianceLevel",
290
+ data: BytesLike
291
+ ): Result;
292
+ decodeFunctionResult(functionFragment: "isAttested", data: BytesLike): Result;
293
+ decodeFunctionResult(
294
+ functionFragment: "isFromCountry",
216
295
  data: BytesLike
217
296
  ): Result;
218
- decodeFunctionResult(functionFragment: "registrars", data: BytesLike): Result;
219
297
  decodeFunctionResult(
220
- functionFragment: "removeRegistrar",
298
+ functionFragment: "isNotBlacklisted",
221
299
  data: BytesLike
222
300
  ): Result;
301
+ decodeFunctionResult(functionFragment: "nonces", data: BytesLike): Result;
302
+ decodeFunctionResult(functionFragment: "registrars", data: BytesLike): Result;
223
303
  decodeFunctionResult(
224
304
  functionFragment: "revokeIdentity",
225
305
  data: BytesLike
226
306
  ): Result;
227
307
  decodeFunctionResult(
228
- functionFragment: "transferOwnership",
308
+ functionFragment: "revokeIdentityFor",
229
309
  data: BytesLike
230
310
  ): Result;
231
311
  }
232
312
 
233
- export namespace AccessGrantedEvent {
234
- export type InputTuple = [user: AddressLike, grantee: AddressLike];
235
- export type OutputTuple = [user: string, grantee: string];
236
- export interface OutputObject {
237
- user: string;
238
- grantee: string;
239
- }
240
- export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
241
- export type Filter = TypedDeferredTopicFilter<Event>;
242
- export type Log = TypedEventLog<Event>;
243
- export type LogDescription = TypedLogDescription<Event>;
244
- }
245
-
246
- export namespace IdentityAttestedEvent {
247
- export type InputTuple = [user: AddressLike, registrar: AddressLike];
248
- export type OutputTuple = [user: string, registrar: string];
249
- export interface OutputObject {
250
- user: string;
251
- registrar: string;
252
- }
253
- export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
254
- export type Filter = TypedDeferredTopicFilter<Event>;
255
- export type Log = TypedEventLog<Event>;
256
- export type LogDescription = TypedLogDescription<Event>;
257
- }
258
-
259
- export namespace IdentityAttestedDetailedEvent {
313
+ export namespace AttributeAccessGrantedEvent {
260
314
  export type InputTuple = [
261
315
  user: AddressLike,
262
- registrar: AddressLike,
263
- attestationId: BigNumberish,
264
- timestamp: BigNumberish
316
+ grantee: AddressLike,
317
+ attributeMask: BigNumberish,
318
+ purpose: BigNumberish
265
319
  ];
266
320
  export type OutputTuple = [
267
321
  user: string,
268
- registrar: string,
269
- attestationId: bigint,
270
- timestamp: bigint
322
+ grantee: string,
323
+ attributeMask: bigint,
324
+ purpose: bigint
271
325
  ];
272
326
  export interface OutputObject {
273
327
  user: string;
274
- registrar: string;
275
- attestationId: bigint;
276
- timestamp: bigint;
328
+ grantee: string;
329
+ attributeMask: bigint;
330
+ purpose: bigint;
277
331
  }
278
332
  export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
279
333
  export type Filter = TypedDeferredTopicFilter<Event>;
@@ -281,7 +335,7 @@ export namespace IdentityAttestedDetailedEvent {
281
335
  export type LogDescription = TypedLogDescription<Event>;
282
336
  }
283
337
 
284
- export namespace IdentityRevokedEvent {
338
+ export namespace IdentityAttestedEvent {
285
339
  export type InputTuple = [user: AddressLike];
286
340
  export type OutputTuple = [user: string];
287
341
  export interface OutputObject {
@@ -293,53 +347,11 @@ export namespace IdentityRevokedEvent {
293
347
  export type LogDescription = TypedLogDescription<Event>;
294
348
  }
295
349
 
296
- export namespace IdentityRevokedDetailedEvent {
297
- export type InputTuple = [
298
- user: AddressLike,
299
- registrar: AddressLike,
300
- attestationId: BigNumberish,
301
- timestamp: BigNumberish
302
- ];
303
- export type OutputTuple = [
304
- user: string,
305
- registrar: string,
306
- attestationId: bigint,
307
- timestamp: bigint
308
- ];
350
+ export namespace IdentityRevokedEvent {
351
+ export type InputTuple = [user: AddressLike];
352
+ export type OutputTuple = [user: string];
309
353
  export interface OutputObject {
310
354
  user: string;
311
- registrar: string;
312
- attestationId: bigint;
313
- timestamp: bigint;
314
- }
315
- export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
316
- export type Filter = TypedDeferredTopicFilter<Event>;
317
- export type Log = TypedEventLog<Event>;
318
- export type LogDescription = TypedLogDescription<Event>;
319
- }
320
-
321
- export namespace OwnershipTransferStartedEvent {
322
- export type InputTuple = [
323
- currentOwner: AddressLike,
324
- pendingOwner: AddressLike
325
- ];
326
- export type OutputTuple = [currentOwner: string, pendingOwner: string];
327
- export interface OutputObject {
328
- currentOwner: string;
329
- pendingOwner: string;
330
- }
331
- export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
332
- export type Filter = TypedDeferredTopicFilter<Event>;
333
- export type Log = TypedEventLog<Event>;
334
- export type LogDescription = TypedLogDescription<Event>;
335
- }
336
-
337
- export namespace OwnershipTransferredEvent {
338
- export type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike];
339
- export type OutputTuple = [previousOwner: string, newOwner: string];
340
- export interface OutputObject {
341
- previousOwner: string;
342
- newOwner: string;
343
355
  }
344
356
  export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
345
357
  export type Filter = TypedDeferredTopicFilter<Event>;
@@ -347,23 +359,12 @@ export namespace OwnershipTransferredEvent {
347
359
  export type LogDescription = TypedLogDescription<Event>;
348
360
  }
349
361
 
350
- export namespace RegistrarAddedEvent {
351
- export type InputTuple = [registrar: AddressLike];
352
- export type OutputTuple = [registrar: string];
353
- export interface OutputObject {
354
- registrar: string;
355
- }
356
- export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
357
- export type Filter = TypedDeferredTopicFilter<Event>;
358
- export type Log = TypedEventLog<Event>;
359
- export type LogDescription = TypedLogDescription<Event>;
360
- }
361
-
362
- export namespace RegistrarRemovedEvent {
363
- export type InputTuple = [registrar: AddressLike];
364
- export type OutputTuple = [registrar: string];
362
+ export namespace RegistrarUpdatedEvent {
363
+ export type InputTuple = [registrar: AddressLike, status: boolean];
364
+ export type OutputTuple = [registrar: string, status: boolean];
365
365
  export interface OutputObject {
366
366
  registrar: string;
367
+ status: boolean;
367
368
  }
368
369
  export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
369
370
  export type Filter = TypedDeferredTopicFilter<Event>;
@@ -414,17 +415,19 @@ export interface IIdentityRegistry extends BaseContract {
414
415
  event?: TCEvent
415
416
  ): Promise<this>;
416
417
 
417
- acceptOwnership: TypedContractMethod<[], [void], "nonpayable">;
418
+ ATTR_ALL: TypedContractMethod<[], [bigint], "view">;
418
419
 
419
- addRegistrar: TypedContractMethod<
420
- [registrar: AddressLike],
421
- [void],
422
- "nonpayable"
423
- >;
420
+ ATTR_BIRTH_YEAR: TypedContractMethod<[], [bigint], "view">;
421
+
422
+ ATTR_BLACKLIST: TypedContractMethod<[], [bigint], "view">;
423
+
424
+ ATTR_COMPLIANCE: TypedContractMethod<[], [bigint], "view">;
424
425
 
425
- attestIdentity: TypedContractMethod<
426
+ ATTR_COUNTRY: TypedContractMethod<[], [bigint], "view">;
427
+
428
+ attestWithPermit: TypedContractMethod<
426
429
  [
427
- user: AddressLike,
430
+ permit: IIdentityRegistry.AttestPermitDataStruct,
428
431
  encBirthYearOffset: BytesLike,
429
432
  encCountryCode: BytesLike,
430
433
  encComplianceLevel: BytesLike,
@@ -441,24 +444,18 @@ export interface IIdentityRegistry extends BaseContract {
441
444
  "view"
442
445
  >;
443
446
 
447
+ checkCompliance: TypedContractMethod<
448
+ [user: AddressLike, minLevel: BigNumberish],
449
+ [string],
450
+ "nonpayable"
451
+ >;
452
+
444
453
  currentAttestationId: TypedContractMethod<
445
454
  [user: AddressLike],
446
455
  [bigint],
447
456
  "view"
448
457
  >;
449
458
 
450
- getAttestationMetadata: TypedContractMethod<
451
- [user: AddressLike, attestationId: BigNumberish],
452
- [
453
- [bigint, bigint, string] & {
454
- timestamp: bigint;
455
- revokedAt: bigint;
456
- registrar: string;
457
- }
458
- ],
459
- "view"
460
- >;
461
-
462
459
  getBirthYearOffset: TypedContractMethod<
463
460
  [user: AddressLike],
464
461
  [string],
@@ -479,12 +476,34 @@ export interface IIdentityRegistry extends BaseContract {
479
476
 
480
477
  getCountryCode: TypedContractMethod<[user: AddressLike], [string], "view">;
481
478
 
479
+ getGrantedAttributes: TypedContractMethod<
480
+ [user: AddressLike, grantee: AddressLike],
481
+ [bigint],
482
+ "view"
483
+ >;
484
+
485
+ getPolicyVersion: TypedContractMethod<[user: AddressLike], [bigint], "view">;
486
+
487
+ getProofSetHash: TypedContractMethod<[user: AddressLike], [string], "view">;
488
+
489
+ getVerificationResult: TypedContractMethod<
490
+ [key: BytesLike],
491
+ [string],
492
+ "view"
493
+ >;
494
+
482
495
  grantAccessTo: TypedContractMethod<
483
496
  [grantee: AddressLike],
484
497
  [void],
485
498
  "nonpayable"
486
499
  >;
487
500
 
501
+ grantAttributeAccess: TypedContractMethod<
502
+ [grantee: AddressLike, attributeMask: BigNumberish, purpose: BigNumberish],
503
+ [void],
504
+ "nonpayable"
505
+ >;
506
+
488
507
  hasMinComplianceLevel: TypedContractMethod<
489
508
  [user: AddressLike, minLevel: BigNumberish],
490
509
  [string],
@@ -505,51 +524,42 @@ export interface IIdentityRegistry extends BaseContract {
505
524
  "nonpayable"
506
525
  >;
507
526
 
508
- latestAttestationId: TypedContractMethod<
509
- [user: AddressLike],
510
- [bigint],
511
- "view"
512
- >;
513
-
514
- owner: TypedContractMethod<[], [string], "view">;
515
-
516
- pendingOwner: TypedContractMethod<[], [string], "view">;
527
+ nonces: TypedContractMethod<[user: AddressLike], [bigint], "view">;
517
528
 
518
529
  registrars: TypedContractMethod<[registrar: AddressLike], [boolean], "view">;
519
530
 
520
- removeRegistrar: TypedContractMethod<
521
- [registrar: AddressLike],
522
- [void],
523
- "nonpayable"
524
- >;
531
+ revokeIdentity: TypedContractMethod<[], [void], "nonpayable">;
525
532
 
526
- revokeIdentity: TypedContractMethod<
533
+ revokeIdentityFor: TypedContractMethod<
527
534
  [user: AddressLike],
528
535
  [void],
529
536
  "nonpayable"
530
537
  >;
531
538
 
532
- transferOwnership: TypedContractMethod<
533
- [newOwner: AddressLike],
534
- [void],
535
- "nonpayable"
536
- >;
537
-
538
539
  getFunction<T extends ContractMethod = ContractMethod>(
539
540
  key: string | FunctionFragment
540
541
  ): T;
541
542
 
542
543
  getFunction(
543
- nameOrSignature: "acceptOwnership"
544
- ): TypedContractMethod<[], [void], "nonpayable">;
544
+ nameOrSignature: "ATTR_ALL"
545
+ ): TypedContractMethod<[], [bigint], "view">;
546
+ getFunction(
547
+ nameOrSignature: "ATTR_BIRTH_YEAR"
548
+ ): TypedContractMethod<[], [bigint], "view">;
549
+ getFunction(
550
+ nameOrSignature: "ATTR_BLACKLIST"
551
+ ): TypedContractMethod<[], [bigint], "view">;
552
+ getFunction(
553
+ nameOrSignature: "ATTR_COMPLIANCE"
554
+ ): TypedContractMethod<[], [bigint], "view">;
545
555
  getFunction(
546
- nameOrSignature: "addRegistrar"
547
- ): TypedContractMethod<[registrar: AddressLike], [void], "nonpayable">;
556
+ nameOrSignature: "ATTR_COUNTRY"
557
+ ): TypedContractMethod<[], [bigint], "view">;
548
558
  getFunction(
549
- nameOrSignature: "attestIdentity"
559
+ nameOrSignature: "attestWithPermit"
550
560
  ): TypedContractMethod<
551
561
  [
552
- user: AddressLike,
562
+ permit: IIdentityRegistry.AttestPermitDataStruct,
553
563
  encBirthYearOffset: BytesLike,
554
564
  encCountryCode: BytesLike,
555
565
  encComplianceLevel: BytesLike,
@@ -563,21 +573,15 @@ export interface IIdentityRegistry extends BaseContract {
563
573
  nameOrSignature: "attestationTimestamp"
564
574
  ): TypedContractMethod<[user: AddressLike], [bigint], "view">;
565
575
  getFunction(
566
- nameOrSignature: "currentAttestationId"
567
- ): TypedContractMethod<[user: AddressLike], [bigint], "view">;
568
- getFunction(
569
- nameOrSignature: "getAttestationMetadata"
576
+ nameOrSignature: "checkCompliance"
570
577
  ): TypedContractMethod<
571
- [user: AddressLike, attestationId: BigNumberish],
572
- [
573
- [bigint, bigint, string] & {
574
- timestamp: bigint;
575
- revokedAt: bigint;
576
- registrar: string;
577
- }
578
- ],
579
- "view"
578
+ [user: AddressLike, minLevel: BigNumberish],
579
+ [string],
580
+ "nonpayable"
580
581
  >;
582
+ getFunction(
583
+ nameOrSignature: "currentAttestationId"
584
+ ): TypedContractMethod<[user: AddressLike], [bigint], "view">;
581
585
  getFunction(
582
586
  nameOrSignature: "getBirthYearOffset"
583
587
  ): TypedContractMethod<[user: AddressLike], [string], "view">;
@@ -590,9 +594,32 @@ export interface IIdentityRegistry extends BaseContract {
590
594
  getFunction(
591
595
  nameOrSignature: "getCountryCode"
592
596
  ): TypedContractMethod<[user: AddressLike], [string], "view">;
597
+ getFunction(
598
+ nameOrSignature: "getGrantedAttributes"
599
+ ): TypedContractMethod<
600
+ [user: AddressLike, grantee: AddressLike],
601
+ [bigint],
602
+ "view"
603
+ >;
604
+ getFunction(
605
+ nameOrSignature: "getPolicyVersion"
606
+ ): TypedContractMethod<[user: AddressLike], [bigint], "view">;
607
+ getFunction(
608
+ nameOrSignature: "getProofSetHash"
609
+ ): TypedContractMethod<[user: AddressLike], [string], "view">;
610
+ getFunction(
611
+ nameOrSignature: "getVerificationResult"
612
+ ): TypedContractMethod<[key: BytesLike], [string], "view">;
593
613
  getFunction(
594
614
  nameOrSignature: "grantAccessTo"
595
615
  ): TypedContractMethod<[grantee: AddressLike], [void], "nonpayable">;
616
+ getFunction(
617
+ nameOrSignature: "grantAttributeAccess"
618
+ ): TypedContractMethod<
619
+ [grantee: AddressLike, attributeMask: BigNumberish, purpose: BigNumberish],
620
+ [void],
621
+ "nonpayable"
622
+ >;
596
623
  getFunction(
597
624
  nameOrSignature: "hasMinComplianceLevel"
598
625
  ): TypedContractMethod<
@@ -614,33 +641,24 @@ export interface IIdentityRegistry extends BaseContract {
614
641
  nameOrSignature: "isNotBlacklisted"
615
642
  ): TypedContractMethod<[user: AddressLike], [string], "nonpayable">;
616
643
  getFunction(
617
- nameOrSignature: "latestAttestationId"
644
+ nameOrSignature: "nonces"
618
645
  ): TypedContractMethod<[user: AddressLike], [bigint], "view">;
619
- getFunction(
620
- nameOrSignature: "owner"
621
- ): TypedContractMethod<[], [string], "view">;
622
- getFunction(
623
- nameOrSignature: "pendingOwner"
624
- ): TypedContractMethod<[], [string], "view">;
625
646
  getFunction(
626
647
  nameOrSignature: "registrars"
627
648
  ): TypedContractMethod<[registrar: AddressLike], [boolean], "view">;
628
- getFunction(
629
- nameOrSignature: "removeRegistrar"
630
- ): TypedContractMethod<[registrar: AddressLike], [void], "nonpayable">;
631
649
  getFunction(
632
650
  nameOrSignature: "revokeIdentity"
633
- ): TypedContractMethod<[user: AddressLike], [void], "nonpayable">;
651
+ ): TypedContractMethod<[], [void], "nonpayable">;
634
652
  getFunction(
635
- nameOrSignature: "transferOwnership"
636
- ): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">;
653
+ nameOrSignature: "revokeIdentityFor"
654
+ ): TypedContractMethod<[user: AddressLike], [void], "nonpayable">;
637
655
 
638
656
  getEvent(
639
- key: "AccessGranted"
657
+ key: "AttributeAccessGranted"
640
658
  ): TypedContractEvent<
641
- AccessGrantedEvent.InputTuple,
642
- AccessGrantedEvent.OutputTuple,
643
- AccessGrantedEvent.OutputObject
659
+ AttributeAccessGrantedEvent.InputTuple,
660
+ AttributeAccessGrantedEvent.OutputTuple,
661
+ AttributeAccessGrantedEvent.OutputObject
644
662
  >;
645
663
  getEvent(
646
664
  key: "IdentityAttested"
@@ -649,13 +667,6 @@ export interface IIdentityRegistry extends BaseContract {
649
667
  IdentityAttestedEvent.OutputTuple,
650
668
  IdentityAttestedEvent.OutputObject
651
669
  >;
652
- getEvent(
653
- key: "IdentityAttestedDetailed"
654
- ): TypedContractEvent<
655
- IdentityAttestedDetailedEvent.InputTuple,
656
- IdentityAttestedDetailedEvent.OutputTuple,
657
- IdentityAttestedDetailedEvent.OutputObject
658
- >;
659
670
  getEvent(
660
671
  key: "IdentityRevoked"
661
672
  ): TypedContractEvent<
@@ -664,54 +675,26 @@ export interface IIdentityRegistry extends BaseContract {
664
675
  IdentityRevokedEvent.OutputObject
665
676
  >;
666
677
  getEvent(
667
- key: "IdentityRevokedDetailed"
668
- ): TypedContractEvent<
669
- IdentityRevokedDetailedEvent.InputTuple,
670
- IdentityRevokedDetailedEvent.OutputTuple,
671
- IdentityRevokedDetailedEvent.OutputObject
672
- >;
673
- getEvent(
674
- key: "OwnershipTransferStarted"
675
- ): TypedContractEvent<
676
- OwnershipTransferStartedEvent.InputTuple,
677
- OwnershipTransferStartedEvent.OutputTuple,
678
- OwnershipTransferStartedEvent.OutputObject
679
- >;
680
- getEvent(
681
- key: "OwnershipTransferred"
682
- ): TypedContractEvent<
683
- OwnershipTransferredEvent.InputTuple,
684
- OwnershipTransferredEvent.OutputTuple,
685
- OwnershipTransferredEvent.OutputObject
686
- >;
687
- getEvent(
688
- key: "RegistrarAdded"
689
- ): TypedContractEvent<
690
- RegistrarAddedEvent.InputTuple,
691
- RegistrarAddedEvent.OutputTuple,
692
- RegistrarAddedEvent.OutputObject
693
- >;
694
- getEvent(
695
- key: "RegistrarRemoved"
678
+ key: "RegistrarUpdated"
696
679
  ): TypedContractEvent<
697
- RegistrarRemovedEvent.InputTuple,
698
- RegistrarRemovedEvent.OutputTuple,
699
- RegistrarRemovedEvent.OutputObject
680
+ RegistrarUpdatedEvent.InputTuple,
681
+ RegistrarUpdatedEvent.OutputTuple,
682
+ RegistrarUpdatedEvent.OutputObject
700
683
  >;
701
684
 
702
685
  filters: {
703
- "AccessGranted(address,address)": TypedContractEvent<
704
- AccessGrantedEvent.InputTuple,
705
- AccessGrantedEvent.OutputTuple,
706
- AccessGrantedEvent.OutputObject
686
+ "AttributeAccessGranted(address,address,uint8,uint8)": TypedContractEvent<
687
+ AttributeAccessGrantedEvent.InputTuple,
688
+ AttributeAccessGrantedEvent.OutputTuple,
689
+ AttributeAccessGrantedEvent.OutputObject
707
690
  >;
708
- AccessGranted: TypedContractEvent<
709
- AccessGrantedEvent.InputTuple,
710
- AccessGrantedEvent.OutputTuple,
711
- AccessGrantedEvent.OutputObject
691
+ AttributeAccessGranted: TypedContractEvent<
692
+ AttributeAccessGrantedEvent.InputTuple,
693
+ AttributeAccessGrantedEvent.OutputTuple,
694
+ AttributeAccessGrantedEvent.OutputObject
712
695
  >;
713
696
 
714
- "IdentityAttested(address,address)": TypedContractEvent<
697
+ "IdentityAttested(address)": TypedContractEvent<
715
698
  IdentityAttestedEvent.InputTuple,
716
699
  IdentityAttestedEvent.OutputTuple,
717
700
  IdentityAttestedEvent.OutputObject
@@ -722,17 +705,6 @@ export interface IIdentityRegistry extends BaseContract {
722
705
  IdentityAttestedEvent.OutputObject
723
706
  >;
724
707
 
725
- "IdentityAttestedDetailed(address,address,uint256,uint256)": TypedContractEvent<
726
- IdentityAttestedDetailedEvent.InputTuple,
727
- IdentityAttestedDetailedEvent.OutputTuple,
728
- IdentityAttestedDetailedEvent.OutputObject
729
- >;
730
- IdentityAttestedDetailed: TypedContractEvent<
731
- IdentityAttestedDetailedEvent.InputTuple,
732
- IdentityAttestedDetailedEvent.OutputTuple,
733
- IdentityAttestedDetailedEvent.OutputObject
734
- >;
735
-
736
708
  "IdentityRevoked(address)": TypedContractEvent<
737
709
  IdentityRevokedEvent.InputTuple,
738
710
  IdentityRevokedEvent.OutputTuple,
@@ -744,59 +716,15 @@ export interface IIdentityRegistry extends BaseContract {
744
716
  IdentityRevokedEvent.OutputObject
745
717
  >;
746
718
 
747
- "IdentityRevokedDetailed(address,address,uint256,uint256)": TypedContractEvent<
748
- IdentityRevokedDetailedEvent.InputTuple,
749
- IdentityRevokedDetailedEvent.OutputTuple,
750
- IdentityRevokedDetailedEvent.OutputObject
751
- >;
752
- IdentityRevokedDetailed: TypedContractEvent<
753
- IdentityRevokedDetailedEvent.InputTuple,
754
- IdentityRevokedDetailedEvent.OutputTuple,
755
- IdentityRevokedDetailedEvent.OutputObject
756
- >;
757
-
758
- "OwnershipTransferStarted(address,address)": TypedContractEvent<
759
- OwnershipTransferStartedEvent.InputTuple,
760
- OwnershipTransferStartedEvent.OutputTuple,
761
- OwnershipTransferStartedEvent.OutputObject
762
- >;
763
- OwnershipTransferStarted: TypedContractEvent<
764
- OwnershipTransferStartedEvent.InputTuple,
765
- OwnershipTransferStartedEvent.OutputTuple,
766
- OwnershipTransferStartedEvent.OutputObject
767
- >;
768
-
769
- "OwnershipTransferred(address,address)": TypedContractEvent<
770
- OwnershipTransferredEvent.InputTuple,
771
- OwnershipTransferredEvent.OutputTuple,
772
- OwnershipTransferredEvent.OutputObject
773
- >;
774
- OwnershipTransferred: TypedContractEvent<
775
- OwnershipTransferredEvent.InputTuple,
776
- OwnershipTransferredEvent.OutputTuple,
777
- OwnershipTransferredEvent.OutputObject
778
- >;
779
-
780
- "RegistrarAdded(address)": TypedContractEvent<
781
- RegistrarAddedEvent.InputTuple,
782
- RegistrarAddedEvent.OutputTuple,
783
- RegistrarAddedEvent.OutputObject
784
- >;
785
- RegistrarAdded: TypedContractEvent<
786
- RegistrarAddedEvent.InputTuple,
787
- RegistrarAddedEvent.OutputTuple,
788
- RegistrarAddedEvent.OutputObject
789
- >;
790
-
791
- "RegistrarRemoved(address)": TypedContractEvent<
792
- RegistrarRemovedEvent.InputTuple,
793
- RegistrarRemovedEvent.OutputTuple,
794
- RegistrarRemovedEvent.OutputObject
719
+ "RegistrarUpdated(address,bool)": TypedContractEvent<
720
+ RegistrarUpdatedEvent.InputTuple,
721
+ RegistrarUpdatedEvent.OutputTuple,
722
+ RegistrarUpdatedEvent.OutputObject
795
723
  >;
796
- RegistrarRemoved: TypedContractEvent<
797
- RegistrarRemovedEvent.InputTuple,
798
- RegistrarRemovedEvent.OutputTuple,
799
- RegistrarRemovedEvent.OutputObject
724
+ RegistrarUpdated: TypedContractEvent<
725
+ RegistrarUpdatedEvent.InputTuple,
726
+ RegistrarUpdatedEvent.OutputTuple,
727
+ RegistrarUpdatedEvent.OutputObject
800
728
  >;
801
729
  };
802
730
  }