@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,7 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type * as fheSol from "./FHE.sol";
5
+ export type { fheSol };
6
+ import type * as implSol from "./Impl.sol";
7
+ export type { implSol };
@@ -0,0 +1,131 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import type {
5
+ FunctionFragment,
6
+ Typed,
7
+ EventFragment,
8
+ ContractTransaction,
9
+ ContractTransactionResponse,
10
+ DeferredTopicFilter,
11
+ EventLog,
12
+ TransactionRequest,
13
+ LogDescription,
14
+ } from "ethers";
15
+
16
+ export interface TypedDeferredTopicFilter<_TCEvent extends TypedContractEvent>
17
+ extends DeferredTopicFilter {}
18
+
19
+ export interface TypedContractEvent<
20
+ InputTuple extends Array<any> = any,
21
+ OutputTuple extends Array<any> = any,
22
+ OutputObject = any
23
+ > {
24
+ (...args: Partial<InputTuple>): TypedDeferredTopicFilter<
25
+ TypedContractEvent<InputTuple, OutputTuple, OutputObject>
26
+ >;
27
+ name: string;
28
+ fragment: EventFragment;
29
+ getFragment(...args: Partial<InputTuple>): EventFragment;
30
+ }
31
+
32
+ type __TypechainAOutputTuple<T> = T extends TypedContractEvent<
33
+ infer _U,
34
+ infer W
35
+ >
36
+ ? W
37
+ : never;
38
+ type __TypechainOutputObject<T> = T extends TypedContractEvent<
39
+ infer _U,
40
+ infer _W,
41
+ infer V
42
+ >
43
+ ? V
44
+ : never;
45
+
46
+ export interface TypedEventLog<TCEvent extends TypedContractEvent>
47
+ extends Omit<EventLog, "args"> {
48
+ args: __TypechainAOutputTuple<TCEvent> & __TypechainOutputObject<TCEvent>;
49
+ }
50
+
51
+ export interface TypedLogDescription<TCEvent extends TypedContractEvent>
52
+ extends Omit<LogDescription, "args"> {
53
+ args: __TypechainAOutputTuple<TCEvent> & __TypechainOutputObject<TCEvent>;
54
+ }
55
+
56
+ export type TypedListener<TCEvent extends TypedContractEvent> = (
57
+ ...listenerArg: [
58
+ ...__TypechainAOutputTuple<TCEvent>,
59
+ TypedEventLog<TCEvent>,
60
+ ...undefined[]
61
+ ]
62
+ ) => void;
63
+
64
+ export type MinEthersFactory<C, ARGS> = {
65
+ deploy(...a: ARGS[]): Promise<C>;
66
+ };
67
+
68
+ export type GetContractTypeFromFactory<F> = F extends MinEthersFactory<
69
+ infer C,
70
+ any
71
+ >
72
+ ? C
73
+ : never;
74
+ export type GetARGsTypeFromFactory<F> = F extends MinEthersFactory<any, any>
75
+ ? Parameters<F["deploy"]>
76
+ : never;
77
+
78
+ export type StateMutability = "nonpayable" | "payable" | "view";
79
+
80
+ export type BaseOverrides = Omit<TransactionRequest, "to" | "data">;
81
+ export type NonPayableOverrides = Omit<
82
+ BaseOverrides,
83
+ "value" | "blockTag" | "enableCcipRead"
84
+ >;
85
+ export type PayableOverrides = Omit<
86
+ BaseOverrides,
87
+ "blockTag" | "enableCcipRead"
88
+ >;
89
+ export type ViewOverrides = Omit<TransactionRequest, "to" | "data">;
90
+ export type Overrides<S extends StateMutability> = S extends "nonpayable"
91
+ ? NonPayableOverrides
92
+ : S extends "payable"
93
+ ? PayableOverrides
94
+ : ViewOverrides;
95
+
96
+ export type PostfixOverrides<A extends Array<any>, S extends StateMutability> =
97
+ | A
98
+ | [...A, Overrides<S>];
99
+ export type ContractMethodArgs<
100
+ A extends Array<any>,
101
+ S extends StateMutability
102
+ > = PostfixOverrides<{ [I in keyof A]-?: A[I] | Typed }, S>;
103
+
104
+ export type DefaultReturnType<R> = R extends Array<any> ? R[0] : R;
105
+
106
+ // export interface ContractMethod<A extends Array<any> = Array<any>, R = any, D extends R | ContractTransactionResponse = R | ContractTransactionResponse> {
107
+ export interface TypedContractMethod<
108
+ A extends Array<any> = Array<any>,
109
+ R = any,
110
+ S extends StateMutability = "payable"
111
+ > {
112
+ (...args: ContractMethodArgs<A, S>): S extends "view"
113
+ ? Promise<DefaultReturnType<R>>
114
+ : Promise<ContractTransactionResponse>;
115
+
116
+ name: string;
117
+
118
+ fragment: FunctionFragment;
119
+
120
+ getFragment(...args: ContractMethodArgs<A, S>): FunctionFragment;
121
+
122
+ populateTransaction(
123
+ ...args: ContractMethodArgs<A, S>
124
+ ): Promise<ContractTransaction>;
125
+ staticCall(
126
+ ...args: ContractMethodArgs<A, "view">
127
+ ): Promise<DefaultReturnType<R>>;
128
+ send(...args: ContractMethodArgs<A, S>): Promise<ContractTransactionResponse>;
129
+ estimateGas(...args: ContractMethodArgs<A, S>): Promise<bigint>;
130
+ staticCallResult(...args: ContractMethodArgs<A, "view">): Promise<R>;
131
+ }
@@ -0,0 +1,479 @@
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 ComplianceRulesInterface extends Interface {
27
+ getFunction(
28
+ nameOrSignature:
29
+ | "acceptOwnership"
30
+ | "authorizedCallers"
31
+ | "checkCompliance"
32
+ | "checkComplianceWithCountry"
33
+ | "confidentialProtocolId"
34
+ | "getComplianceResult"
35
+ | "hasComplianceResult"
36
+ | "identityRegistry"
37
+ | "minKycLevel"
38
+ | "owner"
39
+ | "pendingOwner"
40
+ | "setAuthorizedCaller"
41
+ | "setMinKycLevel"
42
+ | "transferOwnership"
43
+ ): FunctionFragment;
44
+
45
+ getEvent(
46
+ nameOrSignatureOrTopic:
47
+ | "AuthorizedCallerUpdated"
48
+ | "ComplianceChecked"
49
+ | "MinKycLevelUpdated"
50
+ | "OwnershipTransferStarted"
51
+ | "OwnershipTransferred"
52
+ ): EventFragment;
53
+
54
+ encodeFunctionData(
55
+ functionFragment: "acceptOwnership",
56
+ values?: undefined
57
+ ): string;
58
+ encodeFunctionData(
59
+ functionFragment: "authorizedCallers",
60
+ values: [AddressLike]
61
+ ): string;
62
+ encodeFunctionData(
63
+ functionFragment: "checkCompliance",
64
+ values: [AddressLike]
65
+ ): string;
66
+ encodeFunctionData(
67
+ functionFragment: "checkComplianceWithCountry",
68
+ values: [AddressLike, BigNumberish]
69
+ ): string;
70
+ encodeFunctionData(
71
+ functionFragment: "confidentialProtocolId",
72
+ values?: undefined
73
+ ): string;
74
+ encodeFunctionData(
75
+ functionFragment: "getComplianceResult",
76
+ values: [AddressLike]
77
+ ): string;
78
+ encodeFunctionData(
79
+ functionFragment: "hasComplianceResult",
80
+ values: [AddressLike]
81
+ ): string;
82
+ encodeFunctionData(
83
+ functionFragment: "identityRegistry",
84
+ values?: undefined
85
+ ): string;
86
+ encodeFunctionData(
87
+ functionFragment: "minKycLevel",
88
+ values?: undefined
89
+ ): string;
90
+ encodeFunctionData(functionFragment: "owner", values?: undefined): string;
91
+ encodeFunctionData(
92
+ functionFragment: "pendingOwner",
93
+ values?: undefined
94
+ ): string;
95
+ encodeFunctionData(
96
+ functionFragment: "setAuthorizedCaller",
97
+ values: [AddressLike, boolean]
98
+ ): string;
99
+ encodeFunctionData(
100
+ functionFragment: "setMinKycLevel",
101
+ values: [BigNumberish]
102
+ ): string;
103
+ encodeFunctionData(
104
+ functionFragment: "transferOwnership",
105
+ values: [AddressLike]
106
+ ): string;
107
+
108
+ decodeFunctionResult(
109
+ functionFragment: "acceptOwnership",
110
+ data: BytesLike
111
+ ): Result;
112
+ decodeFunctionResult(
113
+ functionFragment: "authorizedCallers",
114
+ data: BytesLike
115
+ ): Result;
116
+ decodeFunctionResult(
117
+ functionFragment: "checkCompliance",
118
+ data: BytesLike
119
+ ): Result;
120
+ decodeFunctionResult(
121
+ functionFragment: "checkComplianceWithCountry",
122
+ data: BytesLike
123
+ ): Result;
124
+ decodeFunctionResult(
125
+ functionFragment: "confidentialProtocolId",
126
+ data: BytesLike
127
+ ): Result;
128
+ decodeFunctionResult(
129
+ functionFragment: "getComplianceResult",
130
+ data: BytesLike
131
+ ): Result;
132
+ decodeFunctionResult(
133
+ functionFragment: "hasComplianceResult",
134
+ data: BytesLike
135
+ ): Result;
136
+ decodeFunctionResult(
137
+ functionFragment: "identityRegistry",
138
+ data: BytesLike
139
+ ): Result;
140
+ decodeFunctionResult(
141
+ functionFragment: "minKycLevel",
142
+ data: BytesLike
143
+ ): Result;
144
+ decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
145
+ decodeFunctionResult(
146
+ functionFragment: "pendingOwner",
147
+ data: BytesLike
148
+ ): Result;
149
+ decodeFunctionResult(
150
+ functionFragment: "setAuthorizedCaller",
151
+ data: BytesLike
152
+ ): Result;
153
+ decodeFunctionResult(
154
+ functionFragment: "setMinKycLevel",
155
+ data: BytesLike
156
+ ): Result;
157
+ decodeFunctionResult(
158
+ functionFragment: "transferOwnership",
159
+ data: BytesLike
160
+ ): Result;
161
+ }
162
+
163
+ export namespace AuthorizedCallerUpdatedEvent {
164
+ export type InputTuple = [caller: AddressLike, allowed: boolean];
165
+ export type OutputTuple = [caller: string, allowed: boolean];
166
+ export interface OutputObject {
167
+ caller: string;
168
+ allowed: boolean;
169
+ }
170
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
171
+ export type Filter = TypedDeferredTopicFilter<Event>;
172
+ export type Log = TypedEventLog<Event>;
173
+ export type LogDescription = TypedLogDescription<Event>;
174
+ }
175
+
176
+ export namespace ComplianceCheckedEvent {
177
+ export type InputTuple = [user: AddressLike];
178
+ export type OutputTuple = [user: string];
179
+ export interface OutputObject {
180
+ user: string;
181
+ }
182
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
183
+ export type Filter = TypedDeferredTopicFilter<Event>;
184
+ export type Log = TypedEventLog<Event>;
185
+ export type LogDescription = TypedLogDescription<Event>;
186
+ }
187
+
188
+ export namespace MinKycLevelUpdatedEvent {
189
+ export type InputTuple = [newLevel: BigNumberish];
190
+ export type OutputTuple = [newLevel: bigint];
191
+ export interface OutputObject {
192
+ newLevel: bigint;
193
+ }
194
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
195
+ export type Filter = TypedDeferredTopicFilter<Event>;
196
+ export type Log = TypedEventLog<Event>;
197
+ export type LogDescription = TypedLogDescription<Event>;
198
+ }
199
+
200
+ export namespace OwnershipTransferStartedEvent {
201
+ export type InputTuple = [
202
+ currentOwner: AddressLike,
203
+ pendingOwner: AddressLike
204
+ ];
205
+ export type OutputTuple = [currentOwner: string, pendingOwner: string];
206
+ export interface OutputObject {
207
+ currentOwner: string;
208
+ pendingOwner: string;
209
+ }
210
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
211
+ export type Filter = TypedDeferredTopicFilter<Event>;
212
+ export type Log = TypedEventLog<Event>;
213
+ export type LogDescription = TypedLogDescription<Event>;
214
+ }
215
+
216
+ export namespace OwnershipTransferredEvent {
217
+ export type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike];
218
+ export type OutputTuple = [previousOwner: string, newOwner: string];
219
+ export interface OutputObject {
220
+ previousOwner: string;
221
+ newOwner: string;
222
+ }
223
+ export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
224
+ export type Filter = TypedDeferredTopicFilter<Event>;
225
+ export type Log = TypedEventLog<Event>;
226
+ export type LogDescription = TypedLogDescription<Event>;
227
+ }
228
+
229
+ export interface ComplianceRules extends BaseContract {
230
+ connect(runner?: ContractRunner | null): ComplianceRules;
231
+ waitForDeployment(): Promise<this>;
232
+
233
+ interface: ComplianceRulesInterface;
234
+
235
+ queryFilter<TCEvent extends TypedContractEvent>(
236
+ event: TCEvent,
237
+ fromBlockOrBlockhash?: string | number | undefined,
238
+ toBlock?: string | number | undefined
239
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
240
+ queryFilter<TCEvent extends TypedContractEvent>(
241
+ filter: TypedDeferredTopicFilter<TCEvent>,
242
+ fromBlockOrBlockhash?: string | number | undefined,
243
+ toBlock?: string | number | undefined
244
+ ): Promise<Array<TypedEventLog<TCEvent>>>;
245
+
246
+ on<TCEvent extends TypedContractEvent>(
247
+ event: TCEvent,
248
+ listener: TypedListener<TCEvent>
249
+ ): Promise<this>;
250
+ on<TCEvent extends TypedContractEvent>(
251
+ filter: TypedDeferredTopicFilter<TCEvent>,
252
+ listener: TypedListener<TCEvent>
253
+ ): Promise<this>;
254
+
255
+ once<TCEvent extends TypedContractEvent>(
256
+ event: TCEvent,
257
+ listener: TypedListener<TCEvent>
258
+ ): Promise<this>;
259
+ once<TCEvent extends TypedContractEvent>(
260
+ filter: TypedDeferredTopicFilter<TCEvent>,
261
+ listener: TypedListener<TCEvent>
262
+ ): Promise<this>;
263
+
264
+ listeners<TCEvent extends TypedContractEvent>(
265
+ event: TCEvent
266
+ ): Promise<Array<TypedListener<TCEvent>>>;
267
+ listeners(eventName?: string): Promise<Array<Listener>>;
268
+ removeAllListeners<TCEvent extends TypedContractEvent>(
269
+ event?: TCEvent
270
+ ): Promise<this>;
271
+
272
+ acceptOwnership: TypedContractMethod<[], [void], "nonpayable">;
273
+
274
+ authorizedCallers: TypedContractMethod<
275
+ [caller: AddressLike],
276
+ [boolean],
277
+ "view"
278
+ >;
279
+
280
+ checkCompliance: TypedContractMethod<
281
+ [user: AddressLike],
282
+ [string],
283
+ "nonpayable"
284
+ >;
285
+
286
+ checkComplianceWithCountry: TypedContractMethod<
287
+ [user: AddressLike, allowedCountry: BigNumberish],
288
+ [string],
289
+ "nonpayable"
290
+ >;
291
+
292
+ confidentialProtocolId: TypedContractMethod<[], [bigint], "view">;
293
+
294
+ getComplianceResult: TypedContractMethod<
295
+ [user: AddressLike],
296
+ [string],
297
+ "view"
298
+ >;
299
+
300
+ hasComplianceResult: TypedContractMethod<
301
+ [user: AddressLike],
302
+ [boolean],
303
+ "view"
304
+ >;
305
+
306
+ identityRegistry: TypedContractMethod<[], [string], "view">;
307
+
308
+ minKycLevel: TypedContractMethod<[], [bigint], "view">;
309
+
310
+ owner: TypedContractMethod<[], [string], "view">;
311
+
312
+ pendingOwner: TypedContractMethod<[], [string], "view">;
313
+
314
+ setAuthorizedCaller: TypedContractMethod<
315
+ [caller: AddressLike, allowed: boolean],
316
+ [void],
317
+ "nonpayable"
318
+ >;
319
+
320
+ setMinKycLevel: TypedContractMethod<
321
+ [newLevel: BigNumberish],
322
+ [void],
323
+ "nonpayable"
324
+ >;
325
+
326
+ transferOwnership: TypedContractMethod<
327
+ [newOwner: AddressLike],
328
+ [void],
329
+ "nonpayable"
330
+ >;
331
+
332
+ getFunction<T extends ContractMethod = ContractMethod>(
333
+ key: string | FunctionFragment
334
+ ): T;
335
+
336
+ getFunction(
337
+ nameOrSignature: "acceptOwnership"
338
+ ): TypedContractMethod<[], [void], "nonpayable">;
339
+ getFunction(
340
+ nameOrSignature: "authorizedCallers"
341
+ ): TypedContractMethod<[caller: AddressLike], [boolean], "view">;
342
+ getFunction(
343
+ nameOrSignature: "checkCompliance"
344
+ ): TypedContractMethod<[user: AddressLike], [string], "nonpayable">;
345
+ getFunction(
346
+ nameOrSignature: "checkComplianceWithCountry"
347
+ ): TypedContractMethod<
348
+ [user: AddressLike, allowedCountry: BigNumberish],
349
+ [string],
350
+ "nonpayable"
351
+ >;
352
+ getFunction(
353
+ nameOrSignature: "confidentialProtocolId"
354
+ ): TypedContractMethod<[], [bigint], "view">;
355
+ getFunction(
356
+ nameOrSignature: "getComplianceResult"
357
+ ): TypedContractMethod<[user: AddressLike], [string], "view">;
358
+ getFunction(
359
+ nameOrSignature: "hasComplianceResult"
360
+ ): TypedContractMethod<[user: AddressLike], [boolean], "view">;
361
+ getFunction(
362
+ nameOrSignature: "identityRegistry"
363
+ ): TypedContractMethod<[], [string], "view">;
364
+ getFunction(
365
+ nameOrSignature: "minKycLevel"
366
+ ): TypedContractMethod<[], [bigint], "view">;
367
+ getFunction(
368
+ nameOrSignature: "owner"
369
+ ): TypedContractMethod<[], [string], "view">;
370
+ getFunction(
371
+ nameOrSignature: "pendingOwner"
372
+ ): TypedContractMethod<[], [string], "view">;
373
+ getFunction(
374
+ nameOrSignature: "setAuthorizedCaller"
375
+ ): TypedContractMethod<
376
+ [caller: AddressLike, allowed: boolean],
377
+ [void],
378
+ "nonpayable"
379
+ >;
380
+ getFunction(
381
+ nameOrSignature: "setMinKycLevel"
382
+ ): TypedContractMethod<[newLevel: BigNumberish], [void], "nonpayable">;
383
+ getFunction(
384
+ nameOrSignature: "transferOwnership"
385
+ ): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">;
386
+
387
+ getEvent(
388
+ key: "AuthorizedCallerUpdated"
389
+ ): TypedContractEvent<
390
+ AuthorizedCallerUpdatedEvent.InputTuple,
391
+ AuthorizedCallerUpdatedEvent.OutputTuple,
392
+ AuthorizedCallerUpdatedEvent.OutputObject
393
+ >;
394
+ getEvent(
395
+ key: "ComplianceChecked"
396
+ ): TypedContractEvent<
397
+ ComplianceCheckedEvent.InputTuple,
398
+ ComplianceCheckedEvent.OutputTuple,
399
+ ComplianceCheckedEvent.OutputObject
400
+ >;
401
+ getEvent(
402
+ key: "MinKycLevelUpdated"
403
+ ): TypedContractEvent<
404
+ MinKycLevelUpdatedEvent.InputTuple,
405
+ MinKycLevelUpdatedEvent.OutputTuple,
406
+ MinKycLevelUpdatedEvent.OutputObject
407
+ >;
408
+ getEvent(
409
+ key: "OwnershipTransferStarted"
410
+ ): TypedContractEvent<
411
+ OwnershipTransferStartedEvent.InputTuple,
412
+ OwnershipTransferStartedEvent.OutputTuple,
413
+ OwnershipTransferStartedEvent.OutputObject
414
+ >;
415
+ getEvent(
416
+ key: "OwnershipTransferred"
417
+ ): TypedContractEvent<
418
+ OwnershipTransferredEvent.InputTuple,
419
+ OwnershipTransferredEvent.OutputTuple,
420
+ OwnershipTransferredEvent.OutputObject
421
+ >;
422
+
423
+ filters: {
424
+ "AuthorizedCallerUpdated(address,bool)": TypedContractEvent<
425
+ AuthorizedCallerUpdatedEvent.InputTuple,
426
+ AuthorizedCallerUpdatedEvent.OutputTuple,
427
+ AuthorizedCallerUpdatedEvent.OutputObject
428
+ >;
429
+ AuthorizedCallerUpdated: TypedContractEvent<
430
+ AuthorizedCallerUpdatedEvent.InputTuple,
431
+ AuthorizedCallerUpdatedEvent.OutputTuple,
432
+ AuthorizedCallerUpdatedEvent.OutputObject
433
+ >;
434
+
435
+ "ComplianceChecked(address)": TypedContractEvent<
436
+ ComplianceCheckedEvent.InputTuple,
437
+ ComplianceCheckedEvent.OutputTuple,
438
+ ComplianceCheckedEvent.OutputObject
439
+ >;
440
+ ComplianceChecked: TypedContractEvent<
441
+ ComplianceCheckedEvent.InputTuple,
442
+ ComplianceCheckedEvent.OutputTuple,
443
+ ComplianceCheckedEvent.OutputObject
444
+ >;
445
+
446
+ "MinKycLevelUpdated(uint8)": TypedContractEvent<
447
+ MinKycLevelUpdatedEvent.InputTuple,
448
+ MinKycLevelUpdatedEvent.OutputTuple,
449
+ MinKycLevelUpdatedEvent.OutputObject
450
+ >;
451
+ MinKycLevelUpdated: TypedContractEvent<
452
+ MinKycLevelUpdatedEvent.InputTuple,
453
+ MinKycLevelUpdatedEvent.OutputTuple,
454
+ MinKycLevelUpdatedEvent.OutputObject
455
+ >;
456
+
457
+ "OwnershipTransferStarted(address,address)": TypedContractEvent<
458
+ OwnershipTransferStartedEvent.InputTuple,
459
+ OwnershipTransferStartedEvent.OutputTuple,
460
+ OwnershipTransferStartedEvent.OutputObject
461
+ >;
462
+ OwnershipTransferStarted: TypedContractEvent<
463
+ OwnershipTransferStartedEvent.InputTuple,
464
+ OwnershipTransferStartedEvent.OutputTuple,
465
+ OwnershipTransferStartedEvent.OutputObject
466
+ >;
467
+
468
+ "OwnershipTransferred(address,address)": TypedContractEvent<
469
+ OwnershipTransferredEvent.InputTuple,
470
+ OwnershipTransferredEvent.OutputTuple,
471
+ OwnershipTransferredEvent.OutputObject
472
+ >;
473
+ OwnershipTransferred: TypedContractEvent<
474
+ OwnershipTransferredEvent.InputTuple,
475
+ OwnershipTransferredEvent.OutputTuple,
476
+ OwnershipTransferredEvent.OutputObject
477
+ >;
478
+ };
479
+ }
@@ -0,0 +1,4 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export type { ComplianceRules } from "./ComplianceRules";