@latticexyz/world-modules 2.0.0-main-fd10cff6 → 2.0.0-main-fa74f25e

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 (87) hide show
  1. package/out/ArrayLib.sol/ArrayLib.json +255 -255
  2. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +244 -220
  3. package/out/CallboundDelegations.sol/CallboundDelegations.json +2595 -2595
  4. package/out/DelegationControl.sol/DelegationControl.json +125 -101
  5. package/out/Hooks.sol/Hooks.json +45 -45
  6. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +64 -64
  7. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +53 -53
  8. package/out/IBaseWorld.sol/IBaseWorld.json +130 -85
  9. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +51 -51
  10. package/out/ICoreSystem.sol/ICoreSystem.json +6 -6
  11. package/out/IDelegationControl.sol/IDelegationControl.json +50 -26
  12. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +20 -20
  13. package/out/ISystemHook.sol/ISystemHook.json +171 -131
  14. package/out/IUniqueEntitySystem.sol/IUniqueEntitySystem.json +13 -13
  15. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +157 -109
  16. package/out/IWorldErrors.sol/IWorldErrors.json +345 -255
  17. package/out/IWorldKernel.sol/IWorldCall.json +294 -254
  18. package/out/IWorldKernel.sol/IWorldKernel.json +321 -258
  19. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +279 -253
  20. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +201 -201
  21. package/out/KeysInTable.sol/KeysInTable.json +10668 -10668
  22. package/out/KeysInTableHook.sol/KeysInTableHook.json +862 -862
  23. package/out/KeysInTableModule.sol/KeysInTableModule.json +573 -549
  24. package/out/KeysWithValue.sol/KeysWithValue.json +3828 -3828
  25. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1011 -1011
  26. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +462 -438
  27. package/out/Module.sol/Module.json +109 -85
  28. package/out/ResourceIds.sol/ResourceIds.json +45 -45
  29. package/out/Schema.sol/SchemaInstance.json +30 -30
  30. package/out/Schema.sol/SchemaLib.json +30 -30
  31. package/out/SchemaType.sol/SchemaType.json +276 -276
  32. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +339 -315
  33. package/out/StoreHook.sol/StoreHook.json +358 -358
  34. package/out/StoreHooks.sol/StoreHooks.json +45 -45
  35. package/out/System.sol/System.json +84 -41
  36. package/out/Tables.sol/Tables.json +73 -73
  37. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +148 -124
  38. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +1986 -1986
  39. package/out/UniqueEntity.sol/UniqueEntity.json +1402 -1402
  40. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +366 -342
  41. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +138 -102
  42. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +2722 -2722
  43. package/out/WorldContext.sol/WorldContextConsumer.json +774 -677
  44. package/out/WorldContext.sol/WorldContextProvider.json +737 -677
  45. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +777 -765
  46. package/out/WorldResourceId.sol/WorldResourceIdLib.json +777 -765
  47. package/out/constants.sol/constants.json +115 -115
  48. package/out/getKeysInTable.sol/getKeysInTable.json +564 -564
  49. package/out/getKeysWithValue.sol/getKeysWithValue.json +264 -264
  50. package/out/getTargetTableId.sol/getTargetTableId.json +163 -163
  51. package/out/getUniqueEntity.sol/getUniqueEntity.json +88 -88
  52. package/out/hasKey.sol/hasKey.json +130 -130
  53. package/out/index.sol/index.json +53 -53
  54. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +202 -157
  55. package/out/query.sol/query.json +1154 -1154
  56. package/out/revertWithBytes.sol/revertWithBytes.json +51 -51
  57. package/out/src/Bytes.sol/Bytes.json +1332 -1332
  58. package/out/src/FieldLayout.sol/FieldLayoutInstance.json +697 -697
  59. package/out/src/FieldLayout.sol/FieldLayoutLib.json +697 -697
  60. package/out/src/IStore.sol/IStore.json +53 -53
  61. package/out/src/IWorldKernel.sol/IWorldCall.json +307 -267
  62. package/out/src/IWorldKernel.sol/IWorldKernel.json +334 -271
  63. package/out/src/IWorldKernel.sol/IWorldModuleInstallation.json +292 -266
  64. package/out/src/Memory.sol/Memory.json +89 -89
  65. package/out/src/PackedCounter.sol/PackedCounterInstance.json +923 -923
  66. package/out/src/PackedCounter.sol/PackedCounterLib.json +923 -923
  67. package/out/src/ResourceId.sol/ResourceIdInstance.json +112 -112
  68. package/out/src/ResourceId.sol/ResourceIdLib.json +112 -112
  69. package/out/src/Schema.sol/SchemaInstance.json +787 -787
  70. package/out/src/Schema.sol/SchemaLib.json +787 -787
  71. package/out/src/Slice.sol/SliceInstance.json +429 -429
  72. package/out/src/Slice.sol/SliceLib.json +429 -429
  73. package/out/src/StoreCore.sol/StoreCore.json +4455 -4455
  74. package/out/src/StoreCore.sol/StoreCoreInternal.json +4455 -4455
  75. package/out/src/StoreSwitch.sol/StoreSwitch.json +2454 -2454
  76. package/out/src/WorldContext.sol/WorldContextConsumer.json +780 -683
  77. package/out/src/WorldContext.sol/WorldContextProvider.json +743 -683
  78. package/out/src/WorldResourceId.sol/WorldResourceIdInstance.json +777 -765
  79. package/out/src/WorldResourceId.sol/WorldResourceIdLib.json +777 -765
  80. package/out/storeHookTypes.sol/storeHookTypes.json +115 -115
  81. package/out/storeResourceTypes.sol/storeResourceTypes.json +12 -12
  82. package/out/tables/ResourceIds.sol/ResourceIds.json +1746 -1746
  83. package/out/tables/Tables.sol/Tables.json +7288 -7288
  84. package/out/tightcoder/EncodeArray.sol/EncodeArray.json +3246 -3246
  85. package/out/types.sol/types.json +39 -39
  86. package/out/worldResourceTypes.sol/worldResourceTypes.json +87 -87
  87. package/package.json +8 -8
@@ -81,7 +81,7 @@
81
81
  "onBeforeCallSystem(address,bytes32,bytes)": "c3323031",
82
82
  "supportsInterface(bytes4)": "01ffc9a7"
83
83
  },
84
- "rawMetadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onAfterCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onBeforeCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.\",\"params\":{\"interfaceID\":\"The interface identifier, as specified in ERC-165.\"},\"returns\":{\"_0\":\"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"supportsInterface(bytes4)\":{\"notice\":\"Query if a contract implements an interface.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/runner/work/mud/mud/packages/world/src/ISystemHook.sol\":\"ISystemHook\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"/home/runner/work/mud/mud/packages/world/src/IERC165.sol\":{\"keccak256\":\"0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5\",\"dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y\"]},\"/home/runner/work/mud/mud/packages/world/src/ISystemHook.sol\":{\"keccak256\":\"0x6bfa168ec3b03cd09b5e0c658c0faab40379b4093935744c0a7297ac7a2fcec8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac7990b2cf63e95cde3396e248fee9e280235cfd11dc7a350865e0f3ffca59ba\",\"dweb:/ipfs/QmZKkGqGKgr32HX4fVu7vNH34JbyzHczJ9H5SLjsbrRDtp\"]},\"/home/runner/work/mud/mud/packages/world/src/WorldResourceId.sol\":{\"keccak256\":\"0x979e418af3d0d3a1866240bed58d2792f0718cc1803a1476ec8c93af5577cae3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c68cfe48ce67fe83f4b000c954891821d1fae31bfdd36de37a12637c8a1864f7\",\"dweb:/ipfs/QmUX9tHSMTeScbiacKX2T16gLV6aPKDU1Q3eDiNxqmVNa1\"]},\"/home/runner/work/mud/mud/packages/world/src/constants.sol\":{\"keccak256\":\"0x36c772d51a5da46fcddf88831194d6d331083b8c8246fa79107c4b697c258d77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d2656374c398a2b075d5f26d2ab2c3ea315c99912e52d8030d50f5f8fdda8ac\",\"dweb:/ipfs/QmSG8uJr2ZbFVnht5cTG6xb6XbB6f3kvnznks4BdeAMYET\"]},\"/home/runner/work/mud/mud/packages/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x88f844f2c43757c819c8f140b30254f07c3484e12cce573879d43b2ee6a23f8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://55a9095094c2b7b1043020681696380cfc3cffd1f264a70bacb44fccd0fc0a8a\",\"dweb:/ipfs/QmfPdLPr9hfV8X8yfHhEf2HmEWAnA4d1c6EHEjHMdeM7ML\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xb36724e0369ad053579ec04b9b51707dd8dcc4a72b38404cebdf018ce40bf202\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8745e1632b7ee94f128600837a36ae53fabaf73c506b0c6d1cae70ea2e9b086\",\"dweb:/ipfs/QmXuMqmybWjEPqWEx91DTM7KAUyxAmDcsj7riBfCfA427N\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x4a61aefe72d6035b1e9aca7841aab44ebd26f8706bdbb447f382046fa94753b6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f715743739e4f8f8a98d78397025a92299ecb3b5dde88cc53bc1ab72bf531fa6\",\"dweb:/ipfs/QmVsYAupGWZUemE4t6xjLqztGHadQ8cyo9E4mT5ZDKUmTs\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0xb2c27c7b8f974f1e3c70dd82c92f35f5bbd2887e16afe454e6dbc38300a51feb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6cbdbcc95835f67030eebdebeaf0bfd6faa612381179e7f7be8b9d3c00b20878\",\"dweb:/ipfs/QmNeZU5MmRQqhcLxN6BA2BQvgEst8yg67F4VQoPJEEK6kg\"]}},\"version\":1}",
84
+ "rawMetadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onAfterCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"msgSender\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"onBeforeCallSystem\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceID\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface defining system hooks for external functionality. Provides pre and post hooks that can be triggered before and after a system call respectively. This interface adheres to the ERC-165 standard for determining interface support.\",\"kind\":\"dev\",\"methods\":{\"onAfterCallSystem(address,bytes32,bytes)\":{\"details\":\"Provides the ability to add custom logic or checks after a system call completes.\",\"params\":{\"callData\":\"Data that was sent as part of the system call.\",\"msgSender\":\"The original sender of the system call.\",\"systemId\":\"The identifier for the system that was called.\"}},\"onBeforeCallSystem(address,bytes32,bytes)\":{\"details\":\"Provides the ability to add custom logic or checks before a system is invoked.\",\"params\":{\"callData\":\"Data being sent as part of the system call.\",\"msgSender\":\"The original sender of the system call.\",\"systemId\":\"The identifier for the system being called.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Interface identification is specified in ERC-165. This function uses less than 30,000 gas.\",\"params\":{\"interfaceID\":\"The interface identifier, as specified in ERC-165.\"},\"returns\":{\"_0\":\"True if the contract implements `interfaceID` and `interfaceID` is not 0xffffffff, false otherwise.\"}}},\"title\":\"ISystemHook\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"onAfterCallSystem(address,bytes32,bytes)\":{\"notice\":\"Executes after a system call.\"},\"onBeforeCallSystem(address,bytes32,bytes)\":{\"notice\":\"Executes before a system call.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Query if a contract implements an interface.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/runner/work/mud/mud/packages/world/src/ISystemHook.sol\":\"ISystemHook\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"/home/runner/work/mud/mud/packages/world/src/IERC165.sol\":{\"keccak256\":\"0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5\",\"dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y\"]},\"/home/runner/work/mud/mud/packages/world/src/ISystemHook.sol\":{\"keccak256\":\"0xb2114b6b66c0e7d8304d9e1d06aa1d0731f089daa6a0584e6cf744d9c48cf4db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ebbb172970b106dd4ae5a6d5e417ac75cad7529d2b94c1601e10b886d0edf510\",\"dweb:/ipfs/QmPGn4F92hjkFch6Jh2NB37EYLLfstw6JxJKUZjXBFqGCw\"]},\"/home/runner/work/mud/mud/packages/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb\",\"dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK\"]},\"/home/runner/work/mud/mud/packages/world/src/constants.sol\":{\"keccak256\":\"0x36c772d51a5da46fcddf88831194d6d331083b8c8246fa79107c4b697c258d77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d2656374c398a2b075d5f26d2ab2c3ea315c99912e52d8030d50f5f8fdda8ac\",\"dweb:/ipfs/QmSG8uJr2ZbFVnht5cTG6xb6XbB6f3kvnznks4BdeAMYET\"]},\"/home/runner/work/mud/mud/packages/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2\",\"dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xb36724e0369ad053579ec04b9b51707dd8dcc4a72b38404cebdf018ce40bf202\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8745e1632b7ee94f128600837a36ae53fabaf73c506b0c6d1cae70ea2e9b086\",\"dweb:/ipfs/QmXuMqmybWjEPqWEx91DTM7KAUyxAmDcsj7riBfCfA427N\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x4a61aefe72d6035b1e9aca7841aab44ebd26f8706bdbb447f382046fa94753b6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f715743739e4f8f8a98d78397025a92299ecb3b5dde88cc53bc1ab72bf531fa6\",\"dweb:/ipfs/QmVsYAupGWZUemE4t6xjLqztGHadQ8cyo9E4mT5ZDKUmTs\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0xb2c27c7b8f974f1e3c70dd82c92f35f5bbd2887e16afe454e6dbc38300a51feb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6cbdbcc95835f67030eebdebeaf0bfd6faa612381179e7f7be8b9d3c00b20878\",\"dweb:/ipfs/QmNeZU5MmRQqhcLxN6BA2BQvgEst8yg67F4VQoPJEEK6kg\"]}},\"version\":1}",
85
85
  "metadata": {
86
86
  "compiler": {
87
87
  "version": "0.8.21+commit.d9974bed"
@@ -156,6 +156,22 @@
156
156
  "devdoc": {
157
157
  "kind": "dev",
158
158
  "methods": {
159
+ "onAfterCallSystem(address,bytes32,bytes)": {
160
+ "details": "Provides the ability to add custom logic or checks after a system call completes.",
161
+ "params": {
162
+ "callData": "Data that was sent as part of the system call.",
163
+ "msgSender": "The original sender of the system call.",
164
+ "systemId": "The identifier for the system that was called."
165
+ }
166
+ },
167
+ "onBeforeCallSystem(address,bytes32,bytes)": {
168
+ "details": "Provides the ability to add custom logic or checks before a system is invoked.",
169
+ "params": {
170
+ "callData": "Data being sent as part of the system call.",
171
+ "msgSender": "The original sender of the system call.",
172
+ "systemId": "The identifier for the system being called."
173
+ }
174
+ },
159
175
  "supportsInterface(bytes4)": {
160
176
  "details": "Interface identification is specified in ERC-165. This function uses less than 30,000 gas.",
161
177
  "params": {
@@ -171,6 +187,12 @@
171
187
  "userdoc": {
172
188
  "kind": "user",
173
189
  "methods": {
190
+ "onAfterCallSystem(address,bytes32,bytes)": {
191
+ "notice": "Executes after a system call."
192
+ },
193
+ "onBeforeCallSystem(address,bytes32,bytes)": {
194
+ "notice": "Executes before a system call."
195
+ },
174
196
  "supportsInterface(bytes4)": {
175
197
  "notice": "Query if a contract implements an interface."
176
198
  }
@@ -206,18 +228,18 @@
206
228
  "license": "MIT"
207
229
  },
208
230
  "/home/runner/work/mud/mud/packages/world/src/ISystemHook.sol": {
209
- "keccak256": "0x6bfa168ec3b03cd09b5e0c658c0faab40379b4093935744c0a7297ac7a2fcec8",
231
+ "keccak256": "0xb2114b6b66c0e7d8304d9e1d06aa1d0731f089daa6a0584e6cf744d9c48cf4db",
210
232
  "urls": [
211
- "bzz-raw://ac7990b2cf63e95cde3396e248fee9e280235cfd11dc7a350865e0f3ffca59ba",
212
- "dweb:/ipfs/QmZKkGqGKgr32HX4fVu7vNH34JbyzHczJ9H5SLjsbrRDtp"
233
+ "bzz-raw://ebbb172970b106dd4ae5a6d5e417ac75cad7529d2b94c1601e10b886d0edf510",
234
+ "dweb:/ipfs/QmPGn4F92hjkFch6Jh2NB37EYLLfstw6JxJKUZjXBFqGCw"
213
235
  ],
214
236
  "license": "MIT"
215
237
  },
216
238
  "/home/runner/work/mud/mud/packages/world/src/WorldResourceId.sol": {
217
- "keccak256": "0x979e418af3d0d3a1866240bed58d2792f0718cc1803a1476ec8c93af5577cae3",
239
+ "keccak256": "0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417",
218
240
  "urls": [
219
- "bzz-raw://c68cfe48ce67fe83f4b000c954891821d1fae31bfdd36de37a12637c8a1864f7",
220
- "dweb:/ipfs/QmUX9tHSMTeScbiacKX2T16gLV6aPKDU1Q3eDiNxqmVNa1"
241
+ "bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb",
242
+ "dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK"
221
243
  ],
222
244
  "license": "MIT"
223
245
  },
@@ -230,10 +252,10 @@
230
252
  "license": "MIT"
231
253
  },
232
254
  "/home/runner/work/mud/mud/packages/world/src/worldResourceTypes.sol": {
233
- "keccak256": "0x88f844f2c43757c819c8f140b30254f07c3484e12cce573879d43b2ee6a23f8b",
255
+ "keccak256": "0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746",
234
256
  "urls": [
235
- "bzz-raw://55a9095094c2b7b1043020681696380cfc3cffd1f264a70bacb44fccd0fc0a8a",
236
- "dweb:/ipfs/QmfPdLPr9hfV8X8yfHhEf2HmEWAnA4d1c6EHEjHMdeM7ML"
257
+ "bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2",
258
+ "dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9"
237
259
  ],
238
260
  "license": "MIT"
239
261
  },
@@ -266,7 +288,7 @@
266
288
  },
267
289
  "ast": {
268
290
  "absolutePath": "/home/runner/work/mud/mud/packages/world/src/ISystemHook.sol",
269
- "id": 23027,
291
+ "id": 23031,
270
292
  "exportedSymbols": {
271
293
  "ERC165_INTERFACE_ID": [
272
294
  22927
@@ -275,17 +297,17 @@
275
297
  22937
276
298
  ],
277
299
  "ISystemHook": [
278
- 23026
300
+ 23030
279
301
  ],
280
302
  "ResourceId": [
281
- 26198
303
+ 26238
282
304
  ],
283
305
  "SYSTEM_HOOK_INTERFACE_ID": [
284
- 23003
306
+ 23004
285
307
  ]
286
308
  },
287
309
  "nodeType": "SourceUnit",
288
- "src": "32:606:36",
310
+ "src": "32:1704:36",
289
311
  "nodes": [
290
312
  {
291
313
  "id": 22987,
@@ -307,7 +329,7 @@
307
329
  "absolutePath": "/home/runner/work/mud/mud/packages/world/src/IERC165.sol",
308
330
  "file": "./IERC165.sol",
309
331
  "nameLocation": "-1:-1:-1",
310
- "scope": 23027,
332
+ "scope": 23031,
311
333
  "sourceUnit": 22938,
312
334
  "symbolAliases": [
313
335
  {
@@ -345,8 +367,8 @@
345
367
  "absolutePath": "/home/runner/work/mud/mud/packages/world/src/WorldResourceId.sol",
346
368
  "file": "./WorldResourceId.sol",
347
369
  "nameLocation": "-1:-1:-1",
348
- "scope": 23027,
349
- "sourceUnit": 23720,
370
+ "scope": 23031,
371
+ "sourceUnit": 23759,
350
372
  "symbolAliases": [
351
373
  {
352
374
  "foreign": {
@@ -354,7 +376,7 @@
354
376
  "name": "ResourceId",
355
377
  "nodeType": "Identifier",
356
378
  "overloadedDeclarations": [],
357
- "referencedDeclaration": 26198,
379
+ "referencedDeclaration": 26238,
358
380
  "src": "130:10:36",
359
381
  "typeDescriptions": {}
360
382
  },
@@ -364,15 +386,15 @@
364
386
  "unitAlias": ""
365
387
  },
366
388
  {
367
- "id": 23003,
389
+ "id": 23004,
368
390
  "nodeType": "VariableDeclaration",
369
- "src": "243:149:36",
391
+ "src": "378:149:36",
370
392
  "nodes": [],
371
393
  "constant": true,
372
394
  "mutability": "constant",
373
395
  "name": "SYSTEM_HOOK_INTERFACE_ID",
374
- "nameLocation": "259:24:36",
375
- "scope": 23027,
396
+ "nameLocation": "394:24:36",
397
+ "scope": 23031,
376
398
  "stateVariable": false,
377
399
  "storageLocation": "default",
378
400
  "typeDescriptions": {
@@ -380,10 +402,10 @@
380
402
  "typeString": "bytes4"
381
403
  },
382
404
  "typeName": {
383
- "id": 22993,
405
+ "id": 22994,
384
406
  "name": "bytes4",
385
407
  "nodeType": "ElementaryTypeName",
386
- "src": "243:6:36",
408
+ "src": "378:6:36",
387
409
  "typeDescriptions": {
388
410
  "typeIdentifier": "t_bytes4",
389
411
  "typeString": "bytes4"
@@ -394,7 +416,7 @@
394
416
  "typeIdentifier": "t_bytes4",
395
417
  "typeString": "bytes4"
396
418
  },
397
- "id": 23002,
419
+ "id": 23003,
398
420
  "isConstant": false,
399
421
  "isLValue": false,
400
422
  "isPure": true,
@@ -404,7 +426,7 @@
404
426
  "typeIdentifier": "t_bytes4",
405
427
  "typeString": "bytes4"
406
428
  },
407
- "id": 23000,
429
+ "id": 23001,
408
430
  "isConstant": false,
409
431
  "isLValue": false,
410
432
  "isPure": true,
@@ -412,41 +434,41 @@
412
434
  "leftExpression": {
413
435
  "expression": {
414
436
  "expression": {
415
- "id": 22994,
437
+ "id": 22995,
416
438
  "name": "ISystemHook",
417
439
  "nodeType": "Identifier",
418
440
  "overloadedDeclarations": [],
419
- "referencedDeclaration": 23026,
420
- "src": "286:11:36",
441
+ "referencedDeclaration": 23030,
442
+ "src": "421:11:36",
421
443
  "typeDescriptions": {
422
- "typeIdentifier": "t_type$_t_contract$_ISystemHook_$23026_$",
444
+ "typeIdentifier": "t_type$_t_contract$_ISystemHook_$23030_$",
423
445
  "typeString": "type(contract ISystemHook)"
424
446
  }
425
447
  },
426
- "id": 22995,
448
+ "id": 22996,
427
449
  "isConstant": false,
428
450
  "isLValue": false,
429
451
  "isPure": true,
430
452
  "lValueRequested": false,
431
- "memberLocation": "298:18:36",
453
+ "memberLocation": "433:18:36",
432
454
  "memberName": "onBeforeCallSystem",
433
455
  "nodeType": "MemberAccess",
434
- "referencedDeclaration": 23015,
435
- "src": "286:30:36",
456
+ "referencedDeclaration": 23018,
457
+ "src": "421:30:36",
436
458
  "typeDescriptions": {
437
- "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_userDefinedValueType$_ResourceId_$26198_$_t_bytes_memory_ptr_$returns$__$",
459
+ "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_userDefinedValueType$_ResourceId_$26238_$_t_bytes_memory_ptr_$returns$__$",
438
460
  "typeString": "function ISystemHook.onBeforeCallSystem(address,ResourceId,bytes memory)"
439
461
  }
440
462
  },
441
- "id": 22996,
463
+ "id": 22997,
442
464
  "isConstant": false,
443
465
  "isLValue": false,
444
466
  "isPure": true,
445
467
  "lValueRequested": false,
446
- "memberLocation": "317:8:36",
468
+ "memberLocation": "452:8:36",
447
469
  "memberName": "selector",
448
470
  "nodeType": "MemberAccess",
449
- "src": "286:39:36",
471
+ "src": "421:39:36",
450
472
  "typeDescriptions": {
451
473
  "typeIdentifier": "t_bytes4",
452
474
  "typeString": "bytes4"
@@ -457,47 +479,47 @@
457
479
  "rightExpression": {
458
480
  "expression": {
459
481
  "expression": {
460
- "id": 22997,
482
+ "id": 22998,
461
483
  "name": "ISystemHook",
462
484
  "nodeType": "Identifier",
463
485
  "overloadedDeclarations": [],
464
- "referencedDeclaration": 23026,
465
- "src": "330:11:36",
486
+ "referencedDeclaration": 23030,
487
+ "src": "465:11:36",
466
488
  "typeDescriptions": {
467
- "typeIdentifier": "t_type$_t_contract$_ISystemHook_$23026_$",
489
+ "typeIdentifier": "t_type$_t_contract$_ISystemHook_$23030_$",
468
490
  "typeString": "type(contract ISystemHook)"
469
491
  }
470
492
  },
471
- "id": 22998,
493
+ "id": 22999,
472
494
  "isConstant": false,
473
495
  "isLValue": false,
474
496
  "isPure": true,
475
497
  "lValueRequested": false,
476
- "memberLocation": "342:17:36",
498
+ "memberLocation": "477:17:36",
477
499
  "memberName": "onAfterCallSystem",
478
500
  "nodeType": "MemberAccess",
479
- "referencedDeclaration": 23025,
480
- "src": "330:29:36",
501
+ "referencedDeclaration": 23029,
502
+ "src": "465:29:36",
481
503
  "typeDescriptions": {
482
- "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_userDefinedValueType$_ResourceId_$26198_$_t_bytes_memory_ptr_$returns$__$",
504
+ "typeIdentifier": "t_function_declaration_nonpayable$_t_address_$_t_userDefinedValueType$_ResourceId_$26238_$_t_bytes_memory_ptr_$returns$__$",
483
505
  "typeString": "function ISystemHook.onAfterCallSystem(address,ResourceId,bytes memory)"
484
506
  }
485
507
  },
486
- "id": 22999,
508
+ "id": 23000,
487
509
  "isConstant": false,
488
510
  "isLValue": false,
489
511
  "isPure": true,
490
512
  "lValueRequested": false,
491
- "memberLocation": "360:8:36",
513
+ "memberLocation": "495:8:36",
492
514
  "memberName": "selector",
493
515
  "nodeType": "MemberAccess",
494
- "src": "330:38:36",
516
+ "src": "465:38:36",
495
517
  "typeDescriptions": {
496
518
  "typeIdentifier": "t_bytes4",
497
519
  "typeString": "bytes4"
498
520
  }
499
521
  },
500
- "src": "286:82:36",
522
+ "src": "421:82:36",
501
523
  "typeDescriptions": {
502
524
  "typeIdentifier": "t_bytes4",
503
525
  "typeString": "bytes4"
@@ -506,18 +528,18 @@
506
528
  "nodeType": "BinaryOperation",
507
529
  "operator": "^",
508
530
  "rightExpression": {
509
- "id": 23001,
531
+ "id": 23002,
510
532
  "name": "ERC165_INTERFACE_ID",
511
533
  "nodeType": "Identifier",
512
534
  "overloadedDeclarations": [],
513
535
  "referencedDeclaration": 22927,
514
- "src": "373:19:36",
536
+ "src": "508:19:36",
515
537
  "typeDescriptions": {
516
538
  "typeIdentifier": "t_bytes4",
517
539
  "typeString": "bytes4"
518
540
  }
519
541
  },
520
- "src": "286:106:36",
542
+ "src": "421:106:36",
521
543
  "typeDescriptions": {
522
544
  "typeIdentifier": "t_bytes4",
523
545
  "typeString": "bytes4"
@@ -526,34 +548,40 @@
526
548
  "visibility": "internal"
527
549
  },
528
550
  {
529
- "id": 23026,
551
+ "id": 23030,
530
552
  "nodeType": "ContractDefinition",
531
- "src": "395:242:36",
553
+ "src": "811:924:36",
532
554
  "nodes": [
533
555
  {
534
- "id": 23015,
556
+ "id": 23018,
535
557
  "nodeType": "FunctionDefinition",
536
- "src": "432:100:36",
558
+ "src": "1185:100:36",
537
559
  "nodes": [],
560
+ "documentation": {
561
+ "id": 23008,
562
+ "nodeType": "StructuredDocumentation",
563
+ "src": "848:334:36",
564
+ "text": " @notice Executes before a system call.\n @dev Provides the ability to add custom logic or checks before a system is invoked.\n @param msgSender The original sender of the system call.\n @param systemId The identifier for the system being called.\n @param callData Data being sent as part of the system call."
565
+ },
538
566
  "functionSelector": "c3323031",
539
567
  "implemented": false,
540
568
  "kind": "function",
541
569
  "modifiers": [],
542
570
  "name": "onBeforeCallSystem",
543
- "nameLocation": "441:18:36",
571
+ "nameLocation": "1194:18:36",
544
572
  "parameters": {
545
- "id": 23013,
573
+ "id": 23016,
546
574
  "nodeType": "ParameterList",
547
575
  "parameters": [
548
576
  {
549
577
  "constant": false,
550
- "id": 23007,
578
+ "id": 23010,
551
579
  "mutability": "mutable",
552
580
  "name": "msgSender",
553
- "nameLocation": "468:9:36",
581
+ "nameLocation": "1221:9:36",
554
582
  "nodeType": "VariableDeclaration",
555
- "scope": 23015,
556
- "src": "460:17:36",
583
+ "scope": 23018,
584
+ "src": "1213:17:36",
557
585
  "stateVariable": false,
558
586
  "storageLocation": "default",
559
587
  "typeDescriptions": {
@@ -561,10 +589,10 @@
561
589
  "typeString": "address"
562
590
  },
563
591
  "typeName": {
564
- "id": 23006,
592
+ "id": 23009,
565
593
  "name": "address",
566
594
  "nodeType": "ElementaryTypeName",
567
- "src": "460:7:36",
595
+ "src": "1213:7:36",
568
596
  "stateMutability": "nonpayable",
569
597
  "typeDescriptions": {
570
598
  "typeIdentifier": "t_address",
@@ -575,36 +603,36 @@
575
603
  },
576
604
  {
577
605
  "constant": false,
578
- "id": 23010,
606
+ "id": 23013,
579
607
  "mutability": "mutable",
580
608
  "name": "systemId",
581
- "nameLocation": "490:8:36",
609
+ "nameLocation": "1243:8:36",
582
610
  "nodeType": "VariableDeclaration",
583
- "scope": 23015,
584
- "src": "479:19:36",
611
+ "scope": 23018,
612
+ "src": "1232:19:36",
585
613
  "stateVariable": false,
586
614
  "storageLocation": "default",
587
615
  "typeDescriptions": {
588
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26198",
616
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
589
617
  "typeString": "ResourceId"
590
618
  },
591
619
  "typeName": {
592
- "id": 23009,
620
+ "id": 23012,
593
621
  "nodeType": "UserDefinedTypeName",
594
622
  "pathNode": {
595
- "id": 23008,
623
+ "id": 23011,
596
624
  "name": "ResourceId",
597
625
  "nameLocations": [
598
- "479:10:36"
626
+ "1232:10:36"
599
627
  ],
600
628
  "nodeType": "IdentifierPath",
601
- "referencedDeclaration": 26198,
602
- "src": "479:10:36"
629
+ "referencedDeclaration": 26238,
630
+ "src": "1232:10:36"
603
631
  },
604
- "referencedDeclaration": 26198,
605
- "src": "479:10:36",
632
+ "referencedDeclaration": 26238,
633
+ "src": "1232:10:36",
606
634
  "typeDescriptions": {
607
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26198",
635
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
608
636
  "typeString": "ResourceId"
609
637
  }
610
638
  },
@@ -612,13 +640,13 @@
612
640
  },
613
641
  {
614
642
  "constant": false,
615
- "id": 23012,
643
+ "id": 23015,
616
644
  "mutability": "mutable",
617
645
  "name": "callData",
618
- "nameLocation": "513:8:36",
646
+ "nameLocation": "1266:8:36",
619
647
  "nodeType": "VariableDeclaration",
620
- "scope": 23015,
621
- "src": "500:21:36",
648
+ "scope": 23018,
649
+ "src": "1253:21:36",
622
650
  "stateVariable": false,
623
651
  "storageLocation": "memory",
624
652
  "typeDescriptions": {
@@ -626,10 +654,10 @@
626
654
  "typeString": "bytes"
627
655
  },
628
656
  "typeName": {
629
- "id": 23011,
657
+ "id": 23014,
630
658
  "name": "bytes",
631
659
  "nodeType": "ElementaryTypeName",
632
- "src": "500:5:36",
660
+ "src": "1253:5:36",
633
661
  "typeDescriptions": {
634
662
  "typeIdentifier": "t_bytes_storage_ptr",
635
663
  "typeString": "bytes"
@@ -638,43 +666,49 @@
638
666
  "visibility": "internal"
639
667
  }
640
668
  ],
641
- "src": "459:63:36"
669
+ "src": "1212:63:36"
642
670
  },
643
671
  "returnParameters": {
644
- "id": 23014,
672
+ "id": 23017,
645
673
  "nodeType": "ParameterList",
646
674
  "parameters": [],
647
- "src": "531:0:36"
675
+ "src": "1284:0:36"
648
676
  },
649
- "scope": 23026,
677
+ "scope": 23030,
650
678
  "stateMutability": "nonpayable",
651
679
  "virtual": false,
652
680
  "visibility": "external"
653
681
  },
654
682
  {
655
- "id": 23025,
683
+ "id": 23029,
656
684
  "nodeType": "FunctionDefinition",
657
- "src": "536:99:36",
685
+ "src": "1634:99:36",
658
686
  "nodes": [],
687
+ "documentation": {
688
+ "id": 23019,
689
+ "nodeType": "StructuredDocumentation",
690
+ "src": "1289:342:36",
691
+ "text": " @notice Executes after a system call.\n @dev Provides the ability to add custom logic or checks after a system call completes.\n @param msgSender The original sender of the system call.\n @param systemId The identifier for the system that was called.\n @param callData Data that was sent as part of the system call."
692
+ },
659
693
  "functionSelector": "973d8f99",
660
694
  "implemented": false,
661
695
  "kind": "function",
662
696
  "modifiers": [],
663
697
  "name": "onAfterCallSystem",
664
- "nameLocation": "545:17:36",
698
+ "nameLocation": "1643:17:36",
665
699
  "parameters": {
666
- "id": 23023,
700
+ "id": 23027,
667
701
  "nodeType": "ParameterList",
668
702
  "parameters": [
669
703
  {
670
704
  "constant": false,
671
- "id": 23017,
705
+ "id": 23021,
672
706
  "mutability": "mutable",
673
707
  "name": "msgSender",
674
- "nameLocation": "571:9:36",
708
+ "nameLocation": "1669:9:36",
675
709
  "nodeType": "VariableDeclaration",
676
- "scope": 23025,
677
- "src": "563:17:36",
710
+ "scope": 23029,
711
+ "src": "1661:17:36",
678
712
  "stateVariable": false,
679
713
  "storageLocation": "default",
680
714
  "typeDescriptions": {
@@ -682,10 +716,10 @@
682
716
  "typeString": "address"
683
717
  },
684
718
  "typeName": {
685
- "id": 23016,
719
+ "id": 23020,
686
720
  "name": "address",
687
721
  "nodeType": "ElementaryTypeName",
688
- "src": "563:7:36",
722
+ "src": "1661:7:36",
689
723
  "stateMutability": "nonpayable",
690
724
  "typeDescriptions": {
691
725
  "typeIdentifier": "t_address",
@@ -696,36 +730,36 @@
696
730
  },
697
731
  {
698
732
  "constant": false,
699
- "id": 23020,
733
+ "id": 23024,
700
734
  "mutability": "mutable",
701
735
  "name": "systemId",
702
- "nameLocation": "593:8:36",
736
+ "nameLocation": "1691:8:36",
703
737
  "nodeType": "VariableDeclaration",
704
- "scope": 23025,
705
- "src": "582:19:36",
738
+ "scope": 23029,
739
+ "src": "1680:19:36",
706
740
  "stateVariable": false,
707
741
  "storageLocation": "default",
708
742
  "typeDescriptions": {
709
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26198",
743
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
710
744
  "typeString": "ResourceId"
711
745
  },
712
746
  "typeName": {
713
- "id": 23019,
747
+ "id": 23023,
714
748
  "nodeType": "UserDefinedTypeName",
715
749
  "pathNode": {
716
- "id": 23018,
750
+ "id": 23022,
717
751
  "name": "ResourceId",
718
752
  "nameLocations": [
719
- "582:10:36"
753
+ "1680:10:36"
720
754
  ],
721
755
  "nodeType": "IdentifierPath",
722
- "referencedDeclaration": 26198,
723
- "src": "582:10:36"
756
+ "referencedDeclaration": 26238,
757
+ "src": "1680:10:36"
724
758
  },
725
- "referencedDeclaration": 26198,
726
- "src": "582:10:36",
759
+ "referencedDeclaration": 26238,
760
+ "src": "1680:10:36",
727
761
  "typeDescriptions": {
728
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26198",
762
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
729
763
  "typeString": "ResourceId"
730
764
  }
731
765
  },
@@ -733,13 +767,13 @@
733
767
  },
734
768
  {
735
769
  "constant": false,
736
- "id": 23022,
770
+ "id": 23026,
737
771
  "mutability": "mutable",
738
772
  "name": "callData",
739
- "nameLocation": "616:8:36",
773
+ "nameLocation": "1714:8:36",
740
774
  "nodeType": "VariableDeclaration",
741
- "scope": 23025,
742
- "src": "603:21:36",
775
+ "scope": 23029,
776
+ "src": "1701:21:36",
743
777
  "stateVariable": false,
744
778
  "storageLocation": "memory",
745
779
  "typeDescriptions": {
@@ -747,10 +781,10 @@
747
781
  "typeString": "bytes"
748
782
  },
749
783
  "typeName": {
750
- "id": 23021,
784
+ "id": 23025,
751
785
  "name": "bytes",
752
786
  "nodeType": "ElementaryTypeName",
753
- "src": "603:5:36",
787
+ "src": "1701:5:36",
754
788
  "typeDescriptions": {
755
789
  "typeIdentifier": "t_bytes_storage_ptr",
756
790
  "typeString": "bytes"
@@ -759,15 +793,15 @@
759
793
  "visibility": "internal"
760
794
  }
761
795
  ],
762
- "src": "562:63:36"
796
+ "src": "1660:63:36"
763
797
  },
764
798
  "returnParameters": {
765
- "id": 23024,
799
+ "id": 23028,
766
800
  "nodeType": "ParameterList",
767
801
  "parameters": [],
768
- "src": "634:0:36"
802
+ "src": "1732:0:36"
769
803
  },
770
- "scope": 23026,
804
+ "scope": 23030,
771
805
  "stateMutability": "nonpayable",
772
806
  "virtual": false,
773
807
  "visibility": "external"
@@ -777,31 +811,37 @@
777
811
  "baseContracts": [
778
812
  {
779
813
  "baseName": {
780
- "id": 23004,
814
+ "id": 23006,
781
815
  "name": "IERC165",
782
816
  "nameLocations": [
783
- "420:7:36"
817
+ "836:7:36"
784
818
  ],
785
819
  "nodeType": "IdentifierPath",
786
820
  "referencedDeclaration": 22937,
787
- "src": "420:7:36"
821
+ "src": "836:7:36"
788
822
  },
789
- "id": 23005,
823
+ "id": 23007,
790
824
  "nodeType": "InheritanceSpecifier",
791
- "src": "420:7:36"
825
+ "src": "836:7:36"
792
826
  }
793
827
  ],
794
828
  "canonicalName": "ISystemHook",
795
829
  "contractDependencies": [],
796
830
  "contractKind": "interface",
831
+ "documentation": {
832
+ "id": 23005,
833
+ "nodeType": "StructuredDocumentation",
834
+ "src": "530:280:36",
835
+ "text": " @title ISystemHook\n @dev Interface defining system hooks for external functionality.\n Provides pre and post hooks that can be triggered before and after a system call respectively.\n This interface adheres to the ERC-165 standard for determining interface support."
836
+ },
797
837
  "fullyImplemented": false,
798
838
  "linearizedBaseContracts": [
799
- 23026,
839
+ 23030,
800
840
  22937
801
841
  ],
802
842
  "name": "ISystemHook",
803
- "nameLocation": "405:11:36",
804
- "scope": 23027,
843
+ "nameLocation": "821:11:36",
844
+ "scope": 23031,
805
845
  "usedErrors": [],
806
846
  "usedEvents": []
807
847
  }