{"_id":"@octane-security/solgrep-ts","_rev":"35-fc57aa0cdd7a45f2ee9bccc81dcc3922","name":"@octane-security/solgrep-ts","dist-tags":{"latest":"0.0.42"},"versions":{"0.0.10":{"name":"@octane-security/solgrep-ts","version":"0.0.10","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","gitHead":"0d843cc0c51bc3557cc3e5a4fd9fa24eacf08cdd","_id":"@octane-security/solgrep-ts@0.0.10","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-36WmnaChCcnXG76XAwHe2SA2FFkjZhfOAzyyem6KbNo9MnNHk1N+OiSJSsz1HLIgfhmI9RPCQP+mEdA5Pfcw3w==","shasum":"12d8fe987130446afcd1c8abd2eb6af1b69e4c3f","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.10.tgz","fileCount":22,"unpackedSize":52619,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG/wlRCYCnxGTZ2xS8XF77gkTh7HJCPRA9Lq7BGEG5gvAiB1bJs+X+ETlKFYR8Jl9AeJ/uXnSpiVXMPm/ztyMohw8Q=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.10_1700351140827_0.8400841214235253"},"_hasShrinkwrap":false},"0.0.11":{"name":"@octane-security/solgrep-ts","version":"0.0.11","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","gitHead":"a3c5daf59435eb42da8d17064474366b3100fbe5","_id":"@octane-security/solgrep-ts@0.0.11","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-h+VVnZOyVryj6BD9sBquQIsZm3jX6E4DUFQY6S/jRQCj5X3iTVurN2Hd0IUPAE5VNrdnGx3mMNou/qM4jFyXyw==","shasum":"563ebea45ee922682ee9bdffbdb1532bdb04bf36","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.11.tgz","fileCount":22,"unpackedSize":53371,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEeyGnKNFkkQW/k6wiPudNRUJw/YUtqvSGWFNBfImnTyAiEAlQq/9FJrBwM12tmza6Z0ORaV7cZTgLtHQnKvwFNZ5ys="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.11_1700351958404_0.5096479968845549"},"_hasShrinkwrap":false},"0.0.12":{"name":"@octane-security/solgrep-ts","version":"0.0.12","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","gitHead":"2ea4347816996f8010227514c181ae5395e9527e","_id":"@octane-security/solgrep-ts@0.0.12","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-ovXhsgPZjgQm629i/m2iekCnMTmvYsfFVTnR476mPkYeyTdWtbi0RwBNMEltLWrAwmIJqtL1dhgZU5vwC/YCpg==","shasum":"6808c28dbc5c21ff1a0566ec60464e12f27bca2c","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.12.tgz","fileCount":22,"unpackedSize":53381,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRhY1kzWw7NQF49tCv/U99OzP9JibELYLVuvoSIO9K3QIgPqeHve9FlYqft9SATv/dnL2EaYl9qWIe6L8k+5VIwaQ="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.12_1700424907352_0.30931288048465144"},"_hasShrinkwrap":false},"0.0.13":{"name":"@octane-security/solgrep-ts","version":"0.0.13","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"1f11242ab34a6376c084c079d6d84eeffadcc02d","_id":"@octane-security/solgrep-ts@0.0.13","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-xDXXahDCPvTYT5DyYNnFF/dVKZ1wRbyB9+j9/qMdYBk0Elow+lXS36pht1CT2rVo995ykcTgZPdAgWe2uxumPw==","shasum":"141708de676a13192d41853112b3c9ba485fa9c4","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.13.tgz","fileCount":22,"unpackedSize":52905,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHvi3xz17WVD7ptRsrou8vy5PXe8oQCW651qo89SSDYSAiB9drQmS0xgWhOIgmss0/waQPvj3EV/9SnPV2D46ixyaw=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.13_1700426532426_0.2674084280805893"},"_hasShrinkwrap":false},"0.0.14":{"name":"@octane-security/solgrep-ts","version":"0.0.14","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"100fbd0a6ef3583d19eaaa7dd67fd44ea40e20fd","_id":"@octane-security/solgrep-ts@0.0.14","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-C2bHYaqNWpoyclmixeDwQi0QVOVBU5T4pTPOR0uuQJzsd66mymbkQM3SvkflFb++ax09ysxW/LLMb68KjcLOJw==","shasum":"fc854f6b7e9ca8523829aee99af2dbdfc0dc2bf6","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.14.tgz","fileCount":22,"unpackedSize":53083,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHXJ0nleevKB9sGGu6UtXA74KYdc13JDnlTyJCl8ybxCAiEAqXcuAknRN3WPhfdXvjS4PR8TRe8X0z188JVGiOh+Wug="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.14_1700426806884_0.5912263803924287"},"_hasShrinkwrap":false},"0.0.15":{"name":"@octane-security/solgrep-ts","version":"0.0.15","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"100fbd0a6ef3583d19eaaa7dd67fd44ea40e20fd","_id":"@octane-security/solgrep-ts@0.0.15","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-aIap54pInEq1lteUUOZUs2wYMBRnjVNqKIyR7rOVmk28YKo0AQ1y4X4ltDPTrQJ9MCVquDLidyJjXRI3M8zUgQ==","shasum":"da0ce654d1bf1096c377157a6c1cf663d04cf419","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.15.tgz","fileCount":22,"unpackedSize":53102,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDZpgZv3HLkofDB2kGHNrpE2lQV+kymrX7M8CVEnaFbQwIhAJUhXDSZGYezj6P8jPa56LKu5zhrPEKuWX3ZmOfzz7HQ"}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.15_1700447914985_0.373856206493387"},"_hasShrinkwrap":false},"0.0.16":{"name":"@octane-security/solgrep-ts","version":"0.0.16","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"100fbd0a6ef3583d19eaaa7dd67fd44ea40e20fd","_id":"@octane-security/solgrep-ts@0.0.16","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-g7k5nQRuzUk7YcLixM8dPjHeSt27I0V/haA2T9wz/Lt2k0a4cVqzitQSy05uchbtYKqE/VEGSPOyoP/WlK3C8g==","shasum":"9a5160c32c6eef3e86c1ca3d81521db44ed3f9f5","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.16.tgz","fileCount":22,"unpackedSize":53277,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGh/wbRMEDSKM/ZfW05QHN+G/JDniSEoVbAuWR4W/aPvAiBIMzoJW8huh99dUme4HWSvMHJEdTKxI3Y4dx94Dcn5Nw=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.16_1700448829360_0.13153847137391428"},"_hasShrinkwrap":false},"0.0.17":{"name":"@octane-security/solgrep-ts","version":"0.0.17","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"tintinweb","url":"https://github.com/tintinweb/"},"repository":{"type":"git","url":"git+https://github.com/tintinweb/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"100fbd0a6ef3583d19eaaa7dd67fd44ea40e20fd","_id":"@octane-security/solgrep-ts@0.0.17","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-GbZm+qzVQxKNuIPZ45s34Bpas7hL8GyhbU8Nhhb/5/rbA+8nEV5UR6d6RFz+6MbdXgzVAbasjG9IvVaVc+q8OA==","shasum":"13c8081f360153dd51e5f8f80a9f81338c5eb80d","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.17.tgz","fileCount":22,"unpackedSize":53268,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDB9BxtLcXAmEAue4hcZv3gvBLthLt0C8vRUdruBVaR7AIgE1jJ3pCv7sw7vR7ceg2sxuJwmlwSICt/9RQcAuiBq/s="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.17_1700448899372_0.8323605872517486"},"_hasShrinkwrap":false},"0.0.18":{"name":"@octane-security/solgrep-ts","version":"0.0.18","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"f20ce64d1f4e72faa169ea8ab87ac26c75f8fd3f","_id":"@octane-security/solgrep-ts@0.0.18","_nodeVersion":"18.3.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-LV/2HxaTmAvT29INELRjhktWoC9fGzDI7uqOQMAX8IQVNhWmsDFfHb+adu5lzAPWfFjTPxfwtcViLqvhutovFw==","shasum":"e9fac76d1941201bcd08ae5f0f1dd9f341a0b7cb","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.18.tgz","fileCount":22,"unpackedSize":55100,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC9JW4axLl/QfGIk6Goja/G1FdfjXQox3bniHCjEN1KdAiEAwqvoRzREX2RFRh+URXA6j7jcVtlWSfq63Lv/f8XMUeY="}]},"_npmUser":{"name":"nateostro","email":"nathan@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.18_1701109114565_0.19425842713294483"},"_hasShrinkwrap":false},"0.0.19":{"name":"@octane-security/solgrep-ts","version":"0.0.19","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"ab3d90d1d1711033af16229e1a41977d8a5ca7d8","_id":"@octane-security/solgrep-ts@0.0.19","_nodeVersion":"18.3.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-a8wtrVsbleAhe1cccJS/FQFO9SiwjSbjWwDZOQGl/iojCPVS7yLpDpOokycyriZS+ODgrjMk2PqTqTUHg/MVNw==","shasum":"3ba2f4359b89a7574220cfe46625b41ab1179220","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.19.tgz","fileCount":22,"unpackedSize":59477,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpkojPonPrcrWyzQ2cGAZA9Gl/WsJq2JFlfxwIi2VsbgIhAPEs+QASbozqxT4CFG6zxmudZYuYxEQF6EMFSPNN/mcP"}]},"_npmUser":{"name":"nateostro","email":"nathan@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.19_1701111325488_0.44605841370292754"},"_hasShrinkwrap":false},"0.0.20":{"name":"@octane-security/solgrep-ts","version":"0.0.20","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"c00325981157d837872f831e790c2cd75deafd47","_id":"@octane-security/solgrep-ts@0.0.20","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-hd/OagW2oxJOIAR8jjZrvxEXjOiiz2/ZxCLIwjyBXjwVXojKdaCoiWoHnGKQSsM/xxZ3EmKN0Av1HhhDTk6PvA==","shasum":"d06122d53b5662879ef17052c8c6b9e95bb2309a","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.20.tgz","fileCount":22,"unpackedSize":59555,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDCNaEw988fN6dJm0jUY/BBBSBoRzNAWewUPm5h8PgayAiEAkiZnGji5Xizg9sIJXUMCF8whNcGfZ8YrZ3c2casRysA="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.20_1701810426198_0.10786778830200583"},"_hasShrinkwrap":false},"0.0.21":{"name":"@octane-security/solgrep-ts","version":"0.0.21","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"dd1198a6f8e1ccd7b96b446ebaaf6750afeb95e6","_id":"@octane-security/solgrep-ts@0.0.21","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-PZj3ny5/FOJ8QDHCRHLW110lifCdqXxntHE0+h12PODPPD1FhCeVTW712jLZ31f7Khg3DXgnDGl6HoCoO9bnmw==","shasum":"8c62f2d132232ac03798bae940041d1f7c187371","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.21.tgz","fileCount":22,"unpackedSize":59622,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmL+li4JK9NQ+bbWAx2FoabgRalSWd0+4IvE9ffoXtfAIgb4HsgHKYDGedRf8VN6GYm2pDtgs6kX5QAkqS9D4VBuY="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.21_1702506680998_0.8435423351722249"},"_hasShrinkwrap":false},"0.0.22":{"name":"@octane-security/solgrep-ts","version":"0.0.22","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"dd1198a6f8e1ccd7b96b446ebaaf6750afeb95e6","_id":"@octane-security/solgrep-ts@0.0.22","_nodeVersion":"18.3.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-clX1shlptgNu54SCEYCI9nbBakN1NEOcyAxvYfvWR93mzWWz5XcDsaRNTUoKCzANz+MHEnd6fZ3xE/jkpR9XmA==","shasum":"6ff06a2c47270f09e88115ac118b3b382c2326ed","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.22.tgz","fileCount":22,"unpackedSize":59622,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIELvNhYcAfgwkvaApQtVRINm/u4WKShGy8Hosd9KgzyVAiEAo8BPS6v1Oc7new+zMZ6k3zi1nHDRWhmokO3xG4+xdaQ="}]},"_npmUser":{"name":"nateostro","email":"nathan@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.22_1702507046794_0.005909296745583825"},"_hasShrinkwrap":false},"0.0.23":{"name":"@octane-security/solgrep-ts","version":"0.0.23","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"4a4b10906d2411f62ca58c5f8d857c36697578c5","_id":"@octane-security/solgrep-ts@0.0.23","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-fb4i55gW/XxrPqtkq01hFPtY8MGCLGt4HQQi8GfqfZV+g32hDc04PqCN1Al+LFbQQ8JdNIV7ozYtrP6H1Y68CA==","shasum":"3780055c56ec5c3ddb4a6ace717a552fc9dc2878","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.23.tgz","fileCount":27,"unpackedSize":321632,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDS09zt2E/VJ+zY0Hs1di3JgwUGyZoBzSd8alh26+Qt0AIhALtT6hwbYuXYqNxamNYuuPkUY2tsvmS1ydK8kkz16CwD"}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.23_1705365743303_0.3257509541446695"},"_hasShrinkwrap":false},"0.0.24":{"name":"@octane-security/solgrep-ts","version":"0.0.24","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"de398de08c56625a0b19b35c2f235dfe6920c0a8","_id":"@octane-security/solgrep-ts@0.0.24","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-3PI96z99Dk4Gs3k/2+J1sZkfRxfI+e4r3QS/vhRv00KCL9SuhzV29dqUw2gzCveum5JyeOAuxh29nYGgawVFhg==","shasum":"6e28fef12c7388cb5a2b95f5042b613c4b04de5e","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.24.tgz","fileCount":27,"unpackedSize":322791,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD6fF6bHDGMIPwk1jxkTnNtJWxKgAGQ1scwenHMKgRKbQIhAOwrMEc0awRWsWUVpEtDf8NBtpn6il/wvERS+JLzRXGH"}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.24_1705374291170_0.8043602293283902"},"_hasShrinkwrap":false},"0.0.25":{"name":"@octane-security/solgrep-ts","version":"0.0.25","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"de398de08c56625a0b19b35c2f235dfe6920c0a8","_id":"@octane-security/solgrep-ts@0.0.25","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-reKewaL31BKgeaMio7/4qOz4c7qAlbU6Gu3Bi6jgpok/om21z80tXYAruNLXDOc3u15R0ITa3x0LuLsRes6RPg==","shasum":"015be88c5f8fb51a80f5ec15e8eb6f2bc23722d9","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.25.tgz","fileCount":27,"unpackedSize":323093,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUQYBteWlVc7E0uBMeBWxt6duKabJ2sJog1FCGrStX2AIhAMgB1ZG281J4C8fwHIH40Em+MOVZU5mAX6H3GJkoj51i"}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.25_1705374606951_0.7517384652936063"},"_hasShrinkwrap":false},"0.0.26":{"name":"@octane-security/solgrep-ts","version":"0.0.26","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"1c2fefa80bb86858a5f8b0e390e35a833ec211e1","_id":"@octane-security/solgrep-ts@0.0.26","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-4LGufIQ83zyxIckYMuRVDXe3mOB6znWiAkXZyChGr6dtNMgBINDfPE6TpGaS0uWyJLsGWYPtRTNh3FyNTm1GEA==","shasum":"1a118441a47cf4d0c8e8df94253fcb62edea466f","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.26.tgz","fileCount":27,"unpackedSize":323093,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHZbVv5iAv9t1oxymtG/L4EeauDk8hIhIGCFrgd9Vc2VAiBwdT5LTuLaGqQkTGwasFszBLhufpfV7L+gvhSp+CsxTg=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.26_1705428475166_0.8105033441325142"},"_hasShrinkwrap":false},"0.0.27":{"name":"@octane-security/solgrep-ts","version":"0.0.27","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"9a527b97011ab85ab5a4967cdc2236872ed4ffca","_id":"@octane-security/solgrep-ts@0.0.27","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-qRMZZ6/eSLUsARI3eSMeJQpI47WhbH4c8qAg63x+7B0zgkH0tCLa5IP8H3W4Y7JAV2S6JtoWJ4wHy+HwMR21uw==","shasum":"ab1da07dc53b00dea2769c9773bcf05f59961e38","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.27.tgz","fileCount":30,"unpackedSize":331619,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDm3yiZ22qZdpMrhhoPq8lb+gOWlypmuWgaXNETUi37YAIgdQ6PLLZ7JypHeFco7rs+2hzF/zFIMUN7og0QcTWzxtk="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.27_1705526991831_0.7384098127465193"},"_hasShrinkwrap":false},"0.0.28":{"name":"@octane-security/solgrep-ts","version":"0.0.28","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"686b2853b8cba55b9707acbd6fb65d1026ab3546","_id":"@octane-security/solgrep-ts@0.0.28","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-NYks7na11ZLxpG8tOLHYBdykmLPrDh4/Hc77M521f9A3n/s3ZBhudZltSgCTVtvQhY2zUyD0NkPn9cO2Y0PWdQ==","shasum":"d9136797fe8406fb55fe7599814874d20db92fc6","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.28.tgz","fileCount":32,"unpackedSize":334976,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWnDOBxV1c90BoQR53E4o3XtOsN3Ot4FqmiLBL5DTwDgIgH/3UtJrxRs9bw+Oo2wW+myt3BdM8ESZlmWufiHCMWSs="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.28_1705624328706_0.865274379567665"},"_hasShrinkwrap":false},"0.0.29":{"name":"@octane-security/solgrep-ts","version":"0.0.29","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"8402474c17fe5f4889f2fd0483e3978830fd7c3b","_id":"@octane-security/solgrep-ts@0.0.29","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-14RuLrvsYmYDYcSNj1Ot163pK098gq0yp/Iui4ouH0eS7meqoKL91c0d9ohssPrujvzw7BOHyPRrhP0KrCIIOg==","shasum":"3b81978619b59b2e12e7c2b0482964de832358f7","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.29.tgz","fileCount":32,"unpackedSize":335043,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA98IDDfcQ60ZjjaZz21EDsLzRhOS15JlnxKj+3omscRAiA/sJgO6xggyKaFoU5788JEPNLdBG/WzvYU1cU4j/XuYA=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.29_1705625024957_0.6436684522211378"},"_hasShrinkwrap":false},"0.0.30":{"name":"@octane-security/solgrep-ts","version":"0.0.30","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"767e77cc97ef0b7dc711b06b309c8372d72cb48f","_id":"@octane-security/solgrep-ts@0.0.30","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-H7rZDTq/rBMV5jc1ma2XONYdzy0VCJMsL8IzXTM+f54OxHJryA3hOla9nMKK8wyEa7VqsfsBSdEyK9hxoCIXAw==","shasum":"aba9778f7de5442e2555c1238ea8f102c0f658c7","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.30.tgz","fileCount":32,"unpackedSize":335310,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA9Ulfh8WExE76dLUN6pLiZY0zD/0Y1ySqIa3uzV99qdAiAzuJ1AiWqa6/cyFmmj/S2iCGv2iviZjkcR9jgmA5Lk5Q=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.30_1705626228412_0.9649008309286509"},"_hasShrinkwrap":false},"0.0.31":{"name":"@octane-security/solgrep-ts","version":"0.0.31","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"fae8fdc7a412727bc78810393b077448dc382f02","_id":"@octane-security/solgrep-ts@0.0.31","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-wfmHg22YeUaykWibUJ7F8+3iEmXbw2NG9hojBQHCyDR+ay2ED+zjv7af1Q/s2tljmC9UEWmkeJBofvwjlwH5zw==","shasum":"9be5d0c258ff1502f215064983e3ea8d02cfae84","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.31.tgz","fileCount":32,"unpackedSize":335322,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCr+BTbnxatSE0Wg9lWLOHftNPs+AdKL+uCJips8jkdCwIhAOysEIBBBeZ1wF2krDKIvPnml7+GOeD1myGslvuAHQGq"}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.31_1705626454502_0.17930203194236483"},"_hasShrinkwrap":false},"0.0.32":{"name":"@octane-security/solgrep-ts","version":"0.0.32","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"fae8fdc7a412727bc78810393b077448dc382f02","_id":"@octane-security/solgrep-ts@0.0.32","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-JI1iJkLlLepSn99x7P0TaMz1K6vjv2D0RUmn1SNWeOl8HxGACo3Xs+Dapm610By3uIRRqFXF64WFm3+m8F9kBg==","shasum":"1032ebda25d9edc3b8f7498944ebb98d63ded28d","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.32.tgz","fileCount":32,"unpackedSize":335329,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjZ2B18zejjOA+UenU9VA7VgEAVktZ7/YYgmketu1BUwIhAPP3hc1i6Hwnk7ONAgd/Q0UR7X6BBNQk7F2KKPNvCUz/"}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.32_1705626865047_0.8064372310788341"},"_hasShrinkwrap":false},"0.0.33":{"name":"@octane-security/solgrep-ts","version":"0.0.33","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"4c7ec34c54c9101856aa22016a63ebd44a838e5e","_id":"@octane-security/solgrep-ts@0.0.33","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-cxJafHaK7XXgkXxcwwV2uXBCugp9+AZKz88RF6FKYB9nWmkg732sWJJoGqxLknBAulLFeqI8euB/GbJcXkCXaw==","shasum":"494f954a2cfbf77ca8ea491a142ac44acf0245ad","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.33.tgz","fileCount":32,"unpackedSize":335347,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEOl2JDyFTDYp7OGEDKUj6wd5HdLtLOI2n0TrwWDNsHVAiARfJVF68GY+4m1DIDZIoTlhkkABIpdyteleuDiotK2kw=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.33_1705626962786_0.6591204455137525"},"_hasShrinkwrap":false},"0.0.34":{"name":"@octane-security/solgrep-ts","version":"0.0.34","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"d536c6a1ff191a3841f892588f52153e9f359ee5","_id":"@octane-security/solgrep-ts@0.0.34","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-HTozhdVIfwIFhTJj93xqdjeBHitJembEFeoaBVkdgDHXOyksFiCtaxJoqAYZo0d623gUyOO1OWXj0jgrd4TXsQ==","shasum":"73e1f61074fdf3b8c517f61aea1575db35f1822c","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.34.tgz","fileCount":32,"unpackedSize":335455,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDgSw/MIbaexCgvyNv0/+CGbir/rOHkRxr+cFeCkUbraAiEAvD6rYgui80IL9Vew7SPf6fpzLfbhd6djZJqB/+24oZQ="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.34_1705629541491_0.8119789249000529"},"_hasShrinkwrap":false},"0.0.35":{"name":"@octane-security/solgrep-ts","version":"0.0.35","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"d536c6a1ff191a3841f892588f52153e9f359ee5","_id":"@octane-security/solgrep-ts@0.0.35","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-4oA86Oth0ioTIc6WrUzs0E8gfeRLcGKt3Wujh9dYZrg9Hmt+3bRMK5mvieev/LALXYh/QCma7pq78envpetjcA==","shasum":"5434935a845f1aa79fc97b95557ebd7ed6cc09fc","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.35.tgz","fileCount":32,"unpackedSize":335455,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE43wGAcZfiV4UITKJhgkzVgNgGM2zQHH11SJrhYi+f3AiAU4YGNbL/yD3HUBXaEXi6SHDP/nAi6mVfOnQXI5O4rHg=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.35_1705629815015_0.19590925021612215"},"_hasShrinkwrap":false},"0.0.36":{"name":"@octane-security/solgrep-ts","version":"0.0.36","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"b3e983f3bf238263b8b05438c6811a0ac1ef129b","_id":"@octane-security/solgrep-ts@0.0.36","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-0k5IG8F/Wjt+4eswH+xHiSyQLTrvRWyfSrrstzbfCHR6lPBSL2k9/I2w0Tji8Xqesd2YaqqX4bUwb8PkPZklCw==","shasum":"8d4a9a260f461aa495ce339a81c5e1f13344cd1d","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.36.tgz","fileCount":32,"unpackedSize":335455,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDk3wK0cfc/E6X2R0cCM+JfxEgKYzQroWBeYnHtVi8L+AIhAJYyMcp22MAyj6uegbecmotnmVWG9jgGp9t97POjZbkR"}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.36_1705629953580_0.03512189484658279"},"_hasShrinkwrap":false},"0.0.37":{"name":"@octane-security/solgrep-ts","version":"0.0.37","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"b3e983f3bf238263b8b05438c6811a0ac1ef129b","_id":"@octane-security/solgrep-ts@0.0.37","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-T6kv6r6j53FPYs+uglN/eBBm02bAuM/hV7sgxNNJscVzF3JeNOWIv+TQvC31fqI9OR8immK0s3h8k45hdWv2HA==","shasum":"1ed6e9f01119b424df1c23820fbe7aeabdd45210","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.37.tgz","fileCount":32,"unpackedSize":335495,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDfy/vKvvy47x91m+G1jMl55os1u66oHHl38Ub0eBD6SAIgSnwK3tnlT/VU1xc1EICSQo14TT0Yy8DXmnmQUInEyz0="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.37_1705630022811_0.2744585819454606"},"_hasShrinkwrap":false},"0.0.38":{"name":"@octane-security/solgrep-ts","version":"0.0.38","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"bf70bb1f90f3efd41268e62a79fea3ad6bfc9f87","_id":"@octane-security/solgrep-ts@0.0.38","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-sUce9wEIT/NHx7xI1XnZLD6zHQ42SPkYi2xWpVsegFeCJdudu0CB9wABmBZpNgRJIXbPLo4fUYIWtxUiGA68dA==","shasum":"c651070f7c7002b860110fdfdb5d85d3c730c4a5","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.38.tgz","fileCount":32,"unpackedSize":341094,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAxmnQIfunFikCpzdBTPVbfSzSp3c5V1W1Pw0fEJCl+rAiBVE3b9oT5cgCij7LuRKXd4/OZPVrHctGoopRIEweNntg=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"jreyes","email":"jreyes@bixlabs.com"},{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.38_1705887509713_0.49471721207914054"},"_hasShrinkwrap":false},"0.0.39":{"name":"@octane-security/solgrep-ts","version":"0.0.39","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"e43ab44457d9a1ae9ffd880075ea2c1b808ae334","_id":"@octane-security/solgrep-ts@0.0.39","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-Y4clVzXmEC0dzAxkL3ZxzHoBiCOzBvF+BD/DLdqGDSswrrO3ua+P6vNVJ8ziXsfwH63J6z6A5Tdg6mdpVlBeMQ==","shasum":"84272a0d0129008dcdc383923d2c7de65b21e56f","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.39.tgz","fileCount":32,"unpackedSize":341287,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGzy8sas80PgF+Lhvv/1pQwxmk1Ahq8oVNk+S4Ts9cUOAiBUUiyyr+X4mqiHFO3GiD6MxWOsDLzScfjbuhKr5+efgQ=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"jreyes","email":"jreyes@bixlabs.com"},{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.39_1705908492821_0.23700579575454572"},"_hasShrinkwrap":false},"0.0.40":{"name":"@octane-security/solgrep-ts","version":"0.0.40","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"5f6a5bf2d9d417559260a80c9cb4792a5410c0b2","_id":"@octane-security/solgrep-ts@0.0.40","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-TdW6PAzgosdlQVxtP4EENdgzN66x1iOpHw0unIff0heeht6dm575bcywtbvWMsJ2Srqy4YKyNujiZ13umA0mcA==","shasum":"14eb2eca015dacd165cc0ee3c5a2bf66f505377c","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.40.tgz","fileCount":32,"unpackedSize":341677,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBpOOeJuaprFy3UvOwrnzS/9S4iQ4lDVsQY+1QWkoHfwIgOM6AIqD0F745BRqkpwJpgdYyLZc7yQEq5q8f7gezqpM="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"jreyes","email":"jreyes@bixlabs.com"},{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.40_1705966093735_0.5979209998572252"},"_hasShrinkwrap":false},"0.0.41":{"name":"@octane-security/solgrep-ts","version":"0.0.41","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"5966598e1c9cd28f19cedd14ed10cb76c16ed350","_id":"@octane-security/solgrep-ts@0.0.41","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-CMpk18rbAbxBxUIz/WhppXu9kfZWxBp4Fykr65dWHXLjA/lrY1cFIkOm0a5FkueY5w7yCCrM92i+SNJDz5CDzA==","shasum":"91de86018d515ecc468b8efa43d0c558ecad8d10","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.41.tgz","fileCount":32,"unpackedSize":342467,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIErhTj8Kw58WjV4R6u8bst8wNmdYqHOQP/BRLHuvAUEqAiA+XiEyO/xF4s800+QAq7T/bVNGgQppzWKsN8sZ80Q8kw=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"jreyes","email":"jreyes@bixlabs.com"},{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.41_1705972371742_0.6078799444670908"},"_hasShrinkwrap":false},"0.0.42":{"name":"@octane-security/solgrep-ts","version":"0.0.42","description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","main":"src/index.js","bin":{"solgrep":"bin/main.js"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"keywords":["solidity","grep","semantic"],"license":"MIT","dependencies":{"@solidity-parser/parser":"^0.16.1","chalk":"^4.1.2","cli-progress":"^3.9.1","fastq":"^1.13.0","safe-eval":"^0.4.1","solidity-doppelganger":"^0.0.11","yargs":"^17.2.1"},"devDependencies":{"@types/node":"^20.9.2"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"homepage":"https://github.com/tintinweb/solgrep#readme","types":"types/index.d.ts","gitHead":"0ff65b951a4cbd74107f4e0a76f7f1722c54cdff","_id":"@octane-security/solgrep-ts@0.0.42","_nodeVersion":"18.17.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-qxCOBl82iKAXBeCnqagQ8K8vK+jTwnJKNJbkND1h4voI2Y+pZQaEPshS9E1TW5rhKJJ3XRjmk3GD/nUc6aL8Jg==","shasum":"29bfdb234743837ce4dbfb97f099032a013f7e4b","tarball":"https://registry.npmjs.org/@octane-security/solgrep-ts/-/solgrep-ts-0.0.42.tgz","fileCount":32,"unpackedSize":343485,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF7aMcfZaw1yCgbO0otZHuGc3Zw1X22njzM5Wx6BjhSsAiBVSXy9HjUaaG5oy4uwTcVV5oItdsAqYeREhErI4pL73g=="}]},"_npmUser":{"name":"giovignone","email":"gio@octane.security"},"directories":{},"maintainers":[{"name":"jreyes","email":"jreyes@bixlabs.com"},{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/solgrep-ts_0.0.42_1706050029087_0.03874763852344065"},"_hasShrinkwrap":false}},"time":{"created":"2023-11-18T23:45:40.715Z","0.0.10":"2023-11-18T23:45:41.044Z","modified":"2024-01-23T22:47:09.470Z","0.0.11":"2023-11-18T23:59:18.634Z","0.0.12":"2023-11-19T20:15:07.624Z","0.0.13":"2023-11-19T20:42:12.677Z","0.0.14":"2023-11-19T20:46:47.040Z","0.0.15":"2023-11-20T02:38:35.312Z","0.0.16":"2023-11-20T02:53:49.539Z","0.0.17":"2023-11-20T02:54:59.557Z","0.0.18":"2023-11-27T18:18:34.858Z","0.0.19":"2023-11-27T18:55:25.649Z","0.0.20":"2023-12-05T21:07:06.454Z","0.0.21":"2023-12-13T22:31:21.236Z","0.0.22":"2023-12-13T22:37:26.954Z","0.0.23":"2024-01-16T00:42:23.492Z","0.0.24":"2024-01-16T03:04:51.359Z","0.0.25":"2024-01-16T03:10:07.152Z","0.0.26":"2024-01-16T18:07:55.334Z","0.0.27":"2024-01-17T21:29:52.014Z","0.0.28":"2024-01-19T00:32:08.914Z","0.0.29":"2024-01-19T00:43:45.124Z","0.0.30":"2024-01-19T01:03:48.645Z","0.0.31":"2024-01-19T01:07:34.651Z","0.0.32":"2024-01-19T01:14:25.195Z","0.0.33":"2024-01-19T01:16:03.026Z","0.0.34":"2024-01-19T01:59:01.657Z","0.0.35":"2024-01-19T02:03:35.189Z","0.0.36":"2024-01-19T02:05:53.726Z","0.0.37":"2024-01-19T02:07:03.045Z","0.0.38":"2024-01-22T01:38:29.872Z","0.0.39":"2024-01-22T07:28:12.972Z","0.0.40":"2024-01-22T23:28:13.891Z","0.0.41":"2024-01-23T01:12:51.956Z","0.0.42":"2024-01-23T22:47:09.243Z"},"maintainers":[{"name":"jreyes","email":"jreyes@bixlabs.com"},{"name":"nateostro","email":"nathan@octane.security"},{"name":"giovignone","email":"gio@octane.security"}],"description":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/> <sup> [[  🌐  ](https://diligence.consensys.net","homepage":"https://github.com/tintinweb/solgrep#readme","keywords":["solidity","grep","semantic"],"repository":{"type":"git","url":"git+https://github.com/giovannivignone/solgrep.git"},"author":{"name":"Octane-Security","url":"https://github.com/Octane-Security/"},"bugs":{"url":"https://github.com/tintinweb/solgrep/issues"},"license":"MIT","readme":"[<img width=\"200\" alt=\"get in touch with Consensys Diligence\" src=\"https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png\">](https://diligence.consensys.net)<br/>\n<sup>\n[[  🌐  ](https://diligence.consensys.net)  [  📩  ](https://github.com/ConsenSys/vscode-solidity-doppelganger/blob/master/mailto:diligence@consensys.net)  [  🔥  ](https://consensys.github.io/diligence/)]\n</sup><br/><br/>\n\n\n## 🧠 SolGrep - A scriptable semantic grep utility for solidity\n\nSo you have a set of smart contracts and want to find all contracts that have a `public` method named `withdrawEth` but lexical grep yields a lot of false-positives? Here's where [solgrep](https://github.com/tintinweb/solgrep) can help! 🙌\n\n[💾](https://www.npmjs.com/package/solgrep) `npm install -g solgrep` \n\nSolgrep recursively finds smart contracts in a target directory, parses the source units to understand the language semantics, and makes this information available to a powerful javascript-based filter function. This way, you can:\n\n* extract semantic information from solidity source code based on custom filter functions\n* find target contracts based on a custom filter script you define\n* create & run your own or built-in rules (e.g. for CI checks)\n* crunch numbers and generate statistics from a code base\n* find doppelgangers! i.e. duplicate contracts sharing the same code structure (`AST_EXACT` and `AST_FUZZY` matching)\n\nProbably the most common way to use this tool is to run it with the `--find=<js-filter-statement>` option, where `js-filter-statement` is a javascript one-liner that tells the engine what you are interested in. You either provide a statement that returns `boolean` (\"find mode\") or return information you want to extract (\"extract mode\").\n\n![solgrep2](https://user-images.githubusercontent.com/2865694/142903238-af9d2d11-81bb-430c-96dc-4118da89c90b.gif)\n\n⚠️ Make sure to only allow trusted inputs to `--find=<js-filter-statement>` as this argument is being evaluated as javascript!\n\n⚠️ Check out the proper order for arguments when using `--find`, `--rule`. See [Usage](#usage).\n\n### Examples\n\nRun the default rules and display some stats?\n\n```javascript\n⇒  solgrep <folder> \n```\n\nRun a specific or multiple built-in rules (`solgrep -l` to list available rules)? 👉\n\n```javascript\n⇒  solgrep <folder> --rule=IsInitializable --rule=Stats\n```\n\nYou want to find all source-units with a contract that has a function named `withdrawEth`? 👉 \n\n```javascript\n⇒  solgrep <folder> --find=\"function.name=='withdrawEth'\" \n```\n\nDo the same thing but case-insensitive? 👉 \n\n```javascript\n⇒  solgrep <folder> --find=\"function.name.toLowerCase()=='withdraweth'\" \n```\n\nFind all functions that call `selfdestruct`?  👉\n\n```javascript\n⇒  solgrep <folder> --find=\"function.callsTo('selfdestruct')\"\n```\n\nExctract all function names from all contracts? 👉 \n\n```javascript\n⇒  solgrep <folder> --find=\"function.name\" \n```\n\nGet a list of all `external` functions? 👉 \n\n```javascript\n⇒  solgrep <folder> --find=\"function.visibility.includes('external')\"  \n```\n\nFind `ERC777` contracts? 👉\n\n```javascript\n⇒  solgrep <folder> --find=\"contract.name=='ERC777'\" \n```\n\nExtract all Contract names? 👉\n\n```javascript\n⇒  solgrep <folder> --find=\"contract.name\"\n```\n\nExtract all Interface names? 👉\n\n```javascript\n⇒  solgrep <folder> --find=\"contract.name && contract.kind=='interface'\"\n```\n\nMatch against something in the `AST`? 👉\n\n```javascript\n⇒  solgrep <folder> --find=\"Object.keys(function.modifiers).includes('nonReentrant')\"\n```\n\nLexial match a functions source code?  👉\n\n```javascript\n⇒  solgrep <folder> --find=\"function.getSource().includes('hi')\"\n```\n\nFind duplicate contracts? (AST exact and fuzzy matching) 👉\n\n```javascript\n⇒  solgrep <folder> --rule DupeFinder\n```\n\nUse option `--output=<output.json>` to write all results to a file.\n\n### Built-In Keywords for `--find`\n\n* The `sourceUnit` object matches the source-file the engine is currently processing.\n* The `contract` object matches the contract the engine is currently processing.\n* The `function` object matches the function the engine is currently processing.\n\n#### Available Methos\n\nThe following methods are available:\n\n* `<sourceUnit|contract|function>.getSource()` - provides access to the units source code\n* `<sourceUnit|contract|function>.ast` - provides direct access to the [solidity-parser](https://github.com/solidity-parser/parser) AST\n* `function.callsTo('withdrawEth')` - find all functions in all contracts that call a method named `withdrawEth`\n* There's even more information easily available (functions/events/pragmas/etc.). Go check out the Solidity SourceUnit/Contract/Function [Wrapper Classes](https://github.com/tintinweb/solgrep/blob/master/src/solidity.js#L18) functionality (attribs/functions).\n\n\n#### Special Functions\n\nSpecial contract functions can be references as:\n\n*  `function.name == '__fallback__'`\n*  `function.name == '__receiveEther__'`\n*  `function.name == '__constructor__'`\n\n\n### Built-In Rules\n\n* `Stats` - collects stats about how many files, contracts, unique names, etc. were processed\n* `GenericGrep` - is the engine behind the `--find` feature\n* ...\n\n**SHARING IS CARING** - [submit your rules!](https://github.com/tintinweb/solgrep/pulls)\n\n\n## Usage\n\n```javascript\n\n⇒  solgrep --help\nUsage: solgrep <folder|...> [options]\n\nOptions:\n  -r, --rule        Enable rules                           [array] [default: []]\n  -l, --list-rules  List available rules              [boolean] [default: false]\n  -f, --find        Find/Extract information using custom pattern\n                                                           [array] [default: []]\n  -o, --output      Write \"results\" as JSON to output file path.        [string]\n  -h, --help        Show help                                          [boolean]\n  -v, --version     Show version number                                [boolean]\n\n  ```\n\n⚠️ when using multi-options (`--find`, `--rule`) make sure to use this format:\n\n```\n⇒  solgrep <folder|...> [options]\n```\n\nor\n\n```\n⇒  solgrep [options] -- <folder|...> \n```\n\nor else additional options might be interpreted as additional `--find` options!\n\n## Library \n\n```javascript\nconst solgrep = require('solgrep');\n\nlet sg = new SolGrep('::memory::', rules, callbacks);\nsg.analyzeDir(\"/path/to/smart/contracts\").then(() => {\n    console.log(\"   ──────────────────────────── Results\")\n    console.log(sg.results)\n    console.log(\"   ────────────────────────────\")\n    sgrep.close();\n})\n\n\n```\n\n## Demo\n\nHere's an example that illustrates how to extract all function names from all `sourceUnits` and `contracts`.\n\n\n```javascript\n⇒  solgrep ../d0  --find='function.name' \n🧠 SolGrep v0.0.3 ready!\n\n  Enabled Modules:\n    ✔️ GenericGrep          _function.name\n\n[████████████████████████████████████████] 100% | 🕙 ETA: 0s | 5/5 | 🌲 389 | 🔥 0 | 🗂️  ../d0\n\n   ────────────────────────────\n{\n  '../d0/D0788Af7a613b81F437a51b96594A6387c7329b1_PendleLiquidityMiningBaseV2Multi.sol': [\n    {\n      rule: 'GenericGrep',\n      tag: 'match-function: PendleLiquidityMiningBaseV2Multi.__constructor__',\n      info: '__constructor__',\n      loc: [Object]\n    },\n    {\n      rule: 'GenericGrep',\n      tag: 'match-function: PendleLiquidityMiningBaseV2Multi.setUpEmergencyMode',\n      info: 'setUpEmergencyMode',\n      loc: [Object]\n    },\n...\n```\n\n#### Run default Rulesets\n\nIf you provide no configuration options it will take the default built-in grep rules and crunch numbers using the `stats` module.\n\n\n```javascript\n⇒  solgrep ../d6 \n🧠 SolGrep v0.0.1 starting ...\n\n\n  📁 ../d6\n ████████████████████████████████████████ 100% | ETA: 0s | 5/5\n\n   ──────────────────────────── Results\n{\n  '../d6/d60a598998ed27a7C54315F2675908B628E434B1_LiquidityPool.sol': [\n    {\n      rule: 'IsInitializable',\n      tag: 'INITIALIZEABLE',\n      info: 'initialize - public initialize function; likely proxy'\n    },\n    {\n      rule: 'IsInitializable',\n      tag: 'INITIALIZEABLE',\n      info: 'initialize - public initialize function; likely proxy'\n    }\n  ],\n  '../d6/d64E77C7C6A1dcC7e302F8fe31A22745e223c39c_MyStrategy.sol': [\n    {\n      rule: 'IsInitializable',\n      tag: 'INITIALIZEABLE',\n      info: 'initialize - public initialize function; likely proxy'\n    }\n  ],\n  undefined: [ { rule: 'Stats', tag: 'STATS', info: [Object] } ]\n}\n   ────────────────────────────\n{\n  sourceUnits: 4,\n  contracts: {\n    total: 13,\n    names: {\n      ERC20: 1,\n      StrategySushiEthMimLp: 1,\n      LiquidityPool: 1,\n      Getter: 1,\n      Governance: 1,\n      LibraryEvents: 1,\n      Perpetual: 1,\n      Storage: 1,\n      ArbiBoneman: 1,\n      ERC721: 1,\n      MyStrategy: 1,\n      PausableUpgradeable: 1,\n      SettAccessControl: 1\n    }\n  },\n  interfaces: {\n    total: 39,\n    names: {\n      IERC20: 1,\n      IJar: 1,\n      IStakingRewards: 1,\n      IStakingRewardsFactory: 1,\n      IMasterchef: 1,\n      UniswapRouterV2: 1,\n      IUniswapV2Pair: 1,\n      IUniswapV2Factory: 1,\n      IRewarder: 1,\n      IMiniChefV2: 1,\n      ILiquidityPool: 1,\n      IOracle: 1,\n      IAccessControl: 1,\n      IGovernor: 1,\n      IPoolCreatorFull: 1,\n      ISymbolService: 1,\n      IPoolCreator: 1,\n      ITracer: 1,\n      IVersionControl: 1,\n      IVariables: 1,\n      IKeeperWhitelist: 1,\n      IProxyAdmin: 1,\n      IDecimals: 1,\n      ILiquidityPoolGetter: 1,\n      ILiquidityPoolGovernance: 1,\n      IPerpetual: 1,\n      IERC721Enumerable: 1,\n      IERC721: 1,\n      IERC721Receiver: 1,\n      IERC721Metadata: 1,\n      IERC165: 1,\n      ICurveGauge: 1,\n      ICurveStableSwapREN: 1,\n      IUniswapRouterV2: 1,\n      IStrategy: 1,\n      IController: 2,\n      IERC20Upgradeable: 2\n    }\n  },\n  libraries: {\n    total: 31,\n    names: {\n      SafeMath: 1,\n      SafeERC20: 1,\n      BoringERC20: 1,\n      EnumerableSetUpgradeable: 1,\n      SafeCastUpgradeable: 1,\n      AMMModule: 1,\n      LiquidityPoolModule: 1,\n      PerpetualModule: 1,\n      SignedSafeMathUpgradeable: 1,\n      Constant: 1,\n      Math: 1,\n      SafeMathExt: 1,\n      Utils: 1,\n      MarginAccountModule: 1,\n      EnumerableSet: 1,\n      OrderData: 1,\n      CollateralModule: 1,\n      TradeModule: 1,\n      OrderModule: 1,\n      Signature: 1,\n      ECDSAUpgradeable: 1,\n      Strings: 1,\n      MathUpgradeable: 1,\n      Address: 2,\n      SafeMathUpgradeable: 2,\n      AddressUpgradeable: 2,\n      SafeERC20Upgradeable: 2\n    }\n  },\n  abstract: {\n    total: 13,\n    names: {\n      StrategyBase: 1,\n      StrategySushiFarmBase: 1,\n      ReentrancyGuardUpgradeable: 1,\n      ERC721Enumerable: 1,\n      Ownable: 1,\n      ERC165: 1,\n      BaseStrategy: 1,\n      Context: 2,\n      ContextUpgradeable: 2,\n      Initializable: 2\n    }\n  }\n}\nTOTAL FILES: 5\nERRORS: 1\n   ────────────────────────────\n\n\n\ncheers 🙌 \n    @tintinweb \n    ConsenSys Diligence @ https://consensys.net/diligence/\n    https://github.com/tintinweb/solgrep/ \n\n```\n\n\n\n","readmeFilename":"README.md"}