@etherisc/gif-next 0.0.2-ac5f18b → 0.0.2-b9b3e89

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. package/README.md +70 -0
  2. package/artifacts/contracts/components/Component.sol/Component.dbg.json +4 -0
  3. package/artifacts/contracts/components/Component.sol/Component.json +179 -0
  4. package/artifacts/contracts/components/Component.sol/InstanceLinked.dbg.json +4 -0
  5. package/artifacts/contracts/components/Component.sol/InstanceLinked.json +35 -0
  6. package/artifacts/contracts/components/IPool.sol/IPoolComponent.dbg.json +4 -0
  7. package/artifacts/contracts/components/IPool.sol/IPoolComponent.json +179 -0
  8. package/artifacts/contracts/components/IProduct.sol/IProductComponent.dbg.json +4 -0
  9. package/artifacts/contracts/components/IProduct.sol/IProductComponent.json +192 -0
  10. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +4 -0
  11. package/artifacts/contracts/components/Pool.sol/Pool.json +195 -0
  12. package/artifacts/contracts/components/Product.sol/Product.dbg.json +4 -0
  13. package/artifacts/contracts/components/Product.sol/Product.json +213 -0
  14. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +4 -0
  15. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +892 -0
  16. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +4 -0
  17. package/artifacts/contracts/instance/Instance.sol/Instance.json +1009 -0
  18. package/artifacts/contracts/instance/access/Access.sol/AccessModule.dbg.json +4 -0
  19. package/artifacts/contracts/instance/access/Access.sol/AccessModule.json +400 -0
  20. package/artifacts/contracts/instance/access/IAccess.sol/IAccess.dbg.json +4 -0
  21. package/artifacts/contracts/instance/access/IAccess.sol/IAccess.json +10 -0
  22. package/artifacts/contracts/instance/access/IAccess.sol/IAccessCheckRole.dbg.json +4 -0
  23. package/artifacts/contracts/instance/access/IAccess.sol/IAccessCheckRole.json +35 -0
  24. package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.dbg.json +4 -0
  25. package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.json +50 -0
  26. package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.dbg.json +4 -0
  27. package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.json +336 -0
  28. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.dbg.json +4 -0
  29. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.json +327 -0
  30. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.dbg.json +4 -0
  31. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.json +105 -0
  32. package/artifacts/contracts/instance/component/IComponent.sol/IComponent.dbg.json +4 -0
  33. package/artifacts/contracts/instance/component/IComponent.sol/IComponent.json +10 -0
  34. package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.dbg.json +4 -0
  35. package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.json +179 -0
  36. package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.dbg.json +4 -0
  37. package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.json +245 -0
  38. package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.dbg.json +4 -0
  39. package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.json +94 -0
  40. package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.dbg.json +4 -0
  41. package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.json +24 -0
  42. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicy.dbg.json +4 -0
  43. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicy.json +10 -0
  44. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.dbg.json +4 -0
  45. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.json +231 -0
  46. package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.dbg.json +4 -0
  47. package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.json +231 -0
  48. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPool.dbg.json +4 -0
  49. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPool.json +10 -0
  50. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.dbg.json +4 -0
  51. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.json +149 -0
  52. package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.dbg.json +4 -0
  53. package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.json +162 -0
  54. package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.dbg.json +4 -0
  55. package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.json +75 -0
  56. package/artifacts/contracts/instance/product/IProductService.sol/IProductService.dbg.json +4 -0
  57. package/artifacts/contracts/instance/product/IProductService.sol/IProductService.json +114 -0
  58. package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.dbg.json +4 -0
  59. package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.json +75 -0
  60. package/artifacts/contracts/instance/product/ProductService.sol/ProductService.dbg.json +4 -0
  61. package/artifacts/contracts/instance/product/ProductService.sol/ProductService.json +125 -0
  62. package/artifacts/contracts/registry/IRegistry.sol/IOwnable.dbg.json +4 -0
  63. package/artifacts/contracts/registry/IRegistry.sol/IOwnable.json +24 -0
  64. package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.dbg.json +4 -0
  65. package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.json +166 -0
  66. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +4 -0
  67. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +271 -0
  68. package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.dbg.json +4 -0
  69. package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.json +49 -0
  70. package/artifacts/contracts/registry/Registry.sol/Registerable.dbg.json +4 -0
  71. package/artifacts/contracts/registry/Registry.sol/Registerable.json +166 -0
  72. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +4 -0
  73. package/artifacts/contracts/registry/Registry.sol/Registry.json +289 -0
  74. package/artifacts/contracts/registry/Registry.sol/RegistryLinked.dbg.json +4 -0
  75. package/artifacts/contracts/registry/Registry.sol/RegistryLinked.json +60 -0
  76. package/contracts/components/Component.sol +62 -0
  77. package/contracts/components/IPool.sol +9 -0
  78. package/contracts/components/IProduct.sol +11 -0
  79. package/contracts/components/Pool.sol +29 -0
  80. package/contracts/components/Product.sol +65 -0
  81. package/contracts/instance/IInstance.sol +20 -0
  82. package/contracts/instance/Instance.sol +63 -0
  83. package/contracts/instance/access/Access.sol +218 -0
  84. package/contracts/instance/access/IAccess.sol +83 -0
  85. package/contracts/instance/component/ComponentModule.sol +259 -0
  86. package/contracts/instance/component/IComponent.sol +94 -0
  87. package/contracts/instance/policy/IPolicy.sol +66 -0
  88. package/contracts/instance/policy/PolicyModule.sol +106 -0
  89. package/contracts/instance/pool/IPoolModule.sol +40 -0
  90. package/contracts/instance/pool/PoolModule.sol +83 -0
  91. package/contracts/instance/product/IProductService.sol +45 -0
  92. package/contracts/instance/product/ProductService.sol +105 -0
  93. package/contracts/registry/IRegistry.sol +66 -0
  94. package/contracts/registry/Registry.sol +197 -0
  95. package/package.json +6 -6
  96. package/artifacts/contracts/Dip.sol/DIP.dbg.json +0 -4
  97. package/artifacts/contracts/Dip.sol/DIP.json +0 -338
  98. package/artifacts/contracts/Lock.sol/Lock.dbg.json +0 -4
  99. package/artifacts/contracts/Lock.sol/Lock.json +0 -74
  100. package/contracts/Dip.sol +0 -26
  101. package/contracts/Lock.sol +0 -34
@@ -0,0 +1,892 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IInstance",
4
+ "sourceName": "contracts/instance/IInstance.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": false,
11
+ "internalType": "uint256",
12
+ "name": "idx",
13
+ "type": "uint256"
14
+ },
15
+ {
16
+ "indexed": false,
17
+ "internalType": "address",
18
+ "name": "module",
19
+ "type": "address"
20
+ },
21
+ {
22
+ "indexed": false,
23
+ "internalType": "string",
24
+ "name": "comment",
25
+ "type": "string"
26
+ }
27
+ ],
28
+ "name": "LogDebug",
29
+ "type": "event"
30
+ },
31
+ {
32
+ "inputs": [],
33
+ "name": "ORACLE_OWNER_ROLE",
34
+ "outputs": [
35
+ {
36
+ "internalType": "bytes32",
37
+ "name": "role",
38
+ "type": "bytes32"
39
+ }
40
+ ],
41
+ "stateMutability": "view",
42
+ "type": "function"
43
+ },
44
+ {
45
+ "inputs": [],
46
+ "name": "POOL_OWNER_ROLE",
47
+ "outputs": [
48
+ {
49
+ "internalType": "bytes32",
50
+ "name": "role",
51
+ "type": "bytes32"
52
+ }
53
+ ],
54
+ "stateMutability": "view",
55
+ "type": "function"
56
+ },
57
+ {
58
+ "inputs": [],
59
+ "name": "PRODUCT_OWNER_ROLE",
60
+ "outputs": [
61
+ {
62
+ "internalType": "bytes32",
63
+ "name": "role",
64
+ "type": "bytes32"
65
+ }
66
+ ],
67
+ "stateMutability": "view",
68
+ "type": "function"
69
+ },
70
+ {
71
+ "inputs": [
72
+ {
73
+ "internalType": "uint256",
74
+ "name": "nftId",
75
+ "type": "uint256"
76
+ }
77
+ ],
78
+ "name": "activate",
79
+ "outputs": [],
80
+ "stateMutability": "nonpayable",
81
+ "type": "function"
82
+ },
83
+ {
84
+ "inputs": [],
85
+ "name": "components",
86
+ "outputs": [
87
+ {
88
+ "internalType": "uint256",
89
+ "name": "numberOfCompnents",
90
+ "type": "uint256"
91
+ }
92
+ ],
93
+ "stateMutability": "view",
94
+ "type": "function"
95
+ },
96
+ {
97
+ "inputs": [
98
+ {
99
+ "components": [
100
+ {
101
+ "internalType": "uint256",
102
+ "name": "nftId",
103
+ "type": "uint256"
104
+ },
105
+ {
106
+ "internalType": "uint256",
107
+ "name": "parentNftId",
108
+ "type": "uint256"
109
+ },
110
+ {
111
+ "internalType": "uint256",
112
+ "name": "objectType",
113
+ "type": "uint256"
114
+ },
115
+ {
116
+ "internalType": "address",
117
+ "name": "objectAddress",
118
+ "type": "address"
119
+ },
120
+ {
121
+ "internalType": "address",
122
+ "name": "initialOwner",
123
+ "type": "address"
124
+ }
125
+ ],
126
+ "internalType": "struct IRegistry.RegistryInfo",
127
+ "name": "productInfo",
128
+ "type": "tuple"
129
+ },
130
+ {
131
+ "internalType": "address",
132
+ "name": "applicationOwner",
133
+ "type": "address"
134
+ },
135
+ {
136
+ "internalType": "uint256",
137
+ "name": "sumInsuredAmount",
138
+ "type": "uint256"
139
+ },
140
+ {
141
+ "internalType": "uint256",
142
+ "name": "premiumAmount",
143
+ "type": "uint256"
144
+ },
145
+ {
146
+ "internalType": "uint256",
147
+ "name": "lifetime",
148
+ "type": "uint256"
149
+ },
150
+ {
151
+ "internalType": "uint256",
152
+ "name": "bundleNftId",
153
+ "type": "uint256"
154
+ }
155
+ ],
156
+ "name": "createApplication",
157
+ "outputs": [
158
+ {
159
+ "internalType": "uint256",
160
+ "name": "nftId",
161
+ "type": "uint256"
162
+ }
163
+ ],
164
+ "stateMutability": "nonpayable",
165
+ "type": "function"
166
+ },
167
+ {
168
+ "inputs": [
169
+ {
170
+ "internalType": "uint256",
171
+ "name": "nftId",
172
+ "type": "uint256"
173
+ },
174
+ {
175
+ "internalType": "address",
176
+ "name": "wallet",
177
+ "type": "address"
178
+ },
179
+ {
180
+ "internalType": "address",
181
+ "name": "token",
182
+ "type": "address"
183
+ }
184
+ ],
185
+ "name": "createPoolInfo",
186
+ "outputs": [],
187
+ "stateMutability": "nonpayable",
188
+ "type": "function"
189
+ },
190
+ {
191
+ "inputs": [
192
+ {
193
+ "internalType": "string",
194
+ "name": "roleName",
195
+ "type": "string"
196
+ }
197
+ ],
198
+ "name": "createRole",
199
+ "outputs": [
200
+ {
201
+ "internalType": "bytes32",
202
+ "name": "role",
203
+ "type": "bytes32"
204
+ }
205
+ ],
206
+ "stateMutability": "nonpayable",
207
+ "type": "function"
208
+ },
209
+ {
210
+ "inputs": [
211
+ {
212
+ "internalType": "bytes32",
213
+ "name": "role",
214
+ "type": "bytes32"
215
+ }
216
+ ],
217
+ "name": "disableRole",
218
+ "outputs": [],
219
+ "stateMutability": "nonpayable",
220
+ "type": "function"
221
+ },
222
+ {
223
+ "inputs": [
224
+ {
225
+ "internalType": "bytes32",
226
+ "name": "role",
227
+ "type": "bytes32"
228
+ }
229
+ ],
230
+ "name": "enableRole",
231
+ "outputs": [],
232
+ "stateMutability": "nonpayable",
233
+ "type": "function"
234
+ },
235
+ {
236
+ "inputs": [
237
+ {
238
+ "internalType": "uint256",
239
+ "name": "nftId",
240
+ "type": "uint256"
241
+ }
242
+ ],
243
+ "name": "getBundleNftForPolicy",
244
+ "outputs": [
245
+ {
246
+ "internalType": "uint256",
247
+ "name": "bundleNft",
248
+ "type": "uint256"
249
+ }
250
+ ],
251
+ "stateMutability": "view",
252
+ "type": "function"
253
+ },
254
+ {
255
+ "inputs": [
256
+ {
257
+ "internalType": "address",
258
+ "name": "componentAddress",
259
+ "type": "address"
260
+ }
261
+ ],
262
+ "name": "getComponentId",
263
+ "outputs": [
264
+ {
265
+ "internalType": "uint256",
266
+ "name": "id",
267
+ "type": "uint256"
268
+ }
269
+ ],
270
+ "stateMutability": "view",
271
+ "type": "function"
272
+ },
273
+ {
274
+ "inputs": [
275
+ {
276
+ "internalType": "uint256",
277
+ "name": "idx",
278
+ "type": "uint256"
279
+ }
280
+ ],
281
+ "name": "getComponentId",
282
+ "outputs": [
283
+ {
284
+ "internalType": "uint256",
285
+ "name": "id",
286
+ "type": "uint256"
287
+ }
288
+ ],
289
+ "stateMutability": "view",
290
+ "type": "function"
291
+ },
292
+ {
293
+ "inputs": [
294
+ {
295
+ "internalType": "uint256",
296
+ "name": "id",
297
+ "type": "uint256"
298
+ }
299
+ ],
300
+ "name": "getComponentInfo",
301
+ "outputs": [
302
+ {
303
+ "components": [
304
+ {
305
+ "internalType": "uint256",
306
+ "name": "nftId",
307
+ "type": "uint256"
308
+ },
309
+ {
310
+ "internalType": "enum IComponent.CState",
311
+ "name": "state",
312
+ "type": "uint8"
313
+ }
314
+ ],
315
+ "internalType": "struct IComponent.ComponentInfo",
316
+ "name": "info",
317
+ "type": "tuple"
318
+ }
319
+ ],
320
+ "stateMutability": "view",
321
+ "type": "function"
322
+ },
323
+ {
324
+ "inputs": [
325
+ {
326
+ "internalType": "uint256",
327
+ "name": "id",
328
+ "type": "uint256"
329
+ }
330
+ ],
331
+ "name": "getComponentOwner",
332
+ "outputs": [
333
+ {
334
+ "internalType": "address",
335
+ "name": "owner",
336
+ "type": "address"
337
+ }
338
+ ],
339
+ "stateMutability": "view",
340
+ "type": "function"
341
+ },
342
+ {
343
+ "inputs": [],
344
+ "name": "getComponentOwnerService",
345
+ "outputs": [
346
+ {
347
+ "internalType": "contract IComponentOwnerService",
348
+ "name": "",
349
+ "type": "address"
350
+ }
351
+ ],
352
+ "stateMutability": "view",
353
+ "type": "function"
354
+ },
355
+ {
356
+ "inputs": [],
357
+ "name": "getData",
358
+ "outputs": [
359
+ {
360
+ "internalType": "bytes",
361
+ "name": "data",
362
+ "type": "bytes"
363
+ }
364
+ ],
365
+ "stateMutability": "view",
366
+ "type": "function"
367
+ },
368
+ {
369
+ "inputs": [],
370
+ "name": "getInitialOwner",
371
+ "outputs": [
372
+ {
373
+ "internalType": "address",
374
+ "name": "initialOwner",
375
+ "type": "address"
376
+ }
377
+ ],
378
+ "stateMutability": "view",
379
+ "type": "function"
380
+ },
381
+ {
382
+ "inputs": [],
383
+ "name": "getNftId",
384
+ "outputs": [
385
+ {
386
+ "internalType": "uint256",
387
+ "name": "nftId",
388
+ "type": "uint256"
389
+ }
390
+ ],
391
+ "stateMutability": "view",
392
+ "type": "function"
393
+ },
394
+ {
395
+ "inputs": [],
396
+ "name": "getOwner",
397
+ "outputs": [
398
+ {
399
+ "internalType": "address",
400
+ "name": "owner",
401
+ "type": "address"
402
+ }
403
+ ],
404
+ "stateMutability": "view",
405
+ "type": "function"
406
+ },
407
+ {
408
+ "inputs": [],
409
+ "name": "getParentNftId",
410
+ "outputs": [
411
+ {
412
+ "internalType": "uint256",
413
+ "name": "parentNftId",
414
+ "type": "uint256"
415
+ }
416
+ ],
417
+ "stateMutability": "view",
418
+ "type": "function"
419
+ },
420
+ {
421
+ "inputs": [
422
+ {
423
+ "internalType": "uint256",
424
+ "name": "nftId",
425
+ "type": "uint256"
426
+ }
427
+ ],
428
+ "name": "getPolicyInfo",
429
+ "outputs": [
430
+ {
431
+ "components": [
432
+ {
433
+ "internalType": "uint256",
434
+ "name": "nftId",
435
+ "type": "uint256"
436
+ },
437
+ {
438
+ "internalType": "enum IPolicy.PolicyState",
439
+ "name": "state",
440
+ "type": "uint8"
441
+ },
442
+ {
443
+ "internalType": "uint256",
444
+ "name": "sumInsuredAmount",
445
+ "type": "uint256"
446
+ },
447
+ {
448
+ "internalType": "uint256",
449
+ "name": "premiumAmount",
450
+ "type": "uint256"
451
+ },
452
+ {
453
+ "internalType": "uint256",
454
+ "name": "lifetime",
455
+ "type": "uint256"
456
+ },
457
+ {
458
+ "internalType": "uint256",
459
+ "name": "createdAt",
460
+ "type": "uint256"
461
+ },
462
+ {
463
+ "internalType": "uint256",
464
+ "name": "activatedAt",
465
+ "type": "uint256"
466
+ },
467
+ {
468
+ "internalType": "uint256",
469
+ "name": "expiredAt",
470
+ "type": "uint256"
471
+ },
472
+ {
473
+ "internalType": "uint256",
474
+ "name": "closedAt",
475
+ "type": "uint256"
476
+ }
477
+ ],
478
+ "internalType": "struct IPolicy.PolicyInfo",
479
+ "name": "info",
480
+ "type": "tuple"
481
+ }
482
+ ],
483
+ "stateMutability": "view",
484
+ "type": "function"
485
+ },
486
+ {
487
+ "inputs": [
488
+ {
489
+ "internalType": "uint256",
490
+ "name": "nftId",
491
+ "type": "uint256"
492
+ }
493
+ ],
494
+ "name": "getPoolInfo",
495
+ "outputs": [
496
+ {
497
+ "components": [
498
+ {
499
+ "internalType": "uint256",
500
+ "name": "nftId",
501
+ "type": "uint256"
502
+ },
503
+ {
504
+ "internalType": "address",
505
+ "name": "wallet",
506
+ "type": "address"
507
+ },
508
+ {
509
+ "internalType": "address",
510
+ "name": "token",
511
+ "type": "address"
512
+ },
513
+ {
514
+ "internalType": "uint256",
515
+ "name": "capital",
516
+ "type": "uint256"
517
+ },
518
+ {
519
+ "internalType": "uint256",
520
+ "name": "lockedCapital",
521
+ "type": "uint256"
522
+ }
523
+ ],
524
+ "internalType": "struct IPool.PoolInfo",
525
+ "name": "info",
526
+ "type": "tuple"
527
+ }
528
+ ],
529
+ "stateMutability": "view",
530
+ "type": "function"
531
+ },
532
+ {
533
+ "inputs": [
534
+ {
535
+ "internalType": "uint256",
536
+ "name": "productNftId",
537
+ "type": "uint256"
538
+ }
539
+ ],
540
+ "name": "getPoolNftId",
541
+ "outputs": [
542
+ {
543
+ "internalType": "uint256",
544
+ "name": "poolNftId",
545
+ "type": "uint256"
546
+ }
547
+ ],
548
+ "stateMutability": "view",
549
+ "type": "function"
550
+ },
551
+ {
552
+ "inputs": [],
553
+ "name": "getProductService",
554
+ "outputs": [
555
+ {
556
+ "internalType": "contract IProductService",
557
+ "name": "",
558
+ "type": "address"
559
+ }
560
+ ],
561
+ "stateMutability": "view",
562
+ "type": "function"
563
+ },
564
+ {
565
+ "inputs": [],
566
+ "name": "getRegistry",
567
+ "outputs": [
568
+ {
569
+ "internalType": "contract IRegistry",
570
+ "name": "registry",
571
+ "type": "address"
572
+ }
573
+ ],
574
+ "stateMutability": "view",
575
+ "type": "function"
576
+ },
577
+ {
578
+ "inputs": [
579
+ {
580
+ "internalType": "uint256",
581
+ "name": "idx",
582
+ "type": "uint256"
583
+ }
584
+ ],
585
+ "name": "getRole",
586
+ "outputs": [
587
+ {
588
+ "internalType": "bytes32",
589
+ "name": "role",
590
+ "type": "bytes32"
591
+ }
592
+ ],
593
+ "stateMutability": "view",
594
+ "type": "function"
595
+ },
596
+ {
597
+ "inputs": [],
598
+ "name": "getRoleCount",
599
+ "outputs": [
600
+ {
601
+ "internalType": "uint256",
602
+ "name": "roles",
603
+ "type": "uint256"
604
+ }
605
+ ],
606
+ "stateMutability": "view",
607
+ "type": "function"
608
+ },
609
+ {
610
+ "inputs": [
611
+ {
612
+ "internalType": "string",
613
+ "name": "roleName",
614
+ "type": "string"
615
+ }
616
+ ],
617
+ "name": "getRoleForName",
618
+ "outputs": [
619
+ {
620
+ "internalType": "bytes32",
621
+ "name": "role",
622
+ "type": "bytes32"
623
+ }
624
+ ],
625
+ "stateMutability": "pure",
626
+ "type": "function"
627
+ },
628
+ {
629
+ "inputs": [
630
+ {
631
+ "internalType": "bytes32",
632
+ "name": "role",
633
+ "type": "bytes32"
634
+ }
635
+ ],
636
+ "name": "getRoleInfo",
637
+ "outputs": [
638
+ {
639
+ "components": [
640
+ {
641
+ "internalType": "bytes32",
642
+ "name": "id",
643
+ "type": "bytes32"
644
+ },
645
+ {
646
+ "internalType": "string",
647
+ "name": "name",
648
+ "type": "string"
649
+ },
650
+ {
651
+ "internalType": "bool",
652
+ "name": "isActive",
653
+ "type": "bool"
654
+ }
655
+ ],
656
+ "internalType": "struct IAccess.RoleInfo",
657
+ "name": "info",
658
+ "type": "tuple"
659
+ }
660
+ ],
661
+ "stateMutability": "view",
662
+ "type": "function"
663
+ },
664
+ {
665
+ "inputs": [
666
+ {
667
+ "internalType": "bytes32",
668
+ "name": "role",
669
+ "type": "bytes32"
670
+ },
671
+ {
672
+ "internalType": "uint256",
673
+ "name": "idx",
674
+ "type": "uint256"
675
+ }
676
+ ],
677
+ "name": "getRoleMember",
678
+ "outputs": [
679
+ {
680
+ "internalType": "address",
681
+ "name": "roleMembers",
682
+ "type": "address"
683
+ }
684
+ ],
685
+ "stateMutability": "view",
686
+ "type": "function"
687
+ },
688
+ {
689
+ "inputs": [
690
+ {
691
+ "internalType": "bytes32",
692
+ "name": "role",
693
+ "type": "bytes32"
694
+ }
695
+ ],
696
+ "name": "getRoleMemberCount",
697
+ "outputs": [
698
+ {
699
+ "internalType": "uint256",
700
+ "name": "roleMembers",
701
+ "type": "uint256"
702
+ }
703
+ ],
704
+ "stateMutability": "view",
705
+ "type": "function"
706
+ },
707
+ {
708
+ "inputs": [],
709
+ "name": "getType",
710
+ "outputs": [
711
+ {
712
+ "internalType": "uint256",
713
+ "name": "objectType",
714
+ "type": "uint256"
715
+ }
716
+ ],
717
+ "stateMutability": "view",
718
+ "type": "function"
719
+ },
720
+ {
721
+ "inputs": [
722
+ {
723
+ "internalType": "bytes32",
724
+ "name": "role",
725
+ "type": "bytes32"
726
+ },
727
+ {
728
+ "internalType": "address",
729
+ "name": "member",
730
+ "type": "address"
731
+ }
732
+ ],
733
+ "name": "grantRole",
734
+ "outputs": [],
735
+ "stateMutability": "nonpayable",
736
+ "type": "function"
737
+ },
738
+ {
739
+ "inputs": [
740
+ {
741
+ "internalType": "bytes32",
742
+ "name": "role",
743
+ "type": "bytes32"
744
+ },
745
+ {
746
+ "internalType": "address",
747
+ "name": "member",
748
+ "type": "address"
749
+ }
750
+ ],
751
+ "name": "hasRole",
752
+ "outputs": [
753
+ {
754
+ "internalType": "bool",
755
+ "name": "",
756
+ "type": "bool"
757
+ }
758
+ ],
759
+ "stateMutability": "view",
760
+ "type": "function"
761
+ },
762
+ {
763
+ "inputs": [],
764
+ "name": "isRegisterable",
765
+ "outputs": [
766
+ {
767
+ "internalType": "bool",
768
+ "name": "",
769
+ "type": "bool"
770
+ }
771
+ ],
772
+ "stateMutability": "pure",
773
+ "type": "function"
774
+ },
775
+ {
776
+ "inputs": [],
777
+ "name": "isRegistered",
778
+ "outputs": [
779
+ {
780
+ "internalType": "bool",
781
+ "name": "",
782
+ "type": "bool"
783
+ }
784
+ ],
785
+ "stateMutability": "view",
786
+ "type": "function"
787
+ },
788
+ {
789
+ "inputs": [],
790
+ "name": "register",
791
+ "outputs": [
792
+ {
793
+ "internalType": "uint256",
794
+ "name": "nftId",
795
+ "type": "uint256"
796
+ }
797
+ ],
798
+ "stateMutability": "nonpayable",
799
+ "type": "function"
800
+ },
801
+ {
802
+ "inputs": [
803
+ {
804
+ "internalType": "contract IComponentContract",
805
+ "name": "component",
806
+ "type": "address"
807
+ }
808
+ ],
809
+ "name": "registerComponent",
810
+ "outputs": [
811
+ {
812
+ "internalType": "uint256",
813
+ "name": "nftInfo",
814
+ "type": "uint256"
815
+ }
816
+ ],
817
+ "stateMutability": "nonpayable",
818
+ "type": "function"
819
+ },
820
+ {
821
+ "inputs": [
822
+ {
823
+ "internalType": "bytes32",
824
+ "name": "role",
825
+ "type": "bytes32"
826
+ },
827
+ {
828
+ "internalType": "address",
829
+ "name": "member",
830
+ "type": "address"
831
+ }
832
+ ],
833
+ "name": "revokeRole",
834
+ "outputs": [],
835
+ "stateMutability": "nonpayable",
836
+ "type": "function"
837
+ },
838
+ {
839
+ "inputs": [
840
+ {
841
+ "components": [
842
+ {
843
+ "internalType": "uint256",
844
+ "name": "nftId",
845
+ "type": "uint256"
846
+ },
847
+ {
848
+ "internalType": "enum IComponent.CState",
849
+ "name": "state",
850
+ "type": "uint8"
851
+ }
852
+ ],
853
+ "internalType": "struct IComponent.ComponentInfo",
854
+ "name": "info",
855
+ "type": "tuple"
856
+ }
857
+ ],
858
+ "name": "setComponentInfo",
859
+ "outputs": [
860
+ {
861
+ "internalType": "uint256",
862
+ "name": "componentId",
863
+ "type": "uint256"
864
+ }
865
+ ],
866
+ "stateMutability": "nonpayable",
867
+ "type": "function"
868
+ },
869
+ {
870
+ "inputs": [
871
+ {
872
+ "internalType": "uint256",
873
+ "name": "poolNftId",
874
+ "type": "uint256"
875
+ },
876
+ {
877
+ "internalType": "uint256",
878
+ "name": "policyNftId",
879
+ "type": "uint256"
880
+ }
881
+ ],
882
+ "name": "underwrite",
883
+ "outputs": [],
884
+ "stateMutability": "nonpayable",
885
+ "type": "function"
886
+ }
887
+ ],
888
+ "bytecode": "0x",
889
+ "deployedBytecode": "0x",
890
+ "linkReferences": {},
891
+ "deployedLinkReferences": {}
892
+ }