@agenticprimitives/contracts 0.1.0-alpha.2

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 (84) hide show
  1. package/AUDIT.md +67 -0
  2. package/CLAUDE.md +40 -0
  3. package/LICENSE +21 -0
  4. package/README.md +45 -0
  5. package/deployments-anvil.json +1 -0
  6. package/deployments-base-sepolia.json +1 -0
  7. package/dist/abi/AgentNameAttributeResolver.json +798 -0
  8. package/dist/abi/AgentNamePredicates.json +1 -0
  9. package/dist/abi/AgentNameRegistry.json +826 -0
  10. package/dist/abi/AgentNameUniversalResolver.json +222 -0
  11. package/dist/abi/AgentProfilePredicates.json +1 -0
  12. package/dist/abi/AgentProfileResolver.json +1044 -0
  13. package/dist/abi/AgentRelationship.json +583 -0
  14. package/dist/abi/AgentRelationshipPredicates.json +1 -0
  15. package/dist/abi/AgenticGovernance.json +259 -0
  16. package/dist/abi/AllowedMethodsEnforcer.json +108 -0
  17. package/dist/abi/AllowedTargetsEnforcer.json +103 -0
  18. package/dist/abi/ApprovedHashRegistry.json +114 -0
  19. package/dist/abi/AttributeStorage.json +557 -0
  20. package/dist/abi/CaveatEnforcerBase.json +130 -0
  21. package/dist/abi/GovernanceManaged.json +43 -0
  22. package/dist/abi/IAttributeReader.json +98 -0
  23. package/dist/abi/ICaveatEnforcer.json +98 -0
  24. package/dist/abi/IDelegationManager.json +211 -0
  25. package/dist/abi/IERC7579Module.json +34 -0
  26. package/dist/abi/IERC7579ModuleLifecycle.json +60 -0
  27. package/dist/abi/IGovernanceView.json +34 -0
  28. package/dist/abi/MultiSendCallOnly.json +29 -0
  29. package/dist/abi/MultiSendCallOnlyHarness.json +42 -0
  30. package/dist/abi/OntologyTermRegistry.json +397 -0
  31. package/dist/abi/P256Verifier.json +1 -0
  32. package/dist/abi/PermissionlessSubregistry.json +207 -0
  33. package/dist/abi/RelationshipTypeRegistry.json +455 -0
  34. package/dist/abi/ShapeRegistry.json +627 -0
  35. package/dist/abi/SmartAgentModuleTypes.json +1 -0
  36. package/dist/abi/TimestampEnforcer.json +108 -0
  37. package/dist/abi/ValueEnforcer.json +103 -0
  38. package/dist/abi/WebAuthnLib.json +1 -0
  39. package/dist/abi/index.d.ts +35 -0
  40. package/dist/abi/index.js +35 -0
  41. package/package.json +48 -0
  42. package/spec.md +52 -0
  43. package/src/AgentAccount.sol +1374 -0
  44. package/src/AgentAccountFactory.sol +274 -0
  45. package/src/ApprovedHashRegistry.sol +57 -0
  46. package/src/IAgentAccount.sol +138 -0
  47. package/src/SmartAgentPaymaster.sol +281 -0
  48. package/src/UniversalSignatureValidator.sol +136 -0
  49. package/src/agency/DelegationManager.sol +374 -0
  50. package/src/agency/ICaveatEnforcer.sol +62 -0
  51. package/src/agency/IDelegationManager.sol +69 -0
  52. package/src/custody/CustodyPolicy.sol +892 -0
  53. package/src/custody/IERC7579Module.sol +60 -0
  54. package/src/enforcers/AllowedMethodsEnforcer.AUDIT.md +51 -0
  55. package/src/enforcers/AllowedMethodsEnforcer.sol +48 -0
  56. package/src/enforcers/AllowedTargetsEnforcer.AUDIT.md +49 -0
  57. package/src/enforcers/AllowedTargetsEnforcer.sol +44 -0
  58. package/src/enforcers/CaveatEnforcerBase.sol +19 -0
  59. package/src/enforcers/QuorumEnforcer.AUDIT.md +71 -0
  60. package/src/enforcers/QuorumEnforcer.sol +191 -0
  61. package/src/enforcers/TimestampEnforcer.AUDIT.md +50 -0
  62. package/src/enforcers/TimestampEnforcer.sol +43 -0
  63. package/src/enforcers/ValueEnforcer.AUDIT.md +51 -0
  64. package/src/enforcers/ValueEnforcer.sol +41 -0
  65. package/src/governance/AgenticGovernance.sol +140 -0
  66. package/src/governance/GovernanceManaged.sol +75 -0
  67. package/src/governance/IGovernance.sol +15 -0
  68. package/src/identity/AgentProfilePredicates.sol +40 -0
  69. package/src/identity/AgentProfileResolver.sol +194 -0
  70. package/src/libraries/MultiSendCallOnly.sol +95 -0
  71. package/src/libraries/P256Verifier.sol +47 -0
  72. package/src/libraries/SignatureSlotRecovery.sol +196 -0
  73. package/src/libraries/WebAuthnLib.sol +164 -0
  74. package/src/naming/AgentNameAttributeResolver.sol +95 -0
  75. package/src/naming/AgentNamePredicates.sol +74 -0
  76. package/src/naming/AgentNameRegistry.sol +362 -0
  77. package/src/naming/AgentNameUniversalResolver.sol +210 -0
  78. package/src/naming/PermissionlessSubregistry.sol +98 -0
  79. package/src/ontology/AttributeStorage.sol +289 -0
  80. package/src/ontology/OntologyTermRegistry.sol +146 -0
  81. package/src/ontology/ShapeRegistry.sol +240 -0
  82. package/src/relationships/AgentRelationship.sol +289 -0
  83. package/src/relationships/AgentRelationshipPredicates.sol +44 -0
  84. package/src/relationships/RelationshipTypeRegistry.sol +143 -0
@@ -0,0 +1,798 @@
1
+ [
2
+ {
3
+ "type": "constructor",
4
+ "inputs": [
5
+ {
6
+ "name": "registry",
7
+ "type": "address",
8
+ "internalType": "contract AgentNameRegistry"
9
+ },
10
+ {
11
+ "name": "ontology",
12
+ "type": "address",
13
+ "internalType": "address"
14
+ }
15
+ ],
16
+ "stateMutability": "nonpayable"
17
+ },
18
+ {
19
+ "type": "function",
20
+ "name": "DT_ADDRESS_ARR_PUB",
21
+ "inputs": [],
22
+ "outputs": [
23
+ {
24
+ "name": "",
25
+ "type": "uint8",
26
+ "internalType": "uint8"
27
+ }
28
+ ],
29
+ "stateMutability": "pure"
30
+ },
31
+ {
32
+ "type": "function",
33
+ "name": "DT_ADDRESS_PUB",
34
+ "inputs": [],
35
+ "outputs": [
36
+ {
37
+ "name": "",
38
+ "type": "uint8",
39
+ "internalType": "uint8"
40
+ }
41
+ ],
42
+ "stateMutability": "pure"
43
+ },
44
+ {
45
+ "type": "function",
46
+ "name": "DT_BOOL_PUB",
47
+ "inputs": [],
48
+ "outputs": [
49
+ {
50
+ "name": "",
51
+ "type": "uint8",
52
+ "internalType": "uint8"
53
+ }
54
+ ],
55
+ "stateMutability": "pure"
56
+ },
57
+ {
58
+ "type": "function",
59
+ "name": "DT_BYTES32_ARR_PUB",
60
+ "inputs": [],
61
+ "outputs": [
62
+ {
63
+ "name": "",
64
+ "type": "uint8",
65
+ "internalType": "uint8"
66
+ }
67
+ ],
68
+ "stateMutability": "pure"
69
+ },
70
+ {
71
+ "type": "function",
72
+ "name": "DT_BYTES32_PUB",
73
+ "inputs": [],
74
+ "outputs": [
75
+ {
76
+ "name": "",
77
+ "type": "uint8",
78
+ "internalType": "uint8"
79
+ }
80
+ ],
81
+ "stateMutability": "pure"
82
+ },
83
+ {
84
+ "type": "function",
85
+ "name": "DT_STRING_ARR_PUB",
86
+ "inputs": [],
87
+ "outputs": [
88
+ {
89
+ "name": "",
90
+ "type": "uint8",
91
+ "internalType": "uint8"
92
+ }
93
+ ],
94
+ "stateMutability": "pure"
95
+ },
96
+ {
97
+ "type": "function",
98
+ "name": "DT_STRING_PUB",
99
+ "inputs": [],
100
+ "outputs": [
101
+ {
102
+ "name": "",
103
+ "type": "uint8",
104
+ "internalType": "uint8"
105
+ }
106
+ ],
107
+ "stateMutability": "pure"
108
+ },
109
+ {
110
+ "type": "function",
111
+ "name": "DT_UINT256_PUB",
112
+ "inputs": [],
113
+ "outputs": [
114
+ {
115
+ "name": "",
116
+ "type": "uint8",
117
+ "internalType": "uint8"
118
+ }
119
+ ],
120
+ "stateMutability": "pure"
121
+ },
122
+ {
123
+ "type": "function",
124
+ "name": "ONTOLOGY",
125
+ "inputs": [],
126
+ "outputs": [
127
+ {
128
+ "name": "",
129
+ "type": "address",
130
+ "internalType": "contract OntologyTermRegistry"
131
+ }
132
+ ],
133
+ "stateMutability": "view"
134
+ },
135
+ {
136
+ "type": "function",
137
+ "name": "REGISTRY",
138
+ "inputs": [],
139
+ "outputs": [
140
+ {
141
+ "name": "",
142
+ "type": "address",
143
+ "internalType": "contract AgentNameRegistry"
144
+ }
145
+ ],
146
+ "stateMutability": "view"
147
+ },
148
+ {
149
+ "type": "function",
150
+ "name": "allSubjects",
151
+ "inputs": [],
152
+ "outputs": [
153
+ {
154
+ "name": "",
155
+ "type": "bytes32[]",
156
+ "internalType": "bytes32[]"
157
+ }
158
+ ],
159
+ "stateMutability": "view"
160
+ },
161
+ {
162
+ "type": "function",
163
+ "name": "datatypeOf",
164
+ "inputs": [
165
+ {
166
+ "name": "subject",
167
+ "type": "bytes32",
168
+ "internalType": "bytes32"
169
+ },
170
+ {
171
+ "name": "predicate",
172
+ "type": "bytes32",
173
+ "internalType": "bytes32"
174
+ }
175
+ ],
176
+ "outputs": [
177
+ {
178
+ "name": "",
179
+ "type": "uint8",
180
+ "internalType": "uint8"
181
+ }
182
+ ],
183
+ "stateMutability": "view"
184
+ },
185
+ {
186
+ "type": "function",
187
+ "name": "getAddress",
188
+ "inputs": [
189
+ {
190
+ "name": "subject",
191
+ "type": "bytes32",
192
+ "internalType": "bytes32"
193
+ },
194
+ {
195
+ "name": "predicate",
196
+ "type": "bytes32",
197
+ "internalType": "bytes32"
198
+ }
199
+ ],
200
+ "outputs": [
201
+ {
202
+ "name": "",
203
+ "type": "address",
204
+ "internalType": "address"
205
+ }
206
+ ],
207
+ "stateMutability": "view"
208
+ },
209
+ {
210
+ "type": "function",
211
+ "name": "getAddressArr",
212
+ "inputs": [
213
+ {
214
+ "name": "subject",
215
+ "type": "bytes32",
216
+ "internalType": "bytes32"
217
+ },
218
+ {
219
+ "name": "predicate",
220
+ "type": "bytes32",
221
+ "internalType": "bytes32"
222
+ }
223
+ ],
224
+ "outputs": [
225
+ {
226
+ "name": "",
227
+ "type": "address[]",
228
+ "internalType": "address[]"
229
+ }
230
+ ],
231
+ "stateMutability": "view"
232
+ },
233
+ {
234
+ "type": "function",
235
+ "name": "getBool",
236
+ "inputs": [
237
+ {
238
+ "name": "subject",
239
+ "type": "bytes32",
240
+ "internalType": "bytes32"
241
+ },
242
+ {
243
+ "name": "predicate",
244
+ "type": "bytes32",
245
+ "internalType": "bytes32"
246
+ }
247
+ ],
248
+ "outputs": [
249
+ {
250
+ "name": "",
251
+ "type": "bool",
252
+ "internalType": "bool"
253
+ }
254
+ ],
255
+ "stateMutability": "view"
256
+ },
257
+ {
258
+ "type": "function",
259
+ "name": "getBytes32",
260
+ "inputs": [
261
+ {
262
+ "name": "subject",
263
+ "type": "bytes32",
264
+ "internalType": "bytes32"
265
+ },
266
+ {
267
+ "name": "predicate",
268
+ "type": "bytes32",
269
+ "internalType": "bytes32"
270
+ }
271
+ ],
272
+ "outputs": [
273
+ {
274
+ "name": "",
275
+ "type": "bytes32",
276
+ "internalType": "bytes32"
277
+ }
278
+ ],
279
+ "stateMutability": "view"
280
+ },
281
+ {
282
+ "type": "function",
283
+ "name": "getBytes32Arr",
284
+ "inputs": [
285
+ {
286
+ "name": "subject",
287
+ "type": "bytes32",
288
+ "internalType": "bytes32"
289
+ },
290
+ {
291
+ "name": "predicate",
292
+ "type": "bytes32",
293
+ "internalType": "bytes32"
294
+ }
295
+ ],
296
+ "outputs": [
297
+ {
298
+ "name": "",
299
+ "type": "bytes32[]",
300
+ "internalType": "bytes32[]"
301
+ }
302
+ ],
303
+ "stateMutability": "view"
304
+ },
305
+ {
306
+ "type": "function",
307
+ "name": "getString",
308
+ "inputs": [
309
+ {
310
+ "name": "subject",
311
+ "type": "bytes32",
312
+ "internalType": "bytes32"
313
+ },
314
+ {
315
+ "name": "predicate",
316
+ "type": "bytes32",
317
+ "internalType": "bytes32"
318
+ }
319
+ ],
320
+ "outputs": [
321
+ {
322
+ "name": "",
323
+ "type": "string",
324
+ "internalType": "string"
325
+ }
326
+ ],
327
+ "stateMutability": "view"
328
+ },
329
+ {
330
+ "type": "function",
331
+ "name": "getStringArr",
332
+ "inputs": [
333
+ {
334
+ "name": "subject",
335
+ "type": "bytes32",
336
+ "internalType": "bytes32"
337
+ },
338
+ {
339
+ "name": "predicate",
340
+ "type": "bytes32",
341
+ "internalType": "bytes32"
342
+ }
343
+ ],
344
+ "outputs": [
345
+ {
346
+ "name": "",
347
+ "type": "string[]",
348
+ "internalType": "string[]"
349
+ }
350
+ ],
351
+ "stateMutability": "view"
352
+ },
353
+ {
354
+ "type": "function",
355
+ "name": "getUint",
356
+ "inputs": [
357
+ {
358
+ "name": "subject",
359
+ "type": "bytes32",
360
+ "internalType": "bytes32"
361
+ },
362
+ {
363
+ "name": "predicate",
364
+ "type": "bytes32",
365
+ "internalType": "bytes32"
366
+ }
367
+ ],
368
+ "outputs": [
369
+ {
370
+ "name": "",
371
+ "type": "uint256",
372
+ "internalType": "uint256"
373
+ }
374
+ ],
375
+ "stateMutability": "view"
376
+ },
377
+ {
378
+ "type": "function",
379
+ "name": "isSet",
380
+ "inputs": [
381
+ {
382
+ "name": "subject",
383
+ "type": "bytes32",
384
+ "internalType": "bytes32"
385
+ },
386
+ {
387
+ "name": "predicate",
388
+ "type": "bytes32",
389
+ "internalType": "bytes32"
390
+ }
391
+ ],
392
+ "outputs": [
393
+ {
394
+ "name": "",
395
+ "type": "bool",
396
+ "internalType": "bool"
397
+ }
398
+ ],
399
+ "stateMutability": "view"
400
+ },
401
+ {
402
+ "type": "function",
403
+ "name": "predicatesOf",
404
+ "inputs": [
405
+ {
406
+ "name": "subject",
407
+ "type": "bytes32",
408
+ "internalType": "bytes32"
409
+ }
410
+ ],
411
+ "outputs": [
412
+ {
413
+ "name": "",
414
+ "type": "bytes32[]",
415
+ "internalType": "bytes32[]"
416
+ }
417
+ ],
418
+ "stateMutability": "view"
419
+ },
420
+ {
421
+ "type": "function",
422
+ "name": "setAddressArrayAttribute",
423
+ "inputs": [
424
+ {
425
+ "name": "node",
426
+ "type": "bytes32",
427
+ "internalType": "bytes32"
428
+ },
429
+ {
430
+ "name": "predicate",
431
+ "type": "bytes32",
432
+ "internalType": "bytes32"
433
+ },
434
+ {
435
+ "name": "values",
436
+ "type": "address[]",
437
+ "internalType": "address[]"
438
+ }
439
+ ],
440
+ "outputs": [],
441
+ "stateMutability": "nonpayable"
442
+ },
443
+ {
444
+ "type": "function",
445
+ "name": "setAddressAttribute",
446
+ "inputs": [
447
+ {
448
+ "name": "node",
449
+ "type": "bytes32",
450
+ "internalType": "bytes32"
451
+ },
452
+ {
453
+ "name": "predicate",
454
+ "type": "bytes32",
455
+ "internalType": "bytes32"
456
+ },
457
+ {
458
+ "name": "value",
459
+ "type": "address",
460
+ "internalType": "address"
461
+ }
462
+ ],
463
+ "outputs": [],
464
+ "stateMutability": "nonpayable"
465
+ },
466
+ {
467
+ "type": "function",
468
+ "name": "setBoolAttribute",
469
+ "inputs": [
470
+ {
471
+ "name": "node",
472
+ "type": "bytes32",
473
+ "internalType": "bytes32"
474
+ },
475
+ {
476
+ "name": "predicate",
477
+ "type": "bytes32",
478
+ "internalType": "bytes32"
479
+ },
480
+ {
481
+ "name": "value",
482
+ "type": "bool",
483
+ "internalType": "bool"
484
+ }
485
+ ],
486
+ "outputs": [],
487
+ "stateMutability": "nonpayable"
488
+ },
489
+ {
490
+ "type": "function",
491
+ "name": "setBytes32ArrayAttribute",
492
+ "inputs": [
493
+ {
494
+ "name": "node",
495
+ "type": "bytes32",
496
+ "internalType": "bytes32"
497
+ },
498
+ {
499
+ "name": "predicate",
500
+ "type": "bytes32",
501
+ "internalType": "bytes32"
502
+ },
503
+ {
504
+ "name": "values",
505
+ "type": "bytes32[]",
506
+ "internalType": "bytes32[]"
507
+ }
508
+ ],
509
+ "outputs": [],
510
+ "stateMutability": "nonpayable"
511
+ },
512
+ {
513
+ "type": "function",
514
+ "name": "setBytes32Attribute",
515
+ "inputs": [
516
+ {
517
+ "name": "node",
518
+ "type": "bytes32",
519
+ "internalType": "bytes32"
520
+ },
521
+ {
522
+ "name": "predicate",
523
+ "type": "bytes32",
524
+ "internalType": "bytes32"
525
+ },
526
+ {
527
+ "name": "value",
528
+ "type": "bytes32",
529
+ "internalType": "bytes32"
530
+ }
531
+ ],
532
+ "outputs": [],
533
+ "stateMutability": "nonpayable"
534
+ },
535
+ {
536
+ "type": "function",
537
+ "name": "setStringArrayAttribute",
538
+ "inputs": [
539
+ {
540
+ "name": "node",
541
+ "type": "bytes32",
542
+ "internalType": "bytes32"
543
+ },
544
+ {
545
+ "name": "predicate",
546
+ "type": "bytes32",
547
+ "internalType": "bytes32"
548
+ },
549
+ {
550
+ "name": "values",
551
+ "type": "string[]",
552
+ "internalType": "string[]"
553
+ }
554
+ ],
555
+ "outputs": [],
556
+ "stateMutability": "nonpayable"
557
+ },
558
+ {
559
+ "type": "function",
560
+ "name": "setStringAttribute",
561
+ "inputs": [
562
+ {
563
+ "name": "node",
564
+ "type": "bytes32",
565
+ "internalType": "bytes32"
566
+ },
567
+ {
568
+ "name": "predicate",
569
+ "type": "bytes32",
570
+ "internalType": "bytes32"
571
+ },
572
+ {
573
+ "name": "value",
574
+ "type": "string",
575
+ "internalType": "string"
576
+ }
577
+ ],
578
+ "outputs": [],
579
+ "stateMutability": "nonpayable"
580
+ },
581
+ {
582
+ "type": "function",
583
+ "name": "setUintAttribute",
584
+ "inputs": [
585
+ {
586
+ "name": "node",
587
+ "type": "bytes32",
588
+ "internalType": "bytes32"
589
+ },
590
+ {
591
+ "name": "predicate",
592
+ "type": "bytes32",
593
+ "internalType": "bytes32"
594
+ },
595
+ {
596
+ "name": "value",
597
+ "type": "uint256",
598
+ "internalType": "uint256"
599
+ }
600
+ ],
601
+ "outputs": [],
602
+ "stateMutability": "nonpayable"
603
+ },
604
+ {
605
+ "type": "function",
606
+ "name": "subjectCount",
607
+ "inputs": [],
608
+ "outputs": [
609
+ {
610
+ "name": "",
611
+ "type": "uint256",
612
+ "internalType": "uint256"
613
+ }
614
+ ],
615
+ "stateMutability": "view"
616
+ },
617
+ {
618
+ "type": "function",
619
+ "name": "subjectVersion",
620
+ "inputs": [
621
+ {
622
+ "name": "subject",
623
+ "type": "bytes32",
624
+ "internalType": "bytes32"
625
+ }
626
+ ],
627
+ "outputs": [
628
+ {
629
+ "name": "",
630
+ "type": "uint64",
631
+ "internalType": "uint64"
632
+ }
633
+ ],
634
+ "stateMutability": "view"
635
+ },
636
+ {
637
+ "type": "function",
638
+ "name": "unsetAttribute",
639
+ "inputs": [
640
+ {
641
+ "name": "node",
642
+ "type": "bytes32",
643
+ "internalType": "bytes32"
644
+ },
645
+ {
646
+ "name": "predicate",
647
+ "type": "bytes32",
648
+ "internalType": "bytes32"
649
+ }
650
+ ],
651
+ "outputs": [],
652
+ "stateMutability": "nonpayable"
653
+ },
654
+ {
655
+ "type": "function",
656
+ "name": "updatedAt",
657
+ "inputs": [
658
+ {
659
+ "name": "subject",
660
+ "type": "bytes32",
661
+ "internalType": "bytes32"
662
+ },
663
+ {
664
+ "name": "predicate",
665
+ "type": "bytes32",
666
+ "internalType": "bytes32"
667
+ }
668
+ ],
669
+ "outputs": [
670
+ {
671
+ "name": "",
672
+ "type": "uint64",
673
+ "internalType": "uint64"
674
+ }
675
+ ],
676
+ "stateMutability": "view"
677
+ },
678
+ {
679
+ "type": "event",
680
+ "name": "AttributeAppended",
681
+ "inputs": [
682
+ {
683
+ "name": "subject",
684
+ "type": "bytes32",
685
+ "indexed": true,
686
+ "internalType": "bytes32"
687
+ },
688
+ {
689
+ "name": "predicate",
690
+ "type": "bytes32",
691
+ "indexed": true,
692
+ "internalType": "bytes32"
693
+ },
694
+ {
695
+ "name": "datatype",
696
+ "type": "uint8",
697
+ "indexed": false,
698
+ "internalType": "uint8"
699
+ },
700
+ {
701
+ "name": "version",
702
+ "type": "uint64",
703
+ "indexed": false,
704
+ "internalType": "uint64"
705
+ }
706
+ ],
707
+ "anonymous": false
708
+ },
709
+ {
710
+ "type": "event",
711
+ "name": "AttributeSet",
712
+ "inputs": [
713
+ {
714
+ "name": "subject",
715
+ "type": "bytes32",
716
+ "indexed": true,
717
+ "internalType": "bytes32"
718
+ },
719
+ {
720
+ "name": "predicate",
721
+ "type": "bytes32",
722
+ "indexed": true,
723
+ "internalType": "bytes32"
724
+ },
725
+ {
726
+ "name": "datatype",
727
+ "type": "uint8",
728
+ "indexed": false,
729
+ "internalType": "uint8"
730
+ },
731
+ {
732
+ "name": "version",
733
+ "type": "uint64",
734
+ "indexed": false,
735
+ "internalType": "uint64"
736
+ }
737
+ ],
738
+ "anonymous": false
739
+ },
740
+ {
741
+ "type": "event",
742
+ "name": "AttributeUnset",
743
+ "inputs": [
744
+ {
745
+ "name": "subject",
746
+ "type": "bytes32",
747
+ "indexed": true,
748
+ "internalType": "bytes32"
749
+ },
750
+ {
751
+ "name": "predicate",
752
+ "type": "bytes32",
753
+ "indexed": true,
754
+ "internalType": "bytes32"
755
+ },
756
+ {
757
+ "name": "version",
758
+ "type": "uint64",
759
+ "indexed": false,
760
+ "internalType": "uint64"
761
+ }
762
+ ],
763
+ "anonymous": false
764
+ },
765
+ {
766
+ "type": "event",
767
+ "name": "SubjectFirstSeen",
768
+ "inputs": [
769
+ {
770
+ "name": "subject",
771
+ "type": "bytes32",
772
+ "indexed": true,
773
+ "internalType": "bytes32"
774
+ }
775
+ ],
776
+ "anonymous": false
777
+ },
778
+ {
779
+ "type": "error",
780
+ "name": "AttributeNotSet",
781
+ "inputs": []
782
+ },
783
+ {
784
+ "type": "error",
785
+ "name": "NodeNotFound",
786
+ "inputs": []
787
+ },
788
+ {
789
+ "type": "error",
790
+ "name": "NotAuthorized",
791
+ "inputs": []
792
+ },
793
+ {
794
+ "type": "error",
795
+ "name": "PredicateNotActive",
796
+ "inputs": []
797
+ }
798
+ ]