UNPKG

@river-build/generated

Version:

## How to generate contract types

1 lines 8.53 kB
{"abi":[{"type":"error","name":"CheckOperationsLimitReaced","inputs":[{"name":"limit","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidCheckOperationIndex","inputs":[{"name":"operationIndex","type":"uint8","internalType":"uint8"},{"name":"checkOperationsLength","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InvalidLeftOperationIndex","inputs":[{"name":"leftOperationIndex","type":"uint8","internalType":"uint8"},{"name":"currentOperationIndex","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InvalidLogicalOperationIndex","inputs":[{"name":"operationIndex","type":"uint8","internalType":"uint8"},{"name":"logicalOperationsLength","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InvalidOperationType","inputs":[{"name":"opType","type":"uint8","internalType":"enum IRuleEntitlementBase.CombinedOperationType"}]},{"type":"error","name":"InvalidRightOperationIndex","inputs":[{"name":"rightOperationIndex","type":"uint8","internalType":"uint8"},{"name":"currentOperationIndex","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"LogicalOperationLimitReached","inputs":[{"name":"limit","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"OperationsLimitReached","inputs":[{"name":"limit","type":"uint256","internalType":"uint256"}]}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"limit\",\"type\":\"uint256\"}],\"name\":\"CheckOperationsLimitReaced\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"operationIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"checkOperationsLength\",\"type\":\"uint8\"}],\"name\":\"InvalidCheckOperationIndex\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"leftOperationIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"currentOperationIndex\",\"type\":\"uint8\"}],\"name\":\"InvalidLeftOperationIndex\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"operationIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"logicalOperationsLength\",\"type\":\"uint8\"}],\"name\":\"InvalidLogicalOperationIndex\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"enum IRuleEntitlementBase.CombinedOperationType\",\"name\":\"opType\",\"type\":\"uint8\"}],\"name\":\"InvalidOperationType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"rightOperationIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"currentOperationIndex\",\"type\":\"uint8\"}],\"name\":\"InvalidRightOperationIndex\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"limit\",\"type\":\"uint256\"}],\"name\":\"LogicalOperationLimitReached\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"limit\",\"type\":\"uint256\"}],\"name\":\"OperationsLimitReached\",\"type\":\"error\"}],\"devdoc\":{\"details\":\"This contract manages entitlement rules based on blockchain operations. The contract maintains a tree-like data structure to combine various types of operations. The tree is implemented as a dynamic array of 'Operation' structs, and is built in post-order fashion. Post-order Tree Structure: In a post-order binary tree, children nodes must be added before their respective parent nodes. The 'LogicalOperation' nodes refer to their child nodes via indices in the 'operations' array. As new LogicalOperation nodes are added, they can only reference existing nodes in the 'operations' array, ensuring a valid post-order tree structure.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"RuleEntitlement\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/src/spaces/entitlements/rule/IRuleEntitlement.sol\":\"IRuleEntitlementBase\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"appendCBOR\":false,\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/=node_modules/@openzeppelin/\",\":@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/\",\":@prb/math/=node_modules/@prb/math/src/\",\":@prb/test/=node_modules/@prb/test/src/\",\":@river-build/diamond/=node_modules/@river-build/diamond/\",\":@solidity/=node_modules/crypto-lib/src/\",\":account-abstraction/=node_modules/account-abstraction/contracts/\",\":crypto-lib/=node_modules/crypto-lib/src/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":solady/=node_modules/solady/src/\"]},\"sources\":{\"contracts/src/spaces/entitlements/IEntitlement.sol\":{\"keccak256\":\"0x81712a4b9127000ba341966d99395917dcb4b1305eadeddd1e1ad4e562587fdd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://df0fcc9d7ed7489786684f5fa8375b277146969021f96f6a9feb81cb39176eca\",\"dweb:/ipfs/QmbxXXeXe6AzXUL8cSoABMx2E2QbRAK2uJXd8TRnDuKSJ8\"]},\"contracts/src/spaces/entitlements/rule/IRuleEntitlement.sol\":{\"keccak256\":\"0x362d73e7b5a9626ffb3c76ebd7c41cae6240ce0a8d2ec401df345814a39b303b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c750b186885d1af5cda10755c8443629b270d18b221c1054a7e9344adbea7ce4\",\"dweb:/ipfs/QmcwkJjGj8PGy43KRRh2c4ggcjBVD65XDsoq8H5LozTeN2\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"limit","type":"uint256"}],"type":"error","name":"CheckOperationsLimitReaced"},{"inputs":[{"internalType":"uint8","name":"operationIndex","type":"uint8"},{"internalType":"uint8","name":"checkOperationsLength","type":"uint8"}],"type":"error","name":"InvalidCheckOperationIndex"},{"inputs":[{"internalType":"uint8","name":"leftOperationIndex","type":"uint8"},{"internalType":"uint8","name":"currentOperationIndex","type":"uint8"}],"type":"error","name":"InvalidLeftOperationIndex"},{"inputs":[{"internalType":"uint8","name":"operationIndex","type":"uint8"},{"internalType":"uint8","name":"logicalOperationsLength","type":"uint8"}],"type":"error","name":"InvalidLogicalOperationIndex"},{"inputs":[{"internalType":"enum IRuleEntitlementBase.CombinedOperationType","name":"opType","type":"uint8"}],"type":"error","name":"InvalidOperationType"},{"inputs":[{"internalType":"uint8","name":"rightOperationIndex","type":"uint8"},{"internalType":"uint8","name":"currentOperationIndex","type":"uint8"}],"type":"error","name":"InvalidRightOperationIndex"},{"inputs":[{"internalType":"uint256","name":"limit","type":"uint256"}],"type":"error","name":"LogicalOperationLimitReached"},{"inputs":[{"internalType":"uint256","name":"limit","type":"uint256"}],"type":"error","name":"OperationsLimitReached"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/=node_modules/@openzeppelin/","@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/","@prb/math/=node_modules/@prb/math/src/","@prb/test/=node_modules/@prb/test/src/","@river-build/diamond/=node_modules/@river-build/diamond/","@solidity/=node_modules/crypto-lib/src/","account-abstraction/=node_modules/account-abstraction/contracts/","crypto-lib/=node_modules/crypto-lib/src/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","hardhat-deploy/=node_modules/hardhat-deploy/","solady/=node_modules/solady/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"none","appendCBOR":false},"compilationTarget":{"contracts/src/spaces/entitlements/rule/IRuleEntitlement.sol":"IRuleEntitlementBase"},"evmVersion":"paris","libraries":{}},"sources":{"contracts/src/spaces/entitlements/IEntitlement.sol":{"keccak256":"0x81712a4b9127000ba341966d99395917dcb4b1305eadeddd1e1ad4e562587fdd","urls":["bzz-raw://df0fcc9d7ed7489786684f5fa8375b277146969021f96f6a9feb81cb39176eca","dweb:/ipfs/QmbxXXeXe6AzXUL8cSoABMx2E2QbRAK2uJXd8TRnDuKSJ8"],"license":"MIT"},"contracts/src/spaces/entitlements/rule/IRuleEntitlement.sol":{"keccak256":"0x362d73e7b5a9626ffb3c76ebd7c41cae6240ce0a8d2ec401df345814a39b303b","urls":["bzz-raw://c750b186885d1af5cda10755c8443629b270d18b221c1054a7e9344adbea7ce4","dweb:/ipfs/QmcwkJjGj8PGy43KRRh2c4ggcjBVD65XDsoq8H5LozTeN2"],"license":"MIT"}},"version":1},"id":220}