{"_id":"@dzlzv/hydra-typegen","_rev":"33-d02a60e9a44281d96fd8e75958c08da5","name":"@dzlzv/hydra-typegen","dist-tags":{"latest":"3.0.0","canary":"2.1.0-beta.0","next":"3.1.0-alpha.0"},"versions":{"0.0.1":{"name":"@dzlzv/hydra-typegen","version":"0.0.1","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/Joystream/hydra"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"build":"rm -rf lib && tsc --build tsconfig.json","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"rm -rf lib && tsc -b && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","mocha":"^8.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"_id":"@dzlzv/hydra-typegen@0.0.1","dist":{"shasum":"1c8b37e820c859882d043e4a1351d3ab3a46a10c","integrity":"sha512-+LHGmWhJollJCDpqqrKNAug7iGpd0fPjR0J0EZ1W+QrSJkwZbWrnRPRiEo21YKza8n1elfODCiCyaOBFalHF5A==","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-0.0.1.tgz","fileCount":50,"unpackedSize":42364,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHUdOCRA9TVsSAnZWagAASFoP/A1YP6yV0gIb2msLeJjd\nOoADQxsNB+9CzrcQQONPw+4Rgv16J+J82pMlQAkjMg0kZSP/7dlsUATtgPms\nqUclKa6cVPEbIiGwNYUaEDheCGf03NhMktPBWuBLjZulHjVdm/75FG8oZ7eS\nD0WfSePsCfD5uceWOy986KAVZPbA/De2GcXlW6xp5PnDIBTFJqoqXq4zVwMH\nRfsujLTzy1qzFuQfNXEXMSqQZG0WyUn2h54z82SxqcOTJUk+RBLGFhcfutBU\nMEa8DWQTBtqJK0k89jHBgAVvGp0/djWTt8xB5o3YhtF5SmWzG32h4Yr5f15m\nvlY5rRxF0iz5lR8naHZRArOiKj78xHDkTP5Coz2XMg4bwyocUC1L1ohEF09I\n/mVyF6QeP6bluxBwbli3BasXwYK/JTUOpyY/mFUp/qIoHWwiL7CuwsWNF0fO\ndPDGiL7vyf2gvp2HB5QJFi4igF1VzOVARC4K604pP11IA4mJRFKI1giI733U\nWxrYIhtB0bR7ItxocvpMElGIhrn7eBIq3dfRgS+So5YF7fQ2bN7f1s6/Qa8g\nYSyC4+P9C6vIc3nEqNfJqndfKSSlwZXTxFucCerY3/2q0zzSf3x+HqASUdxz\no5erzKxhYoe7870oZ1Wsw6W1DRaWusvWpgTFg+7ssAUqclR+gSDVg1STx/Io\nwrXM\r\n=eSRa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBllQ+CGElnVCFFglj+GOiMGBO7pMszSmFCuMWW+Uq03AiEA3xdU9VN2UkdVWl7Ewi6fxKDrP0wuGRtbyJYpSM0E97k="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_0.0.1_1612531533898_0.36830822600033764"},"_hasShrinkwrap":false},"0.0.2":{"name":"@dzlzv/hydra-typegen","version":"0.0.2","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/Joystream/hydra"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"_id":"@dzlzv/hydra-typegen@0.0.2","dist":{"shasum":"6edc1dd0739f0c77b00ac7c11e1f927e768733b8","integrity":"sha512-e+okASczKeZrp9sgbaPsYG0B2RGfCXUw57tuSQbfRXMfXNi9hiV1Gq4MYM9vDeQ/M0hZGPqpW6R0U47xbfFBqw==","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-0.0.2.tgz","fileCount":53,"unpackedSize":45687,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJU0+CRA9TVsSAnZWagAAuRQP/0S+75mcp8mu3OLW9Wcw\n5AH2c/FgzopLXahplLcd1OvH1UYFopUGEJR2KbgKhi7ZVYsobvQbq6atkncl\nnwMrErs5/GCaMZ9HI+9lsuNUkQSrWjAAtNzUQbmiRvoZvJwnQrPdBTOwcmBt\ntctTa55dNGuMz0yhhx4s8ebk9MR5jSakeHWUNxxTjo6KwR51euSWA5QBjLRk\nGR0WUM+VdzGBU6x4UXlHXN28qwUVtJI83HY9naXD0QJgMK/5vye5ZbGKe/EF\nti9Fa3USly9aj9j7POHfyH6JG+Bdr0/GEXjP8l+swqjTU9sYeyLUT/FE9AhP\n2LmH0DMGei448oJCwGEwpylHVpGHcxl02IaH5s0FU2X72yb4ybXFh5V1PAXn\n+Yvb62t8n5bE5cZ8EzvO98FBRmSsgXVEKvR4s9WO96wkgoJsCScfHZzq09WM\ndYTpv0YxGt0tWyWSz7jeXFH00eClL5XNAnPIOIAv6ZMZRZhdneDVsNCx3W7O\nT8+TBqrxru4/+DqTOQUrs/Y3ujB19aMipUO46VJhs9rqaUXm6uYyMSX8bOeE\nQgh3zqBSOUXkbItFoli/TiEqiwsTYn8zsPxJ5UkJeJisbe/v+P4xBu9S/b5c\n1wwkvQKX8iI5nw6KDld8vWFHYvWH7mzg5kcrLaphGcTktCnk6JIsjUgRJu01\nNE+p\r\n=gY/R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOZH+YyUQT22Q2L1wRRrmuPKsil5wOlMTPAVkG0HqRdAIhAOk9nW1mD/RLdx7IWiVkUz7K4tPA3wAe9glnJdvyInL2"}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_0.0.2_1613057342160_0.42524403293081514"},"_hasShrinkwrap":false},"0.0.3":{"name":"@dzlzv/hydra-typegen","version":"0.0.3","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/Joystream/hydra"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"_id":"@dzlzv/hydra-typegen@0.0.3","dist":{"shasum":"8f92c91ccd1b1a56590d283c3f4100858d72e658","integrity":"sha512-zWeJddHvo53lN6QltlQqlZ0dAX7BzWY4urhQDyEjXxARKunojsGBoK3FT1tS9QpVy7h1atWZYr1RNyx7C/Vl8A==","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-0.0.3.tgz","fileCount":53,"unpackedSize":46275,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJU99CRA9TVsSAnZWagAAQlEP/3WJH5/ARYAtejRbH1Zl\n65qluF7TrbiLv46pNhYGQdYIDxJ2CAfdxcNRjS98QO05ihd/P+RE9qvwN6Zt\nHFafHgMNf3luWWvfxyEKH8LjQhmHaeJptcDS0Cr1q2wXwd445VkinD61VwOZ\nQcmEhoFHEH33HX2+WEhL7aIhSaaBzLwXDD8oX8o/sTEENH1gOZ/YC0aPgZiR\njkyKszAv5J/UZjsgJdsMBiX1YQvp3ex366AQFGIWQkjhvm6f+yNNO3PNDlK5\nbMcCiMspiNDKvmVM67KMjCDOGqNFgtNOru3axOypjBZVgfayIc246M0rgstw\nWYnHLAx6Ia4Dw0uP0GauTLKW3ReFAfnJJNYeJZSFD5CIcYTI9+mgKnQDIf9G\no/pLuCpTDzhHe+uuhGTdMTxTPp4AFN2kq6pLtubEAw9ISMh4ufoiYIEkNc5+\nJPnNApEiFDBH9yTaYnrbWFwK5xKhcQmqywS2Am+LRq4hi5sSDnjTFRISjqD+\n0ciE/gHJ5FM+0PqhyqgHL9FHDj8T5VwojG8OFhiSsGu/Z1HNGviYwuvUl7Dg\naD+fQUP4noCM2eww6T9jEWSSSmftIO/42wBE0PoUjn/Hrgv4XeSFKij/3Sk1\n02gm5+JJQFTnfBR5kVIJLmgrqCqDytaqq0ixtYZhs9uCpncRbqIw1HYFdvs4\ndtgw\r\n=17UU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCo49BrMbN7NLCbDbFCNmuojJdVm6S/MoHFud7v5MXpQQIgXKSmGThGklwNdiRy0UdCMAM9QJZ7h0KaP1TN7DoDOu8="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_0.0.3_1613057917144_0.6924965837887025"},"_hasShrinkwrap":false},"0.0.3-1":{"name":"@dzlzv/hydra-typegen","version":"0.0.3-1","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"https://github.com/Joystream/hydra"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"_id":"@dzlzv/hydra-typegen@0.0.3-1","dist":{"shasum":"e1fe3b22c77eb46b7be313e87248282906daf6e9","integrity":"sha512-h5ppekE8IMFuhyhFmcgb84VGAGEJYCOsqHDVL27TL9umx8KWVPLeYmgd6bA43zsXKsU+ws1pT4ncCDz70t56tw==","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-0.0.3-1.tgz","fileCount":53,"unpackedSize":46741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJVGuCRA9TVsSAnZWagAAAEoQAJxJgQOUeRd9yWJW9zWk\nG29JT/Ny0o6m8pADCTCqqEO4ATxmAroEHHsIzj9acPgPu3Bm81XeV4jlAbXF\nMleD2ombBEHCRBArbbpXD/2+/jYJvGK4rFw671WENIvu86/rVyZI8kswKUSV\npWa4ACGg9bziWDXcaE26ateibztJ/5tT+ixzQfSGmgmMlQVqdpIyb0dFuBzA\nHg/g/4O+4l2+zryIRE+3hFnDu9KgEnY94Mo3DayKmxEOiCA/JY4f6mo+da8X\nTQpb7LkYo4QcefTbQLBi4zMEIJpRNj0Lz8GgFuKOw1SI4DamkLSS5Ifozivp\nPUexxfIZIslIeRendN+jZK7lyJlRCC9cl9seeVCUW6DpEUYNMywF+UzdElyP\nuSGABV83sMSlqHw3FUna8RlPjYSbeenay3QzPq0L0DofWT440Q6Vevvl8NFY\nREd68GVJKtN65HUfrxfiTjvSj2A+3XdLIwGpP1jXYH6g2QM5NuIHDoEPL014\nPmTFa177YF8beS4QFvU3ZIcGSnzWIynCb9shbe37Ah+fGYRSJcyl4kl3qos3\nLCa/C+pLh2CoIgRCBE694cv465dzjJsvD7onS+ME+wRZvzbwVqyyAzvAB+eO\ns80bFH/bS55sHyxDJwhjyhFgG7HVS756Mt1I8NH1t2rGbjwOPD5oElUsgFnp\nGzeP\r\n=0Kxm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGEuI3ArfIQ5gJ/w9ILEuKoFAvXrMgGak6/W4pRYE4PhAiEAlFXHSi5kHZKXCzNZcqg6eOR8NL8f0LES8UqH9+p7Nfo="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_0.0.3-1_1613058477607_0.19536428708865383"},"_hasShrinkwrap":false},"2.0.1-beta.0":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.0","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"3fed569f51d6fef6750b53017c72429dce23260a","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.0","_nodeVersion":"12.19.0","_npmVersion":"lerna/3.22.1/node@v12.19.0+x64 (darwin)","_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"dist":{"integrity":"sha512-R7Oze8fqiiMaz7+6EYK/H7+H10+LfbF424IOSSYkNtKevLMoKYe1s85IhruDiu6bPYz1K992x2wvPkaKKcLIbw==","shasum":"9fc260c86daab55f09b948b32c74eb60e3d818ea","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.0.tgz","fileCount":44,"unpackedSize":47269,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgOSOQCRA9TVsSAnZWagAAYloP/3AQEmp0fK9Lx0MD6GqI\nRC5v9LiQDFFmpBB1M32XwP3xyUa1ps7TK2TN1d4OGWXJ/lTMJvU8cFp6yPhT\nJ4B1Y59yUw+CpQB4xAVn60iIra4Jy2LCs6e3Wz2b0RA4k56Jq2KJg28gOQ5H\nmYZR+GnQJ0oNyI2rWsoJ4Oq7TK69G0HORR0rn8qO9jrXTubW4B2Xk4WGDsf8\n63x8ZCtJ1dlET6ln8/3DlKSjlpnRk5hkh22XzqONTwAw71Bu7CE+e3hgpaxY\nMj4vMHvukTVmfAmp9KQJu6HOTBbNf8Kg/9bVK94aS1WJhtHB341uSYpV2Wmy\nFnYSFH+Ip2JiRA0CL6giCrLG0sb15E5+89SB+InwvT3ZyDIV1g+OvM5XQBNz\n+LjB0lTRkWItz46Y7yyltOIYTfeFyKuDeCAhaj/jNWkjp8LNps+Szt7iD2Ue\nYUVduWyGycoe7x1HeS5ISm3LjbPic3phttx3mTEqUyXt2aN5bIvLu7pDr/+g\nXwAU9y4YOpJomQc/9z+5P4zG0cPXbGCEdHkiV2uPhBzej8Jm7+sWCh8Xee49\n2IJiV3rZThpJIMHXdX/fnqtVvN0vAsYX+qriL3pxYOjtMa1ntg+fPwlBpSHb\ngd7DhFp4jOYoJNT8Yc4Ua3SI1e3ZGGo1IZKK05LEEW2Su71ndog5SR1emAWW\nWl/K\r\n=H7kD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVWJylsTr1OA+z1mvbouqF5LUrDuWIm8jEAMdM+E3r2wIgfTSaZmDlmAIzYoqYOH5B2aedliFQc8XMldk38GEtuJ8="}]},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.0_1614357391612_0.3644177774902315"},"_hasShrinkwrap":false},"2.1.0-beta.0":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.0","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"729fd6a0a77940da1ecdd15e438fad489ad93afd","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Usage\n\nFor usage and a list of supported flags, type\n\n```bash\nhydra-typegen typegen --help\n```\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.0","_nodeVersion":"14.15.5","_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","dist":{"integrity":"sha512-8HF/deOfkUd7A7h+8o+5oUvXI98uK2PYcOcOD65l8X1JwLWRSVOdss/unlXEq3ynz3oBr4WNl0fPuK/p9iF1+g==","shasum":"11e5e45149002a36779ecc388519bf54afc311c6","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.0.tgz","fileCount":45,"unpackedSize":47611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPTbOCRA9TVsSAnZWagAAffYP/iqNMY5e2cIwdF4YNX4J\nFUWNd18eSffP13OkFHhwkU+OQcGBDu0McW6i7cj+TVH4JCD9+DsAWMG8KZyj\nxVP1jQYVkVaQl6H5gl50WQDkhq0jr0xGd8uMUuoOJtNn1p82/qSPcJqJW9eR\nMMLxymsQR2PivegE1OOjP6MRfk/HhY5orRr9AQvEK/ADuKTeaAoZ9z6jfiwp\nQLGaqKCjnmX+t1MoVY029x6XRiKHw+B4AtZVCTESNh+WxmbHhaK4MFoIb7aP\nhyBxGMh0oULAcX399a569cyNRAZHJVSUTvZk0fQq+tPildMjz9gXaUGZxyJw\njKyAr7HNzfQ/ACbepfL6he7mxdv29marxDlVAX0r3BQ+CXDD6ES6jKqDr+OL\nExK4RpLA4xrZ5d7dOvDorR8O5DqdnG5ebQRCzaNm+p3lWwT7uY3CYK+W9Y32\nA3q0o8Nfni2oTqSi3NRJETYw6oMQbfedjn7U9jEVfSo/9NSgD4I0vtHQGNh+\nTxpQQV/KKxvFG5JeaybbTWXxNdHpSkBZznMTvk/cVruAeWAUiqc5e666WyFW\n/FVYH1Qil3N6/p3BwyWHYuIp5aL8O6naZJ+c/G1bVdjaefaOJoiexSb9pysH\n41AAQmN/DsfRAyozFK3BLoqW9V3DkcnVuAuFu1ubVaZ+x4+bCgxgymJUaGTQ\ne9Ah\r\n=oklu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBMaBweZ82Y0EfDgkPFLsv/nLp0AL3bSbrjeeIA7GtTnAiA2ZpnXMVhr/cy/8PECOKjly+6M0gPKOq1docZZqNrX7A=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.0_1614624462053_0.20866430354172838"},"_hasShrinkwrap":false},"2.1.0-beta.1":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.1","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"e45fa8db3d09ae5e7aa728fae7b4d8b87df29cce","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Usage\n\nFor usage and a list of supported flags, type\n\n```bash\nhydra-typegen typegen --help\n```\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.1","_nodeVersion":"14.15.5","_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","dist":{"integrity":"sha512-IzRJodVDsunRUPBLsR0yR1pxJu8mo3ydAcWepOx8JjRf/OyOFFt/ijoe32pa9DTxggNlnL/nDpo8NndHA/L6Fg==","shasum":"9df9876a28dc9a7645908d0544271e687c6a8c52","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.1.tgz","fileCount":45,"unpackedSize":47690,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPk7FCRA9TVsSAnZWagAA8HAP/RVFMO2dlp5YW/LGbcCx\nMWSpa2focxFnAdCLG5+XXl2P96ICfWVNdE1AjCg1bOxmM3RWqb2ze+NubCaf\n5HkWX94WbQthU0/rhoaYxaqkn3rUmNz7rIBp0yTd56HQ2xwybHwdri13019n\nXWweZzkhzMXtqQFxrZdXcqHmi9gV8aGuGa+0Fag8YBZMCVdepsw109rG8s05\nLy/q0a/Qdcnp3rwL2mEDYDfM0PyjH5UpanL7Unc3wWjlQAaEghLGxBgfVOC8\nOAmXuyeMop1FvLlprTJ95IqUJP4E79Hom2/ByBJsHm68WH3iMnlCObnI6qsr\nGBY0cn1IH125ME4utQvUQxtflbfNqq7RvfeDgQTOw2sxHRpj/NDudolWkInR\n+luBPKEzoAMJKJHAZdzXVxrUpHtqTWc8D1Siuy4an73qzqnDs5U1y4+LPFCG\nD+/Jhrg6smsVV/IIW0igUKK9boPRSQV8dOPscQcRa8vGP9xINSI7PQfqQuY/\nnMNdaPAItOkg4CzZ1mF6ODWniGfgRCjkpi5Pm0bYelSEGDompUzlSaKC50iq\niXpbElLN7vOniQdDI8LF/8bGDnw6wui86J9gE+Tp6HKka2v2xVUCJgMOjysx\nMd4UEsq4D/JHIlLQxrpYxufugnKRpHq1WarqSIokHPRpkeWmVktUc+NOQD14\nndhU\r\n=2oU/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDYFqRwAODQ5mxtCgl+4qAb/P4WHdWNX+ZaTa9gkLI9IAiBW1uRMUrfKy7Z6e3Pq2lY1fU8BgeoVa0C6fUh3p5nbPw=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.1_1614696132574_0.7581397360131816"},"_hasShrinkwrap":false},"2.1.0-beta.2":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.2","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"22396a0c26038c67beb76063a82f522f188e1acb","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Usage\n\nFor usage and a list of supported flags, type\n\n```bash\nhydra-typegen typegen --help\n```\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.2","_nodeVersion":"14.15.5","_npmVersion":"lerna/3.22.1/node@v14.15.5+x64 (linux)","dist":{"integrity":"sha512-3/m1bLS1I855gkX+8z0f5drmozxla7tzXU3FcnXTfc8XoPyT0dtDhqY9YjeiE90BNZ4+2Zz20AFJxgFQaNlZCA==","shasum":"e71a91664573c73cd0e236441ebe2e7abe39293c","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.2.tgz","fileCount":45,"unpackedSize":47785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPmYfCRA9TVsSAnZWagAAXl4P/1VhKJO5Nwwii9UlP+xV\nuju2GmCdbuz2YnFHIsNuLw0wDzxuwUg2fKo0HTkYjbWcSH3e7F1JqRJa/akF\nhplffoyZfOescc96ntaFb+tRmUmKvPYV6DV5O7ZEtyQDmf34M/FVmAzoolD7\nWMdqH9mGW3GwUjzgx9yRt09oXbyEl9fnUMJ42i2OFCYcoqKPTgRey423e1cm\nhlYoq52+WI3ijzSE/MVcoPlWfe/ZbnxGj1iQCX6CqocsCvy0Bb0AbygzxHs4\nrODTSDCyz/4Zj8T9KEtMBmDvCrdJELcmrLM0e9bHPhxT7Hyk/8PD/9nVaF7p\nBD7GLs4xRN47TBfQj+MT6lgyyRyAkG95WWd0/dc/PAjCVy1SmzEooWyalCes\nSoSgY5EViZ1Y8MbV5XGmaac8Ln+kNCLy5BXNuA4aiemrQAcPjNRm3RheQIvB\n4XxUArOI8/JAMdPptYGkJoXUiGkddYpCD95muAVV+eYs21jPJxJMEoKvgn/I\n27vSKyku3yFiTklFDU4o2NR7c0zVwymqLkG9p5734E38SoY2CpeQ3y+WX04+\nBhdCY/B59piP6ZEIa+yi2IMQc6Ejs2pidkS/Knr4lgNCtnTPwwGxNAFFWBZ3\nxHRTTggoSObq2teOE7yxtd2crRkI4s6/PEP0XuD5uKJWCxlw9Tn3pdW3Wf2H\nZheD\r\n=MAt4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG0H/0bUHzQfbTO2UC5LI039warwPLRMVVD9cPMciTwhAiEA6aCpKxYH6T58AwE5CwU+EJKbtY+KYulYkKz+SVUMiqs="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.2_1614702111222_0.3178027555580534"},"_hasShrinkwrap":false},"2.0.1-beta.3":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.3","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"b1d9da6705a157cf13baaffe43c60a551ad71631","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Usage\n\nFor usage and a list of supported flags, type\n\n```bash\nhydra-typegen typegen --help\n```\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.3","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-x7Lj+zIM8FMkK15kvWjCLT9zhQ1pI61TQqVma0rSio9gFbkd6a2NVGGe36+eHwNLQL+sM0WhYdNq+twA/6g0zQ==","shasum":"61d6efad7995668cb20c4517660bc25b0387dd66","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.3.tgz","fileCount":45,"unpackedSize":47785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQg+mCRA9TVsSAnZWagAAZHUP/0/giumhiFOAnHbpUNIF\nLOZytVeKjK1317FIB7UWuy7WyCVTdIaCbpCx4EuZu8+PFnsPz6PJGcVXxQls\nJyiHaJ1Nl19d8n9I08wg7fC6h9jgYw6o/BrpkjYSPWGjCDA3Ne4Ruybn7hER\nbvPQLRT1TbhMEcZVjCCN90qWpt4UfsSfuow7gJXotlcWgmCwK1Niv9i7qKo7\nVAP7JjuHHiXxg16ta4tIkPrZuhF+Cgt9XZRA/74WN9T6oKRtFyJVtgNUbVus\ny34bwNDUCjP9xh+nFuAMwyhESPneiZnYi7a2b5rzBeQewNymyu+AWQdR4HWX\nvpLD193BoKuFggvdH73fE6B57V5v4FU4+8N5Bp66zc8JFLt+HKJC1rPfE5S+\nP9MiDJnjRTyLurhHiqJSfjjnE48X8DJXjVPFQnKB/+FwKCU6Uuib6hsoa43F\nXJfsSCYUBiISNQn6XDPPNXFioRqd4ftNGu9U39PBW0TGAI3s89Ucy7oHSPqb\nUfrhhgd3EjUzQOyByLzUThbuBSHazrx8HwqyRtMC004OTKsot7VVBF18WvMG\nqmtU0vCAIAtptd4wQ45gW7hJPybri9B4sqB3M0c1Q3CD05uetvpMoCqQxRy+\nWdLmkq+7xI4lljslIrYbtAHlEA62DVIZoiR5o0CTlcipGBqTYF0sQczGf6av\nYXiD\r\n=loAz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIArbGA3qJGBHgEma1OYvFfQ4Amx+USEveuPkgiFDCzD4AiA4gONos48WKkOZatifAy4dz2DKmIrJLtTkFjOVldeDlg=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.3_1614942118554_0.385458603489808"},"_hasShrinkwrap":false},"2.0.1-beta.6":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.6","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors","@oclif/plugin-plugins"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@oclif/plugin-help":"^2","@oclif/plugin-plugins":"^1.9.4","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"2f28d0052acef7ffdae8225ed90a502d3d7901c2","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Usage\n\nFor usage and a list of supported flags, type\n\n```bash\nhydra-typegen typegen --help\n```\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.6","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-feq6iyVPxZun/Ra8E5oxAOSnCx5mgJaQmNftR8f8XxB94rTlIPuwUHeJZvlNhGnmmCXtqbxWmFVm+cq+aZB1hQ==","shasum":"c047fb3f5d75eea8093b81878e63fa1f31414d01","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.6.tgz","fileCount":45,"unpackedSize":48525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSNMzCRA9TVsSAnZWagAAlmQQAJtreNwpYkZ+s3VMrcKc\nrV9NFVB5Yp8MrNTfcrhKHkOEFhBAfi7nU07MzZML742+cC1rVmbCW+quDD3Z\nrKZ3BK5/9QEDKsYfJ49oBzz27uPma2abonb1ITs30mQX7f6HbcfFFJ4zZx3x\nLH8Xz9qtKCaoswXTIFEu8Htyiqr1YIZ/RrvWLozMtm2zW4iXYXf9nYGd+RjS\nrd8WTgM/H3xksd0ddgscmUEE1fwOjgQVvX3r0Eie+CtrlK7o3Smi+nOZ+SO1\nTm8MC5q4xDsR/DfaAby0QXR+YI9Ebt+WOgliiGpj0oOB2jaCIVvXmgtt5UBn\nqUjNtDcev+XP9MQNIGGSNqfVj6WWKIqH8a9j+N9ou9yTOWjxBKiz9G7Ks/i5\nURthis+8vLSR6gWymmMDY+wd0QztrYSCcnWtKhAA3etUBeqI6szJJG78avLz\nmdvnsDQ43IL9VxwajGf3VSEu7s3RAeO1Px1faA+FpK9uZ1g/oaFiqP0LLjdw\nXDntXpS1C77+wVDXUjabiX9fs40qkPhVhGv/luundoSZVYY6VXJHikFPt2BG\nvdY2LOhmU5RPIwCMEqoLQuVRnH8v95QRQafBSYJVArtdiiTrlzYgAfZWScPX\nkU4R2eVaX1kQG2vV7S4aSlRsgc87SoTU4t6EwRGfX1vbtcohwQWWpAv04OuS\nfmM5\r\n=lksX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDTsdesNKw6WPuo678AyrO1/QJ9BSoZ9NTOr7LRYz5HCwIgIGvRoEi+pPSRVp3UpfWZx5LnZBpdH6Ec3BveucvUzL4="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.6_1615385395048_0.10637172449357313"},"_hasShrinkwrap":false},"2.0.1-beta.7":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.7","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"93199f6e1180d988f52d1341dc35334ccf3c5fa4","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.0.1-beta.7/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.7","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-Nh78yVh3doceNLCUvtT+MjFwgU/jlrUIFe6+mx+WWnEgBeAgCiS8ELVZ1M4OfxI5fepf7g9CxrgPMuJEOivekA==","shasum":"2b81f2275ecc19220b9bf1c5fa9f62f35d4d22fb","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.7.tgz","fileCount":45,"unpackedSize":50684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSPHKCRA9TVsSAnZWagAAupsQAJS+e10c6szfJBnVpupD\n1HO71AqBib5eS9W/jScwGpK2wBc3scTnAqkxQ1GX9VBZ6XIRUKBiKwmzR3Jj\nQUEUEBeTEzKARca+m4k8PvGgK8wv3JA6GIw06YxmuY+bx16a09Hd+ht2fi1e\nbGE/jqG0AEMwax779nz22ZxpIzKtx0Z9rMJ7AAFEP8itHt1EOeMx4FcX+U3Q\nPqyaYXn6daJcHtjgFIz/5IOYcxiY6N8Av1KQCdtQubZVLy0vuJC6NTRzFt4d\nvLmjPSXk2W6u4Nrry92AbGXHutLhq+EWos6Ixo6uUCAJsBrcCKNh7zcuB1sE\nrr3rZ+tFkqmjwTLtqFHzi7orPIuoxG4LnEObt+vkoEiHlv5R/PxUuNXE0YZv\nbSLGDgGc6LB8jAPYNEfqBBPRgvo8wARr1S61qQRHPuWMdgx60y3fD0WHcVxM\nKGeOyJbPtAOGFXSMAesQvFoM7BiwTrbVvjIxICWx5IPR7frI7IzjCUqzK+9s\nECJp+L/Rq4puqG5FgJZ27SudZW4nTFt4wrhBAOTgNQPipRXWdjCJcGrTlEYn\nCEn8SdIsITdcga/ja4OVWtDMxSwZdFD26FUuVp9k3yF7NH4EHm3bw9zS6dBD\n0XYJsZpJq3pQ+xsIlqjmBsjqzvBac7NkbVeOxi0VlnXXcsit+niwykqKvknD\nV8JT\r\n=PRc1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDPk1V6gZPMqC0nWrhfOXwlnABLfbVRp5JIc1umKO1gPAiBSK8Z4HKYTPKYHQuSoKa9bqD96/BC3YK2FovA8i4BBYA=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.7_1615393225524_0.1933675697010251"},"_hasShrinkwrap":false},"2.0.1-beta.8":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.8","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"1bc40d2f336632e78e7988d71f7fe01ba88764be","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.0.1-beta.8/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.8","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-iJsuA67Hf9bLGUNQ/npr5qXSoZM+7MSgUBEMZQtpGxmTMQyuRzdRFh5ujnBEZna4ZfsquxOzt/4KcSutW8VCTg==","shasum":"162bb9b852a3c5cbbffe065511db0a79dcd65978","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.8.tgz","fileCount":45,"unpackedSize":50961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSQB/CRA9TVsSAnZWagAAJ5MP/295mKr/SyLgCMCf+sOe\nANeoZi9oAcguDRDw+/MjtlcQX2w82ZwHhc+ccmDQV+wB1e9i0vt2RP3a1jZR\nrvIeLijzKZTdInr/XkaQWLxAckVi0//FZaNm4AsmOhY/IPUhPajQxq0fzg6b\nKlYArlu0OikL7+undy7VBg3Aa2rJIMlAnTMYNDIOm4RvAoSmKsKHr9NexZ9Z\nucB49jT+DXknAXUiw153dEt7wk1m9GpYj/jOXg3fxKovFyZ5c9RhM1zqF+SH\nn4h7qJh0Bt786le0X3599acOJkH4bJdscTdT3aoM+QamGHn8OhQuk3rmAtnt\nksNEZaCuMvbrvRbIJr5L8osRDHUezZrMx3IFuQ4hwSgWGYAbATFpXXVML0Nd\ngOvjNftJjLRx9VW+K4LS+ynQj9sdHoQNPtNemn4M12MpOqb2OEYBRg8cN7N4\n7b3Hiy8Zv7drCTbL2xJPrxudDajyQd6HiCdeZL4JLHlr85xRXKbxqhJb2VOH\nR8kzZZctYfU5ElBHoMoMAtx5eBdCXxAumXB5KhtXCqfHUVz3cK2TUgoA3NGZ\n9cmW0pesl0ryIMC+Ijf5MkmB85yaDhdm2LLJlfbnkNIHbCek6Sx6bdvGzIn4\nTI7P/9dAQlJctjJySnJOOTiD9uKboqRdRqyvXNQ7I17O/xKbgySCFBmYHSir\nkNBN\r\n=PHY0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzja10HfsyhRMj/9Tm1xpiaIHiUg1N0cnlKyNS9w9/UgIhAP0RU5Vqil/qPMF0Rp+/LPtCrJvwZFA0iye29eINSILm"}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.8_1615396990987_0.045225029774157655"},"_hasShrinkwrap":false},"2.0.1-beta.9":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.9","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"7a2537e44bbc4f634732e92094c5d0f05d545a82","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.0.1-beta.9/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.9","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-22d1vcc5cJ2hYGlHlXznMRK++iePaiyyp6eVdC/+IQ5MZj1C2z0jovB6ThwE2Q1GXH89npusW4gRUn+E8BNVZg==","shasum":"cd24dc5b4f7619d30b18865c01ed40bba043d680","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.9.tgz","fileCount":45,"unpackedSize":51227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSRiqCRA9TVsSAnZWagAAbYAP+wdDXB6n5Dia/OJ97ldr\nsnA9KLy4adAl7XWaB8frej/l2DiAEVYh9DO4m4A5/pT2/3IwNhE9Di1LWaPV\na3llOgWdBqUg+A+zz6vFEdz3vv6GQC4fRhTa+BhVHklHHbUAcGR3LWnkKGLk\nbOYP2jFqFCRcDsu11fjRRL2fDfm2126VhMHeqTh/2CP4NrFVR29UlqgFyJLQ\nsjr1C6gxq4iF4ZTGjFbZaa6ZWn+5IKrFrQEKtAhUW/zH5onJyiuFQHCbjRz7\nleTV1ybLjrK7Vf2ksaSiXGO9iBm0DZR4jZQDfCRdXVfJ7QdX9vnYaUEVjykv\nRGHKSV6CCTm6lCl+2nvArgjalDDuI0187wWYQxNmCXnNbDZYxCVF5tZplK2m\nf+pvlPyAs/Z41faQdZDOp4SYE/SZ/wn7oVTowsCfPPYN0PGxWkfY27o+Ut8l\nAYj20F38q01chZHJnj7fhaQ1LN0sI7eh6S58uUX5kjz1BG2z4YT4IBKHl5OM\nphiwGUNbooNaFepiyvdILDNFELc6E2rRvtUMjFDouA9dME3VNO64BxOsPkx2\n1WBhWOmYBLM43gupwxEXgDrXRCm/4qAfxljgYFoKXAdYqHgktwiipoBuaU7Y\nPAEVGznGZoHQ4MiUv50zLQzfgaz8/HYNm9nCN56HPEEdYzUL8gqXR8OayU9B\ntqOY\r\n=7hp2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWCehKTbDNjkBj3GpRajv5WLXWV4snqzVZvfR/b03iggIhAMX4QEMwWmNOcYTdgamGQwYfOS2giN1gNYdGNKvy0ibA"}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.9_1615403177623_0.7112901380063528"},"_hasShrinkwrap":false},"2.0.1-beta.11":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.11","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"6115f897b7437fd99c839df8fdfffdada10f6d7d","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.0.1-beta.11/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.11","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-U11pUsukihj5/UF4/bKZFkg+FNGWZm/sGsHIDjOGGrFgC5kpW0BBNpL2VYkqw+i0fc41ZVvCtIPxHO/07zvIDQ==","shasum":"9e802b00b07df38d0088f02571a7aedd3dcf8858","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.11.tgz","fileCount":47,"unpackedSize":52800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUeHVCRA9TVsSAnZWagAAs9YP/00K/Bt0n6+uwef3Oc1f\nHj/e7Da2rgoty+1zReX/0lmlMHONCo33T2f++T9odS8YFEgn6WCNwfwn7g2B\noQRioY8vesssDkZDAI9NIF6yJ1z6x7V/gariwvzhLa7K+ysHKer3LFsy4wVc\nOAbKpQc5QzPyOVf0/081MHZCSEiBFOZO9Fmi/WfqCazi0qcgl8gaz3mv/xqS\nbskAvAUDSqNHx5ffLyRUlFD2lzBLwIQPzgpPTYWkQrzIpyY+f1LWr8qxj0g8\nCWTKeKOCaihXCm32h8yx1KV+t5e55FiJSnNk6anvrNenPuN4NdMMrtyDJFZ0\n95yI2BdOVJd6SlX3BkRd3uF8fgy1LKXw0tuai7H8BlzGIDIoxIED8rAMUmeE\n3fkHERgshygIBeKAxrtKI8wNU3U8qYBdA3Vs/EqhyCltjPjbr+jXbdIT/orc\nX3/8KjXUwhkMWCJn1Aso2hPQAHF7x+GcQRq0r56914i/2rsqTLMTO+tqbzEO\nqxbK7BOlBYFYu2ct8qNI2mYYXwTdCScLNscEn+4hBIFjO8JC6/rZmepnI9r5\ntcVc1Oi9W9pPtZRceFMDRzPRZHC02di5QdeQoSfTMtjfjj/SNibF3X1Flb8K\nSYe6BXZxMPYJWljXtoVPU5cSuvJrC1VFGQMh4UTfwuB6GHycyn8f8hAnFb5y\naahO\r\n=gepu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHWzSd+ZR+h2AMTk4oXyJsb7KEjmVwYRg1mOOqs9RPeGAiABKvfmVXQGZOObR+wVV1v6A+tswgkvFPlUI9ZEsog4Nw=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.11_1615978964521_0.9828552673907838"},"_hasShrinkwrap":false},"2.0.1-beta.15":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.15","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"6b044607000d586f7ddbb87017b68f6dd3497fbc","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.0.1-beta.15/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.15","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-/xrmve0+DCP7HDsN9r/z33WGjMqq6fZJwwdoKX3+0Zdj+MSaB0sQu66sLQbPHe74k9x+6oRft2/kLQgFy2IgrA==","shasum":"daa98df326d6e4871e7b710350c03ae076ada768","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.15.tgz","fileCount":47,"unpackedSize":53855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWJqvCRA9TVsSAnZWagAAoNwP/RjjbE7o1kXxZwyca7xi\nL3v46p8ctJizxY1hwEY98eDEx8HGNO1P4fJh5UJGRDbHBVJk0e253MO3Q7kf\nX6A45yC33BKuXZl9Y5IoNr1ebPKgnqHgWM9XAjOp715gd48gwBdiBPGvYeC8\njuquL11hP7eAUO7Lw3QNW3Uz2ZOqxv6+UoIntdc1NOzjC2WiQr+NonIiMcC8\n4zGZOeEkBfqCqsguyIsbCwbRZpjnqD/YmjXaVFCN6zUx617zR0ruYXn8B2Ar\n2G8pXMhZG21jSGkzwBiP62hj+OnEJ0RvjWvwHVcWfsBjsOl/tlpuw0iPMGPN\njmlIo3FH3Mi3HTtRSZCWWW/jdiInY5tMOXyxhm5+KSP1oKk9cMwUNiM/tZFg\nY6bdBwvTKDiBXc7p8wAvGsr0lC8A0siqD1xgi365QOfcfoM+lhm9S9rzaHGU\neVDpA6qf5RPgBaodRPcYVBT7GWyq/yjeqyxHcaBxJbl0cmls/AlW6pfWETwG\n6ML1asU5M5fuK4xwED64OHuO3IRlUGZbPCpd82BkpzSIPJq+tueCUc07aaGE\nsNFKFC1ejaBz7fwCcEgDAcOnOAPnX6dYVb6P9OGJUbg4oliY1v0qcX8Q+yAb\nP5Drf/zDBpUqkTMCIlYsdW24u6MYqTRBAdYwQSOd3eAUZIfdIvPMaTdFzMyd\n+7D1\r\n=twPB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICbwEbTHRFrkaDh5n/vxtAh9+qliqLoiswvhXn6hI6E1AiEA7FozKMJ8tJHONiX6FnqRJjQmPkKbNrA5frg0MJP/I20="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.15_1616419502850_0.3564755656853291"},"_hasShrinkwrap":false},"2.0.1-beta.16":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.16","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"b31aae325356e69a0e1cb5014db9b1354cf4602d","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.0.1-beta.16/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.16","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-8N5cpnUtuKarFTLKUAtUfuL/PTvgGW1k2k07EwthHFdw/JCuCQAQyUWAcwJiOZbXauQnLpIvBJREH/b4hNArQQ==","shasum":"2f82dba4587b0375a39983ad3eafe4d18e46becd","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.16.tgz","fileCount":47,"unpackedSize":54133,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXFp6CRA9TVsSAnZWagAADPEP/3T72/PSrVtANZWvNNpI\nwmywRjV0VK4ECKDQjIx26a/BZsuo6Oal8VIKlok5Iq4VkmUgZTuJFM7250Jz\nxJ3BpKUfCYYiTXcOD/oV+CZ9i8M+lbI7RrgbYOpihQEJ4+yYMhE91QdTcJD0\ndUhWyIuBeksh4JAr9AxzMNCHUjuHzfETzZw/lDsA9dYByWpiyISbRVMeRqJI\nsG1adr94JWBPzQN+0KEq/y0VqAOkzhnIvDTXjrpNAyngTnvGSfnUI2pW6tAI\nPVPWbc8j99qQyNHnXbD5b+WLEKdw6mc5H5I/rIvr5RHmDExKXopZmZqgXjw4\ndNNAUpuOEiTyM8Ok79vLvhk7iz+W1/x8lFz6EiVWmrvfF31pRMjSswOv/bAL\nWpBcTuy6xkKg3fdDfkEJ3UVKqj6GosvTzppwjnF9PKUD47/e7ynUWN5LZEF4\n96PMiFUGp6L1OwoPmuZ+cNpSjuhe+iu/outjoXWAlZdj6FJlvyF4kDdu/Wnd\nqM7lZC7YlKC50F4bdAgCngZhr2XvJ8FQTBOkA4QDSyFwEh8qF3U0R/YTpPT+\na+zU7gQjgFuyBSWjDqhLYTcSqATj80E43yKGWOLsTnM0g2HbNxMJnYPv4P5y\nZtD9xTKOzUxfF59ov87+wYq5Vs1mrOu/1c3GkV7xRA+2uxmjvwCtcwM7fUtZ\neGeK\r\n=SiU3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCU16qo3Ql61qdT0GGQHl41A5Hd5v2nNs3Eu9WSxUT4mAIgX+9WB1JxZ6U09Ighyer7IrCXlUyGzucHEfgvKPkE5Z0="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.16_1616665209660_0.4433834482532448"},"_hasShrinkwrap":false},"2.0.1-beta.17":{"name":"@dzlzv/hydra-typegen","version":"2.0.1-beta.17","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"^2.10.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"2e20c8188bcff75dd2e10dd39891a4e95db8e7a5","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.0.1-beta.17/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.0.1-beta.17","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-NJH8orCtOTvXf58AohyXwCbvhrkCqETAZbvRFqRmNslY3t5kRHfBfrhonN4NzbHURhufXX9z9j8+rt/9doxkPQ==","shasum":"4fafa31254acb65a3e62ce1c114aae77d6e030cb","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.0.1-beta.17.tgz","fileCount":47,"unpackedSize":54420,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYerSCRA9TVsSAnZWagAAd8sP+QAzv9hzWwmS/t4M2i24\nnPIREHOtUhKt9p3fWVtgEN72S42JiR98FdrShQWLl2dhHNAQZXbG91L4atHB\nrAEXmo58H1XJYlG13dq4A1xwO6rNiBJ83ZOly5tC+XXJv8ZUjngtkcysq6+B\nYjCOqS+kNzSiPOKgbgC+bYUH/qY6zRKKk6iYeF2MXTCTHDAndLAiDJF8wy2q\ni7m+pQvq2QZWIjPPkwAGctEW8OaAf5WUqeA64s46XRiTg7DkxYbeFldOo9+W\n6IS4N0rb6iIIiHWQZlHyfri23We0KPnU9E5bej7bFjnAElx4VL0ECgJUnxCi\noJ4aPzLOG6jvkFqFxetTscFBU2w/FVqDtb1d6+6S8kNoPGXvhBVrj1/PLEhK\nblUtvIPYjh8E9mLsYmUebL2Qm98AiYrxxtOIjFyTiFzaAXRZHwFWw4rBIpnH\nqnY+RdFx1Dxi5Z7Oe8j/0g12QbIenoBCC0nOChlxmGxB3KoJ2B95TWdUIbXl\nGV9Jtm6XHQvZqjeLSUVxCNk3oAbBcHFQvL3qYj4r3R589eWDV2QvGNndPTh3\ntXP0XbzWW+REUhbhAQsgXFfO1r1SUqhtOkwB7J+VeKYXdh3RVmHGXvtusvuu\nKDuLGgXQ5LjUXsVVQriubUERfnSasyCQyOb7dBCwyX3C0pbqBeaaJ597yVws\nl/VD\r\n=8b0+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCsw6Waou6gh7G1FPvxB+pObRdoUV0ZGXU7ESgDGDzJpgIgZ2guG20hfec/ClyQs0og4QPM9xbUY3JPwMDN7lCGZNM="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.0.1-beta.17_1617029842082_0.6654541638686151"},"_hasShrinkwrap":false},"2.1.0-beta.3":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.3","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"4f1e3e5c215eb188761385001300ef6ef360bb2b","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.1.0-beta.3/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.3","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-aGCngthW85+IvbvWGyqZ2vgJXX4J2lFIODTuP192IQRhmbG+5eaVYz2eGnWV7KA03itge0zAgSLFplACJrTBkw==","shasum":"e632addbcbfc1e3e68253aca55723b9bd438dcc9","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.3.tgz","fileCount":47,"unpackedSize":54977,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZIgZCRA9TVsSAnZWagAAqqUP+QA+LsC80bZCtsam8RTh\nGzJzArsVxedX05dIC1UJAcKwC6Fmo75D+LQOgrJpW7VDiE0ID3hwSkymtGly\nmhAshbdPrTprB2otqR2Mau9OcgCijzXjp4qQqMZpLY5JuZIRICNjns8Dp1Ud\nPZdKAIUPh4pLTJ4asEOcMIdblVv9SGV2Bq9jrHByHIdrryWQWVWB3IUFwuil\nOIhJXGavkTTj5acoH+jewWR8aUr5CMeAdDN/bJePvxFX314KTRnhO7hNhEVk\nEkFuJE1NeVY6TomW9HGw2yGrGUAw9JoTwLB33h9n9oajK1e60gouIPZM/PUT\nvJTYqQcO/hSvHWugIgiBHvlRhTIn1xZFvWdEI7btidgNfT5/i7MbZuoIfir+\nbjVI/Ax6H5aGIz15VHxk722uK8NycK7BE1SPq9jvCpNuoQuCaOhMHTQeYCyc\nQZnpDCKlTiLGiZjw4rrTBZC8U+np/8SEx4ddAxRkrskI0ufxHJXC+W8Vxwap\nKkS0oNeh5lXArKq+sLC1TpOdnmsxdpakZce0/bgB+rFvqf2R1uk/lrS3rXvj\nN35OiKvoXigVCCcBEt7t1izh16Od9VawdjKkpE9Rs4tI20Md3cUqmInsPxru\nALfZpLAe/1pIe+sHYH79axVqWRQ1qUZNOeF3LyIaijyd8+0pOwr1BjVoXkhh\n/A6z\r\n=cdT9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8QmqMgKz/dJKcg4oYzf/khbviVSyuyIUqcG9SNGeQNQIgR+IEmPi3vLv+n+xtZe/FHOFKsG/OImyQbBP8Aq+79t8="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.3_1617201176723_0.26675674688035445"},"_hasShrinkwrap":false},"2.1.0-beta.4":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.4","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"ab1664abe364514928d3fdce3d0dc04c23b95407","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.1.0-beta.4/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.4","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-AmXLqzTPVh2LrxtAyjhE4AH1Ey4zlYih3JJ3pHPK5cGKfkShHkxiLIbzLcgDRcl6rtnjyjqB0DdDgG07fC0qIw==","shasum":"1c41924b6481ed19f942faa3beab4403bcbb921e","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.4.tgz","fileCount":47,"unpackedSize":55246,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZKCXCRA9TVsSAnZWagAAlVEP/iELCWQTn4P2ZmGhEE4V\neqfj8idtmOknXFwnWfeIJV6HJsnxGjasdv2FjQnNOSwT3Ycu9DH0+K4NseIV\nVG6T8IjDe28Pk95029UJ1BEK1PlrAar5EMvyjM8wYUTnqqvbuQCujz33jHvD\nTc675dgiktyz+lkswoczu0pfkUDzBWp8IqFh2Z3C9MYi3mHLU+hcFlOtyGgn\n1U9XAQD1Hw4tp0u/W/Id4ZO5tHqHEQ8RhLRgEpR817NV03Wm2EXuXa7Pm+dR\nwTwuE1YCewPx4My+ws3rTlYpyyd1jL+hyNED3wlOcJEDNek+sQdbgCmI/Bms\nafyDXVo1cJ1zGKTdMUusG/xn3iYaust3JLxXbIUEjlteo2bGWJZSH7Nwx6ji\nlwc33BMJ9JmJmQwdC/UGF6wrTzvvTIPR7LN1Z+Di+LsSFOwo6NvwTTSp4Q2K\neqlfccHDALpZ3dB43IJwKUJp3X5mvcx5ykSmUkogAGzxQQKRoCSB2vuiWeps\nFPuALOatY3pJ2s15NeT3geO/ku7YOVA+RHMQZ4FqILWwSFYN33omTx5O44dQ\nno3T7u+9yKv7HZcyvL4WWp3PFW9wLneOnT0fNl/heU+muf9qBcCv4qIsHp3y\nPesg7x9KJ2Iy0vKiHwNdJk1m0Ek7uM0Kg0Ua+aPY72KsGhxVCQ1n81AOlfoA\npKrS\r\n=YR3y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG78UiVf+/TCdH/rrUxFikGpjs6FwO9XrUVtr4CXe8vfAiBhJHar188FZ6xY1znJp/a6qVBvjAVgSGJbCaeu01mCWQ=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.4_1617207446729_0.9853580838697151"},"_hasShrinkwrap":false},"2.1.0-beta.6":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.6","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"8841fbec9d64920c112d6b9195a0dcfd517049ae","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.1.0-beta.6/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.6","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-pSom/Orvy2Kb3UwLA22FyEeI8uQJdk+CpQN4MpSnJl25fcF5UWZgEXdXUwdR3ouvW+4X9x5NenmMMXOepu4RNA==","shasum":"ffb052f285d4ad73d00fd2151b1677a4d6e9f6f8","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.6.tgz","fileCount":47,"unpackedSize":55753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbrKuCRA9TVsSAnZWagAAPdIP/0YPEFnMKFqQBkI+ogAC\nUxWHeXfycBuv+dztZ/nVzJSEIXHg8JgtGh8BnAWcHg1W/5TSpZziD5iiWUGH\nu5/C6kRv6v4ej+UTQnJZh7P2nzSNp5NkoQc5l0GiYBGoHRjWj0Uql8JxcyBC\neocrx027pR69v8jFG+ut2ap1g+r+DjvqdyhIvV+KvRm+Knk8bLAYEcAw9tiL\n6E6cmHH061bZW8LxXw8FDYoJoXWsMChpKpsgZEfg2Hl2nQGYg3s28KzgTxZR\nkot9tfjpzsXXHwNkcDEG5oXMDNPgmDlk8W2wzgUrIs4Wxr9t58DhZAgNXzls\nwMm/Y7/ZW04BQjUpGnr1uqkeiDxG6IX1G/bpzmuHU76i1ITfAXwLvgOTErnE\nu4V6+1VEbXL9oM7UDenBirKrFr3wjxfpoKBoa8YybT7E/CULaRw9lLR1ZBWI\nt1CV1npBOXA/Nlml/s3RqJC3LBWkxE71MyMI1zLBaiXu4XW+MUFdB1M8KhS0\nZQuizI8Whbhox0COB5x6kw4yV/jH9Qfbyr85QLDZ5Cjhrn+QKnsvTGVr1NXq\npA+G6Jei9TCZce/T/CA3UzM6LV3lezUZ+vY54dKk0ctO1M4pq5xPdReFZGF+\nNEc+uCeyWT3tbiySbKbb0ku3DiiRUULz2Xso7rFIwo8KW61ghW/yJrb5tYv6\ni3XW\r\n=+FLF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnmSuG0BraTQtylM19Gv+yoJxXvqUIKf97qWd2tclFwgIhAMJUY5fx8SzypcEJ9mJj8lXR29s/KHcMC03yV2O+qTJv"}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.6_1617867437655_0.09937754442552915"},"_hasShrinkwrap":false},"2.1.0-beta.7":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.7","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"448eedbea30109e86c80dcc11faab0826c39c1cd","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.1.0-beta.7/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.7","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (linux)","dist":{"integrity":"sha512-PwxWmLVvmET/58zZh0VnM7S+HH1/5ozXLnE/l7HrvlBYH1sQms5hGYi7bnRGGU/RKCeXBojBNLsX6YIg7b7yGQ==","shasum":"d08fa39b031c564eded7d7d644601468ebbf2f40","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.7.tgz","fileCount":47,"unpackedSize":56004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbxfACRA9TVsSAnZWagAAQaEP/3QG3ncSuSCdY6dvO7Lj\ncPhvfweJSxoyn8fHgQpcOHoVfxmJFwrj/QyH9IIWmA5TQyIzZUeA1C7RRZgK\nNLy7H0ehZxNNsGiQ5t7AXFpec1iKc/BOe7JdCyVgsqAC0Vq9t8YmTvn/u8pM\nzL/nE6f9WWiP5tRJhcA9NZlx+bwSPf7jcjKwhhhD4zrt6+AA3eUFK7Py9hTo\n8Sh46MDrDJsHDPoqGJDJ8GZo9vo6D9kLbBwyChtkLQa6lC4N0ueUtCeCfiPk\nT4uekc7QM2Kecz9Xt0vHsfE9u1xrE5r0D4gBg7oqQJxRKJwKlLR4F2jAcLUB\nwFtv1a4AgaaBNrTOWf33vqTxPA4XoZr+Xsp90kCYXNp6a1CZ0/MewtBkytk6\nEzG3248FURBmUkeuRmLTOs9FxT9SxwmRiaHbU77BZe1FV0ny44HHLXNghW/T\n5Kdm9g+N93Q6nwtfUeGx8u6JYOUOuTb35n19Dp1e4kNA3gtmE3sM8FDfqf4a\nXFHIef7EzuMB0ri8JiE00WXkibVgvpMuE5qeo5uKZbHrW0HijHNP3/8OubD5\nr5wC+LnuYFSOub8CcT+B5E6BOAyj4Wj4B5L44UZF56aVg/RiE+RC2YITr5UW\n9C9eircScgw3AEnDpeMwbSmzX2jspzSzclCyP1T3iFbS8DXcVQpXzICfGiT/\nR3EK\r\n=NMfY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE/zEm9MFuKrrBBK+4Mo9OJgOKpKFoKrCbxOj1OKW1j7AiBcuDi9OYWZSZLwrkFr4ddEPeKYRCd2P2seqWyEMEP9Eg=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.7_1617893312326_0.006334871764677397"},"_hasShrinkwrap":false},"2.1.0-beta.8":{"name":"@dzlzv/hydra-typegen","version":"2.1.0-beta.8","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"bf67446ad191a452599642df5c1b29cd0af4fa1c","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v2.1.0-beta.8/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@2.1.0-beta.8","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","dist":{"integrity":"sha512-MQRwhvzaTlurJQJ08QI12ORz+c3vHfBr7ycEzU1xG1fkadSNrVPY7pYjkH/Q2xphl79sohvzVnFCipqbkDTWkw==","shasum":"a6ddcd21652310cf0e174e999f700f213e399ea8","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-2.1.0-beta.8.tgz","fileCount":47,"unpackedSize":56268,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgirSXCRA9TVsSAnZWagAAYdwP/1OXhznu2GVCMirqmZ6Q\nKxU0wuN03cC25awAsuArd52gFzrY4me1wrF0wm5eDe/q79Nwqsfclovn8W3o\nsseBhrVGihx0KeUbwIGyti7QCjxXOq+5a8huyoYzxl/tlGgmExnKqDTgiUuH\n21Q8rVjXrKtyWvzXFODCTxIHduJQnPMBWslEXpcjB/2RVgIfrbJrmGZSDnhr\nyLaUd7UzzZD3oRr210jq4qOYrh4mdsS9/8g0OI//jd2Qpyq8s626Kj5VuB/u\ncmfoFYaDO72yqmI3YERvcDCzDcLPVyK1CcFtDl6tvVAq/2jo89sjb5wm8cZ6\naEDSd2I8NWZ6HZX37idFhRfd2bZttc4p0zff+jNFsPnjUlGl1SufAkfBQhA6\nC8+AfF31gFqEbNcAOh4557SeZ+fkOwCoa+jBI+aUynfakUH+RzTXmWaYCrgt\n8q2gG0JcCZIHPxDuDzAGdFNhjTqZG93ol0S0ptN56VfEGF6THv/WcdMs+7mq\nKwJk2q2jZWb7/8tTJKCYeqI9kHshv+kWoqlUiB/J29+7Dx9iYGWvCtL60E5s\ns8Yiwxtql2qnL4ynB5bXnSShjJX0GhIljSCdy1p6llASR0KEJstDME/RlVuK\nvstzKKcyyHrrUcQSpMwJF9z1PYMgWCQoWHQCzN/MkaLMTXDUF3clL9rWzH5N\n43PL\r\n=IrYx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICRquXXmMpv9XHmydDr0E0Ohn+f6BXX/wkxBRA5dsCnVAiBy7Fj/66BxANdorg3Qa0NF4KM1NmTEw65kUUi56U6qlQ=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_2.1.0-beta.8_1619702935461_0.49628438791638496"},"_hasShrinkwrap":false},"3.0.0-beta.0":{"name":"@dzlzv/hydra-typegen","version":"3.0.0-beta.0","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"d0795a01c9c9e1e09addde90b1db5ef2e6a043c9","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.0-beta.0/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0-beta.0","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","dist":{"integrity":"sha512-F1YI+aktFMvVFLfXSz1GRQxqodJepQHyuwtebgJiRdayv66eOO5y4D1YW3OolyCBXOwFg2tie3WoAXozD5YcYQ==","shasum":"1e7a2ef7e5ff131319811e2dc640e343f661d5a9","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0-beta.0.tgz","fileCount":47,"unpackedSize":55518,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglUHYCRA9TVsSAnZWagAAgAUP/i/s2vbJ3uJEqI1Qfq9Q\nox2zXNNHABHe15rTZjQzcDHBFAhDoi9pPS4mxEfasmuzPUqhLuEPbndVBQLs\nC8o8MjFOLIck9QW4KNvNZaAbmMNUxob461MWY6dsnu7br+hbTpSal8izkkCA\n1sG0TXW1JxPREa7eNNE8b41RM2pFi4VJKtJgmRHkQRven8IRJvvWuwWqsvOf\nKKti5cizAfnw+KFrjdIYSJgGqoAMSaa+UiKVkxuj4d4AxN4KMjDml5UC9EIM\nER3aPvjpmuBNdTBgSLenyx7EDujWG71Ro0nn5FAKgrEM/X+XMNEJbsp7ZSf5\nRyN0Y+TVPF+UCa+swfJjfCC0yoq7dhIKgHRnMiF9+vIOZpo24hvqa6ArHIC7\n7KBe82Br+Xij7hvyp3sqH9Xa3opYuICA3cgF1PJx+fXOFUuhtr/HGS9LnJ8v\nfGXt53hevcvkhZO6BcDVtrqdJsmpIrPsjeYUz0YH8psqg5TzkpYGGnbFwUlW\nBfzpXGfLZPCbpJMsdJvTr2jQ24NeZGpyzek/dEK5t1XFmKOkT7d4fb0M1pZH\noD5tHIBT3fNp++FAekqx8/Sx1e1TQa/ChorlKHzlvzht5p09B3Md5DNeIXvx\nMX7o2S9+0JHhTDfGdC0349o/EK0VvglAqbfVuzMvJJKHKLiV+NpbDcxk7E8y\nX6G5\r\n=7/VQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGbPpKE4zWm7sCMyaZF62Fmm9FlZ36/BWsuYi2Nd0IarAiAP1ch2GjiXRZRzl1qVLuLu4KAGWou2K+3CkeYz4s3qkQ=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0-beta.0_1620394456446_0.7141015093470253"},"_hasShrinkwrap":false},"3.0.0-hydra-v3.0":{"name":"@dzlzv/hydra-typegen","version":"3.0.0-hydra-v3.0","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"925e047aed8cc4d4a11247749263e5e32cc8705d","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.0-hydra-v3.0/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0-hydra-v3.0","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","dist":{"integrity":"sha512-Gu3YQrX/zZn84aDqtkZVxVOr8MqAesENzZhRnGblpTL31do5ltO09tzl68agRBJZ7CFrVPaWJMIoqc7bRTVwXA==","shasum":"229ef692f1590015d2ea0859b6a78dbab4481e94","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0-hydra-v3.0.tgz","fileCount":47,"unpackedSize":55799,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglWIWCRA9TVsSAnZWagAA/aQP/3MnSbEIxc14zTTwQN8N\nZ7FoS+7gLv967xAVAQyu2FF22fd/ZPNIt8pkV1zNYoVFPTKeEnqceJIsdtpy\nQWcKKY5YTWtVg6WwPQKVmXJQKJiY08+d3vQ7FsnuHymvlaMZC34e4FtBmPLq\nAJ6JrstxacqDCRaJcuRho8tvxTwcpz+Ad932vGPaJhtuqY39j0ZY1/6jo+t+\n8DXYgaknD7UmfPl5PfWlJJ87p0UuR5nwZ/fBVRL8CFUGOYDodwZtebmF1IQa\nwruuMuU6nDwqfgdCQmufQE29ZL/xU6F+nKRY7NofiO9gUwEc3pzTSEKLmPf+\nHfFbojhi1reChmOVxgPHZ3dAkUG+zawVTdTyuoYtuEzBuBVUQRx4WODesP2d\nBbSSrQ3NtunZexy5pw1enab3J2RFtjojWrhbn7mD65QywLHOiwnjAalXrlrz\njnR5ith2Zd2bwssPcx7yaog9oJy1pU/nTXg/rW11r3RCS+Ctg3ILNHAlmOAh\nBRlW16dfkSmA39/uaHZJ65BD8+GDkuXIqQTJKxBSi3N4bJ/SdSbf8/peW2sw\njxcs02ghW3ORUce0iSS0Z1Yx8hT8M+IkZ4hQiiGtElf0hyQO+Ao6/SrHX92W\nTi7XkdnFzKyX1Du/BJP27d3iJva6OzfvGPQnwYIlbB8Bp4QQ6cJODoeBwzsa\n9Sx8\r\n=al1d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC33efagB3tBunTKcDUsif/S5Ile+GKYGyG1sVTV1hSLQIgUk9jjg/pDs7FrlovPSEFffCKy/aNLb9doFrhEvZIKzo="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0-hydra-v3.0_1620402710161_0.17418173486631838"},"_hasShrinkwrap":false},"3.0.0-beta.1":{"name":"@dzlzv/hydra-typegen","version":"3.0.0-beta.1","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"fc04505ddaf9b0b56771b00bad385657004b24ce","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.0-beta.1/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0-beta.1","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","dist":{"integrity":"sha512-8Je3m5v1Ym9mre01xp1jSv7owc3W5yzg5Pls+lgshm0ZnAeg2oNvOOVfViC8PPioyNcDzuXnsXhRRjJi/wguVw==","shasum":"52e30ec6e724e3cffa0cd9f51ae7c8cd15bc9759","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0-beta.1.tgz","fileCount":47,"unpackedSize":55782,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglWXWCRA9TVsSAnZWagAAbcEP/A4M7vb2SOHLe+2d7n1F\nyNALOtraZWV++c8fQoqcvCRrQLXXK4WNNFJh7UqZpKop4UpZoH6pYlUWGbb+\n6Q0XwFJogqanDOODyGBYGLEmtf4+kplUKyu9lHaeoA5rbWFYOIajYG9jNOVq\nS9KhyUqq7ofVE51mm7EnyzibwnEIovOTWrZhuQk5yPorcVwmPTU5jTT8sKbH\nJdyCUCrNMU7yZMG5Yc/w8vm/4MMHTiFqpqMpvGG1ULv/YKLz6KiqZpDXGdXv\nGNcZ5sHtTvLY1EeBtISqWTgY9VtJy1BkDeISIJgCCVs1oQxs6JXyg2ATIRxp\nc0JiXCr+JfMhMq8MphswnuRFqQ+ekrgpZ68RRt7yoEhWKQ7eJzRqKTJ+YOpW\nJ8Bj4FmZKyEMv7ffU+iY8hNgP4aAOsDn4AvRiI4DDvbcYXUVMv2W9+t4zddU\n5C48yT1HJxdDrYuvsb0Tl0Py1fRy4ehhvuXh+5VgGFd0vaPj1Il4N4dTx+FP\nU+xvqyiz956HsjaDCM0Bts7xeU6B0D3RSDX/+A1OZSnWZbt7LphSsugUkPA+\nFV3/9VkaQKJmTlXBJEoOG6jbmaf+0OykcjeXb+ulkj6vydco5nQN1DH8Lh/L\nBSG+iVGg5PKRLsIGLPbyx6KuLPWf2SN112Zeg572Izpz2gKziQxvDOfm/MWu\nZ2t7\r\n=OEs3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCeA1Iyc5M9ObXNB9kHy032lddRjqSKfdrWowA/W1VpKQIhAL+D8WSyoPpa3mW6BMsJZTeJGkW2VFk3+nCYMYjJ8JXw"}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0-beta.1_1620403669555_0.19712477037463927"},"_hasShrinkwrap":false},"3.0.0-beta.3":{"name":"@dzlzv/hydra-typegen","version":"3.0.0-beta.3","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"3a82cbc2914b403480cd82a814cc869fbbf38c2b","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.0-beta.3/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0-beta.3","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","dist":{"integrity":"sha512-868/2mZiq0sqGJpmnYZVW9KwPaW0vTIW3iPwBXPmYY9okpElQbIEO7cKT2Zgm0UxwWapUVivfI3AnIbD5sW+5g==","shasum":"19b2d2bca84b9cd71c85e5964e04d09dd879948b","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0-beta.3.tgz","fileCount":47,"unpackedSize":56381,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglXprCRA9TVsSAnZWagAAr4QP/jW6rEer7qmfTevItBWB\nOpx3xH64iiv5llQCEKzNYMzhHhNIH6vJYZMcn5xtajFpQa5V2Js8TgQB5hoI\nooyQ4xDVpnGT54WGtC8aHocWruMblywkC0yTuFu41L6+BIXj3aR5Bqk2/Skg\nrC3wGq16Jtv+BlGMP5WQJlrY/dBCardoGlltyOuXxb9SNwTTIrY4wzXMgj7R\n5OVUW6rtKf0eCwi1qSgFCWCnO+0I8A6fT9HGC0vzUZDyQVY5fKdHl/gW7MRa\nu01tPVjbvRjXKy03KMGYX3N38Gw3+4WMJvU7Y09p9B8Cg2RibXH+BDpAsLBC\ng4ayyi+VNZVN3gxCGnRtqWgHDQ5VK3GuHqErv6V+v+lUrzGp5qRSbKByUj3S\nbITCfeJDTCqqwdS+dRpmzyqIQV8VEjZxSWQc7ohWitP/0BlisWiM/GhfL6Mj\nmdR9ewIOGascVU0sqh4ApAEN73XaSa4RZKBeENkeKbR6BdoLA07QHmC/hCN/\nrW0KfImzgU9pIvdAdwPY65m4eVv2IN2BTwZ5YlVA5WWkfDujTR5vudDcLhxE\n9TfSSTnv6W3N3fKmvtqGDuaI6XDD27UvcGKU4RMxV7tKuOlPLmungsVX5r5u\n0EYz31kbureIrh4/tyjjZFJ+n4EmKM8sR0E5Bm0agDYBnHCSrMnjFS5QYk0g\n+IqH\r\n=dAPt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgbDQR5s5VFJ3qO190hX7w/IC8c3lt+7M/8BhuLXSk2QIgbPeoS7m/W8f91CkMeQi4W2rcI5WT9taL+cnJ1a/Esnw="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0-beta.3_1620408939313_0.989984185473884"},"_hasShrinkwrap":false},"3.0.0-beta.4":{"name":"@dzlzv/hydra-typegen","version":"3.0.0-beta.4","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"6df07831ff75bfc05299f8af56f14c0adb6b5fb5","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.0-beta.4/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0-beta.4","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","dist":{"integrity":"sha512-y/4NJVgja6StS4si66VuWgodWQGy/qts/M6+t/zyzQkwwX9LZhz4RN8AgwFQNlMEg63KSM2xRbgp2du0arrWVQ==","shasum":"5c9d470f76ca624712c18d7ec82f9359fdeaf43c","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0-beta.4.tgz","fileCount":47,"unpackedSize":56732,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmVFyCRA9TVsSAnZWagAAEGkP/i7ahcvShZGPAdtwojIy\nK932T2KXmgOJR38GpjpL0TxaJg0joWUanet8iMPkjUArCm1wi/fPu1lmltdm\nVHKZHCo8ALEfjPfIf0fqW4wYHle8xOhlJP+hNuWFIjQNU4qHnOlXyXAGN7CW\nljQDFpPBsgW6repvgiTEVnSZdGYLdn7Iz0wj1C/KHYwko4AxvuPVH/64nQEq\nN3+zKfSmqI/OyuH++peRkS9daKOJiKdkVAaiGm70XS0NxEHfBStjFDmErCgo\nUHxj+vnw/c/hp4G5RWtHGsrXzyiE8gF4LQXPh8WhgsEqZGZ+VwP8+NLTdhFN\nf6IyX6fmQpS+Vl/kNp+3iJA1Y6nAwQHPs0hELg5J8w2o9SCyBCaxuhFm9h9n\nYag0SBEX78om9rVxNml8cM09QjaT4gLt0QLcjHRHH2MToxFruHIJ5qeBhC/0\nzuR21x1S1OZH08bEEtb2M1x3czyNwIC8j4d4Tel0qrmWz3/BlHTAA9Lnl9YZ\nFU8sMdwHch3J2AEzyqMEPIeOFZnqq/wwAZEenl7+01N1/SmE3zl8KUYn0Bl9\nisvMtDqu1omEuZ0D7exJ6XlHDyqgiU51BihZOV1e2zhaKdnjDVRpsWxr+f9t\npbkYz9jCLwJZH/GZQ4IM9XjRd9LSgwn/KAIHuWvYkngKhUxhSKUbT3NIVBZQ\nlHZ9\r\n=LMxz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAPHZ42nUpZRTaAvVlYzFUz2V23wdHCRUZitCkY6l/BKAiB8RhAqyWhEigeWm2SP46wO/USwOYMy277MT+HV7w+gqw=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0-beta.4_1620660594195_0.9541160800464314"},"_hasShrinkwrap":false},"3.0.0-beta.6":{"name":"@dzlzv/hydra-typegen","version":"3.0.0-beta.6","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"6baa14e334f86a7a79c0eda10f775089106be42b","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.0-beta.6/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0-beta.6","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (linux)","dist":{"integrity":"sha512-mYDh3G8tHjPIy6lUhXS2lNNOs27SxW580ODd3Ib87sR/scHv3Xmdv2Tgcu3lDj367MeKfhQ0hRfFDdLZnxaHeA==","shasum":"665364fdde787a293df58196f81abd517847e976","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0-beta.6.tgz","fileCount":47,"unpackedSize":57339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnjXJCRA9TVsSAnZWagAAcgUQAIzPbccLLq2vpP1vhk6E\n8IiH/2A7r7mPfvhro6EONXkWvzO+Nd9e1g7D7mVtfjsr7Djg8fA2l9tR7IU/\n2Cxnq24PgY6zComvy5q5wTRvTBxawH0tcYH+oaTMiDpvh6sAvlWWFxS0xGzV\nBlJM8f/9i8B39ydX+7WxZKtRsHpcvR+Ew7Edn6PUWum6r7gUdlSxwWz3Yd95\nrayJ+ItAdH8lBoH+b75b5hXIAooZAUqXf+JAQKde+j/p9HgmXhC84BPloZKs\nmaycI+6UrqBl6R7rf+DjzFEHTAr1oGs7W1AXFHm+EaQrql7E1JhXX1HmqyoK\npYwl5ve/XJHhldi9QFZP2rsxcFGtl9+5V95Ze6n7sXIgjFygXCVZYCvMrvVQ\nmocpQ4ycMlkbS/MB2+bhmYo+ZpzPDwLG0ZpLELsDinG439syzInR/Ya1VnOT\ndDkX7iTTbduaVwwqv3zA+ltR5FWsY/Cl6seeOFqen1mp+RiarBb44dcCxUhf\nmRurYPHQ8IC97A6ODr7SgD2g9ZW2PXB1XU2OMZM8ZYWGKxpb+pBFQ56ft4R5\nD3I4LfZzl9IgP6fdi4clohk8Q0qHZc6G4FVguiWySj2jfYQktzjXg4t4yG2o\n+4XmrPMujFyUINE15M2Nxr9sQZ+mXbOmNMJQbwh8I3hoX9h8LauPb75LLvA+\nvnNx\r\n=jOcc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDTV1SV+WeuLghyieRysbGeK8BXw5YAJdwaQqoA9R6BGAiA71gv2bEoEVwxY6eet8xCxctbL2iLL7FcVjk9z6ZdgdA=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0-beta.6_1620981193114_0.3734444515362447"},"_hasShrinkwrap":false},"3.0.0-beta.7":{"name":"@dzlzv/hydra-typegen","version":"3.0.0-beta.7","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"05236c4642282896a78126c8d9a8a1884c213b59","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.0-beta.7/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0-beta.7","_nodeVersion":"14.17.0","_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","dist":{"integrity":"sha512-g7LYn0EGFmzRXAfDBF8htF2QQCVhKHKgU+3bhkHvmAGPqcRuY15hJ3mJczTx2dIbuigHpDrnsnxHrBRoWm/nZg==","shasum":"d3d878bca2dc5101705afda7960b5b5545f4d95d","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0-beta.7.tgz","fileCount":47,"unpackedSize":59208,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp98KCRA9TVsSAnZWagAAa8IP/iVNZuH8h04HXd6WTyXR\nG7xzQhhVB7zhoPN29e+YOooDxGbw0wOXO9iz9JGgprmWo029UmyGrid8Gv/p\nWBqG214LBW8iTpufgU3scJ5nQSiK3KheEHBMfJK1P+hwuDO+hmgGcFCGtt9I\nW2jEUDPWRxf5/hCPJaMzOP2+hdFrj0Wl9wdDUbVi7NipI8Bs7OsULnDfYMph\nLK0k2nDj+eSj1EVxy7sSnfrkyy/C3in+2omNZKGjzy4fs7ZiqKxbD8U2JPk4\nSTVfSobC1hobPjiXxbjcsFRASPMAO2+VZI9zaBMtRgLIhZtmYLhybosefr/f\nBz50NhC5kUWZG5DU6Cueaylzy20SRCR+dICSWyJfCFa0+DMop6UJ9LsssqXH\nSe847v5jA3XULDWPwS9rd2K1mqTNzWHGt+XvnmCUAd39j09xButvVTPcyJUf\nq2YHO1BYNv1CEW/pOqpnpSAfjdPuazYfEBMknFRVKP4tU7eZnSiDRE5zYeJh\nfSvfRaUS1kykJKFlenhgz9/wTkFfyU+k22gOHYnyxPcGv0Q8Sh9mPWXTI0df\nTKUWVonvVprRaV6HJ2hQv1fg+OoGyXprLXQwm66W3hSM5s4YeyJs/2qZtWHG\neUYpxg5iyVmAVhWgVAzIUmCJAZ7bLtm+3WV7v51kTUvbzbtImmFa/qGUGeUO\ntsEK\r\n=yfk+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDyFaELwM/GJLNVneMtLeTYXBIu+StMDCOyh4z99ZqNZQIhAKjGbZ4yshsxB8iUt+6EIhP1rrYHp3Xp8t/6OivhB/Wq"}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0-beta.7_1621614346440_0.49168927084783887"},"_hasShrinkwrap":false},"3.0.0":{"name":"@dzlzv/hydra-typegen","version":"3.0.0","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"ea2a4f2ddbf5411606113cab4d47ec18151860e7","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.0","_nodeVersion":"14.17.0","_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","dist":{"integrity":"sha512-VLO7AuDaj2bowR5mBk03laTY+WIgMg8+YxGxWQcrRKrI0zZ3OCJ+K91mGk189Yr3Yv87PZM2d+e6SrwSAV8zhQ==","shasum":"cf01d5eb983fe8c73b66c3bedd1e76bba3dd248a","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.0.tgz","fileCount":47,"unpackedSize":59441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq8G+CRA9TVsSAnZWagAAWn0P/jkjXhuIGD3XkRNUogwm\nBv32RhlSyBY20jbP/phnULRFrV+LFjuKQPY2YsT+ARl3d17hTG1rarnZ+KTk\n365q+YyxqDrfj1LI5SQXbbhoSPhi802wcEY8muQMesw4mfeo6dUDcv5JZ+NX\nMznutcjs+EjW2SrWpmgLDi8Zax5japJO8KQCR8SBT4eEn+mxppAGA7RBnxnn\nzpQsYWeFlp5CUD0tTXM73hClA3VxFdauV+yo2wRr6OEgGPM9BC8DsR0dmSH/\nKK7My7dntWgWID8e8wSuW7UJ7GL6DEz7DiuY/wQsKpZh7jInM3KUzdSLAaBO\nVninALzUoJk90JtCqcRh4523vxbgFYhTuEkFN3ilQGI3S0AU0NFGrFwvDUge\nrYovDsWLbAx9l3e57tvExugseWVpDqM96Kfayopg3GjKn7+x6+LSsZhRCLEp\nRnKK01WlFDY4Ewz74GQE6O7sVwTOg1grppJ3xRj14w591nqGcpHvHfCsDd5f\nPWAvDV2eU2F/E5ehjBJQ/4M4/brkASiC0dL5aDpjXokLJQB16MMjhIFKkhtV\nNBILA+Stf/kruUsvMSajLmb3rZdAC3+/OF7WX72b4VbB7pe1EEBIgRPYGgMH\nRLk0Hh2PK3htZJCkHpwRYV83SXjMDcyMksKNt5bGHWH2CeKkm9TtCS5CJuw8\n2d1l\r\n=W4jg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFZoiy3ZNXYYsMKM9cSRdODwfdSqMRkcFQuN3ZiL1b/1AiAxc2cjXdh/HtK/Hi2XkHdi5y1E06h7f84YYbp7gz8xcw=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.0_1621868990050_0.6195970170777485"},"_hasShrinkwrap":false},"3.0.1-alpha.1":{"name":"@dzlzv/hydra-typegen","version":"3.0.1-alpha.1","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest && oclif-dev readme","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"c5efbbc9efdf8e6ddd18b7bf0ecae53807050ecd","readme":"# Hydra Typegen\n\n## Motivation\n\nHydra Typegen is a code generation tool for creating Typescript types for substrate events and extrinsics. Its primary use-case is to provide type-safe interfaces for Hydra mappings. For example, once a typescript class for the  `Balances.Transfer` event is generated, a mapping can look like\n\n```typescript\nexport async function balancesTransfer(\n  db: DatabaseManager,\n  _event: SubstrateEvent\n) {\n  const event = new Balances.TransferEvent(_event);\n  const transfer = new Transfer()\n  transfer.from = Buffer.from(event.data.accountIds[0].toHex())\n  transfer.to = Buffer.from(event.data.accountIds[1].toHex())\n  transfer.value = event.data.balance.toBn()\n  transfer.block = event.ctx.blockNumber\n  transfer.comment = `Transferred ${transfer.value} from ${transfer.from} to ${transfer.to}`\n\n  console.log(`Saving ${JSON.stringify(transfer, null, 2)}`)\n\n  await db.save<Transfer>(transfer)\n}\n```\n\n\n## Commands\n<!-- commands -->\n* [`hydra-typegen help [COMMAND]`](#hydra-typegen-help-command)\n* [`hydra-typegen typegen [CONFIG]`](#hydra-typegen-typegen-config)\n\n## `hydra-typegen help [COMMAND]`\n\ndisplay help for hydra-typegen\n\n```\nUSAGE\n  $ hydra-typegen help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nOPTIONS\n  --all  see all commands in CLI\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.2/src/commands/help.ts)_\n\n## `hydra-typegen typegen [CONFIG]`\n\nGenerate Typescript classes for the Substrate events\n\n```\nUSAGE\n  $ hydra-typegen typegen [CONFIG]\n\nARGUMENTS\n  CONFIG  Path to YML config file. Overrides the flag options\n\nOPTIONS\n  -c, --calls=calls          Comma-separated list of substrate calls in the format <module>.<name>\n  -d, --debug                Output debug info\n  -e, --events=events        Comma-separated list of substrate events in the formation <module>.<name>\n\n  -h, --blockHash=blockHash  Hash of the block from which the metadata will be fetched. Only applied if metadata is\n                             pulled via an RPC call\n\n  -i, --typelib=typelib      A JavaScript module from which the custom types should be imported, e.g.\n                             '@joystream/types/augment'\n\n  -m, --metadata=metadata    [default: metadata.json] Chain metadata source. If starts with ws:// or wss:// the metadata\n                             is pulled by an RPC call to the provided endpoint. Otherwise a relative path to a json file\n                             matching the RPC call response is expected\n\n  -o, --outDir=outDir        [default: generated/types] A relative path the root folder where the generated files will\n                             be generated\n\n  -s, --[no-]strict          Strict mode. If on, the generated code throws an error if the input event argument types\n                             don't much the metadata definiton\n\n  -t, --typedefs=typedefs    A relative path to a file with JSON definitions for custom types used by the chain\n```\n\n_See code: [src/commands/typegen/index.ts](https://github.com/Joystream/hydra/blob/v3.0.1-alpha.1/src/commands/typegen/index.ts)_\n<!-- commandsstop -->\n\nA full sample Hydra project can be found [here](https://github.com/Joystream/hydra/tree/master/packages/sample)\n\n## Quickstart\n\nA minimal example for generating classes for the `Balances.Transfer` and `Treasury.Deposit` events in Kusama:\n\n```bash\nhydra-typegen typegen --metadata wss://kusama-rpc.polkadot.io Balances.Transfer,Treasury.Deposit\n```\n\nIt is also possible to run `hydra-typegen` against a manifest file:\n\n```bash\nhydra-typegen typegen typegen.yml --debug\n```\n\nThe config file `typegen.yml` can look like this:\n\n```yml\n# Typegen will pull the metadata from Kusama at block with the given hash\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\n# events and calls for which the typescript types will be generated\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nHydra-typegen also supports config files like the one below:\n\n```yml\nmetadata:\n  source: wss://kusama-rpc.polkadot.io\n  blockHash: '0x45eb7ddd324361adadd4f8cfafadbfb7e0a26393a70a70e5bee6204fc46af62e'\nevents:\n  - Balances.Transfer\ncalls:\n  - Balances.transfer\noutDir: ./generated\n```\n\nSimply run `hydra-typegen <path-to-config-file>`\n\n## Custom types\n\nHydra Typegen supports custom substrate types via the `--typedefs` flag. The provided `.json` file should include type definitions\nfor the arguments and parameters of the events and extrinsics to be generated. The type definitions file is copied to the generated sources.\n\nIn the config file, place the definition into the `customTypes` section. It assumes that all the custom runtime types are already available for import from a library, so that e.g. the generated import statement\n\n```\nimport { MyCustomRuntimeClass } from 'my/types/definitions\n```\n\nis correctly resolved.\n\n```yml\n...\ncustomTypes: \n    lib: <from where the custom types are imported>,\n    typedefs: <path to a json file with custom runtime types definitions>,\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.1-alpha.1","_nodeVersion":"14.17.0","_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","dist":{"integrity":"sha512-QIaIzOJZpImEC3SU1T9OGSREppgyLPBvHSrRNkI1WRHZhLSKryyHo/fqtXUS+jIrp+tHUyYhbz0rOpCbtTGSPA==","shasum":"e389ad4453f9e398b27c209a3f2b7c38b4d2be07","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.1-alpha.1.tgz","fileCount":47,"unpackedSize":59985,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr0ezCRA9TVsSAnZWagAA+xQQAJui1+H5zXCzCbS+xagE\n2U/ZW9o3lpxOu0C94lXLvh8009l1GsRBi2MTw2mOi41ygRdenwT1d/eR2tg0\njVWveDD30L/pZ6q48TfsIPXx87Eja+CDYb/Tpwv6jx1HX98xEarEIh9sOv7s\neHLoe8KPN2bUTSZdUQJv2ZlPkccCemPakqw6Sf3Jq6ataGlfST2/mmOXI2dW\nT74nkV58IDDNNDCQvbU7H95RvPJqmV6wOz55z1z0EtdaX2OxIiQ05B8jz2YB\nZ8JgWNqY1uKTqZ6HJdgg4+fmSZaPcAH6DO4d5PjY/9/A4lWde0sRTyDxK77h\nHqnj2pRFf+Ufy03RZRocg/Xpdb3VjEQ6KogXgL3Kig35/ACwd7QF3luVU51y\nGC9oy4VCG/LRBXDuAVQ6jsDA57CiLoctspcD3VZuj55QratAdreDZYFyDiPT\n8HqrYrA7LzrM96R48+gVlOuW+f8z4KXx9QIdbXibxi9s3NmfGb0cE9mg8e2m\nZskXAK0lE568wqRRgOmmV8cmoLDOS1Q+5XEj7FHR3vJqrqua3tUMSNeN7hAi\nhjM3K8fkILGclko7m8rjSqACip7wKY4evJS/5ySLbIjZWffUw9MFtpJfFl9R\n0dlpOwvtJEnqgliuuTyT03zDb2iz5s0B3O6MCUA+h136wEFyvV8hsemOkwJL\nyjUf\r\n=yEAA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEqnMFwZdILSTCcpmAGCMOqNcYbV3Z32HMgjNeuG6YtHAiBB0bLHuynaU7K6hXHY+f+p7/jiu+uhWzxCZu8ATV/MAA=="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.1-alpha.1_1622099890833_0.3879438446038641"},"_hasShrinkwrap":false},"3.0.1-alpha.2":{"name":"@dzlzv/hydra-typegen","version":"3.0.1-alpha.2","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\"","version":"oclif-dev readme && git add README.md"},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"6f445b0d8117e7f967d2af6fb4eda368b653aac6","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"readme":"ERROR: No README data found!","homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.0.1-alpha.2","_nodeVersion":"14.17.0","_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","dist":{"integrity":"sha512-VxhTNN+21mnN9aizp6/hOqctsrQLR07BTc9YWwK9DsE7eX+S8kJah2qUmvRyMTGXVJaBxBVFpW73hJW+GkRW2w==","shasum":"22621bbb451716f5df8374e5b77d9e6356525c85","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.0.1-alpha.2.tgz","fileCount":46,"unpackedSize":55199,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwOTACRA9TVsSAnZWagAAtTQP/3VnYsCKjh55+bRPgMA8\nRryNS5MVojkV0fLsQZ+DUiCG07CUIdo6Rh1APr2SLP4rFjpSRH0zwed5aJBN\ng7A78teLpBYKUUostruH8Wx/V8OBP4xZ11vZVBGVkj2idlZELmS1zHobiNhW\nKkt67RzRpUDh35+8NBEGsgQbIDMe7bpp3pT+UlMGkel4aHyhOMSivQGmlsWu\nnqSm9OrbENismePeVBdEHJ2OgihRxKWhqKsvZsBjR8valJ6pT1zwL6CToItt\ngkjfcPbeyyV+0lp00IADUeTvpmxloG8Z91ygUpYS0CfVWyNUVZy4oozr/et4\nUAxUUnfsOVaWf/eUb4Atf/Rz8X7ADy0x7gupaXundbcP+NHtQ48HDsX79VjI\n6DNYvoda4fPF9muKPjlc6SOeAZZTIT5oxFXzMto+KVcrTxw7WzAvKuNGeyVv\n4J6rbC5YqqSBY2fqBYZqOxXrMlSx1ohhmOCMR8/XTMu8Fv88IT73EZLfbphC\nH1kebImKf6fZkqvTneZodam7ziefA7/8vtg5OpWGoXsgjeFCvkT9lhQY0Ghe\noqkSY2ADGB8n+uTZjBDBBNS7nIHiBKsalxnuEwwkspABHUPprsC+cEib7L9j\nexdiqnson/qso9wTZ3msbMn0WupOuKf3zERq8mhTDm4xFS8L17GF3sfgS7fL\njlz7\r\n=8wfg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD54BjH92VGc83hpiVTMoZxle/mPQfCaxTwNMgqQK+7kQIgMS2FBcbpNgc6+hZFbxDIIqSM/VUtrD6vzsKmkd/SgCE="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.0.1-alpha.2_1623254208617_0.39244062802401647"},"_hasShrinkwrap":false},"3.1.0-alpha.0":{"name":"@dzlzv/hydra-typegen","version":"3.1.0-alpha.0","description":"\"Hydra-cli pluging for generating typed events\"","main":"lib/index.js","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","bin":{"hydra-typegen":"bin/run"},"scripts":{"clean":"rimraf lib/","copy-templates":"copyfiles -u 1 src/**/*.hbs lib/","build":"yarn clean && tsc && yarn copy-templates","run-dev":"node ./bin/run","postpack":"rm -f oclif.manifest.json","lint":"eslint . --cache --ext .ts","prepack":"yarn build && oclif-dev manifest","test":"nyc --extension .ts mocha --require ts-node/register --forbid-only \"./{src,test}/**/*.spec.ts\""},"oclif":{"commands":"./lib/commands","bin":"hydra-typegen","scope":"@dzlzv","plugins":["@oclif/plugin-help","@oclif/errors"]},"dependencies":{"@oclif/command":"^1.8.0","@oclif/config":"^1","@oclif/errors":"^1.3.3","@polkadot/api":"4.2.1","debug":"^4.3.1","handlebars":"^4.7.6","lodash":"^4.17.20","yaml":"^1.10.0","yaml-validator":"^3.0.0"},"devDependencies":{"@types/chai":"^4.2.14","@types/figlet":"^1.2.0","@types/mocha":"^8.2.0","@types/node":"^14.14.16","chai":"^4.2.0","copyfiles":"^2.4.1","mocha":"^8.2.1","rimraf":"^3.0.2","tmp":"^0.2.1","ts-node":"^7.0.1","ts-node-dev":"^1.0.0-pre.40","typescript":"^4.1.3"},"gitHead":"e67c77a0b01b6af4bd4c20265eac7a866eeca946","bugs":{"url":"https://github.com/Joystream/hydra/issues"},"readme":"ERROR: No README data found!","homepage":"https://github.com/Joystream/hydra#readme","_id":"@dzlzv/hydra-typegen@3.1.0-alpha.0","_nodeVersion":"14.17.0","_npmVersion":"lerna/3.22.1/node@v14.17.0+x64 (linux)","dist":{"integrity":"sha512-a0Ev1s3VYoB6F4jZ/tKY5TByiCvDZbicaQ85xbBpxUqWGIquHgfkXmkubeFZV/Q42qKNIy8CcXQO2EgtXnlarg==","shasum":"6b725c4d8b15ca1f773a1db555e26c3f7a9fb733","tarball":"https://registry.npmjs.org/@dzlzv/hydra-typegen/-/hydra-typegen-3.1.0-alpha.0.tgz","fileCount":46,"unpackedSize":55407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwSd8CRA9TVsSAnZWagAAiVYP/jF0jzFXdjtUnKeLkYfE\njSgAY9WLCbxTiczsKzIAKwvOMK56o6pgY0TH06INYDHZLmUzcJHRJymWNaNT\nrAgBWuh0sEk/qrilEVE0RhtKUqDfvIqycRWsDOyPoOYTTlI2jn9EKH6KTkcJ\nfUXCf3C/GaB2Tn42rz1qkPUoz8uOkzIoH/ipOaecASbJJIeAXNJcwIhSPoTf\nKDdxdizKZvkJiLnmd1PGdBC4k8B0orjy3h13FEnXgYBIoGTtLCi8fIwV+SGx\nSF/PhK3QYsnYWXxVcq+U7/uVACtq66u3A87clW9Yi9hb5jNmPHj8KdFMJAxF\nmgzIMvCcZcxD+UWef0q8XisvlJo9wZ3iuxlinZJKB3Cngxa5pAJ5NfYnoVP+\nbhdnuHN24S1sJeE2iwaQP8s9l09tuaogW2vgFC/mRboupCDhxZGJwG2ZPkVS\nvcdWIDzjvJ0vAsXOi3IEfp5rqg+2uVM9qSddRtZns7XJSlTA+LHRtWzvpU8H\nAS1LXyD5JjytvNfiXHBtA4DrU8BuV9Hy/DIs2UsYhpWlUzhDQAmbnrkdorf4\nqHpvR6VencIHzSlWABwa7kuv8ZAZopgPOxAEiGjkEuvkULVag5izODCEVC9u\nqm0o0W2hQpxr6nAzys24deGWEiq6gzljj2IMrniwaYbPKISijudRZXuONEaS\nqQdH\r\n=V7NP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6i640MNETXCTeIBUVuSkBqxIHjNCtvsoVQ1ftZgLeKgIgFCOBNR0f4eHSQ+8Eo6oulBdOdB2AuFfPyhghKN2ZpA0="}]},"_npmUser":{"name":"dzlzv","email":"dzhelezov@gmail.com"},"directories":{},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/hydra-typegen_3.1.0-alpha.0_1623271292832_0.6299408550084449"},"_hasShrinkwrap":false}},"time":{"created":"2021-02-05T13:25:33.836Z","0.0.1":"2021-02-05T13:25:34.050Z","modified":"2022-04-05T06:19:50.820Z","0.0.2":"2021-02-11T15:29:02.412Z","0.0.3":"2021-02-11T15:38:37.288Z","0.0.3-1":"2021-02-11T15:47:57.758Z","2.0.1-beta.0":"2021-02-26T16:36:31.805Z","2.1.0-beta.0":"2021-03-01T18:47:42.232Z","2.1.0-beta.1":"2021-03-02T14:42:12.829Z","2.1.0-beta.2":"2021-03-02T16:21:51.362Z","2.0.1-beta.3":"2021-03-05T11:01:58.691Z","2.0.1-beta.6":"2021-03-10T14:09:55.228Z","2.0.1-beta.7":"2021-03-10T16:20:25.676Z","2.0.1-beta.8":"2021-03-10T17:23:11.130Z","2.0.1-beta.9":"2021-03-10T19:06:17.784Z","2.0.1-beta.11":"2021-03-17T11:02:45.341Z","2.0.1-beta.15":"2021-03-22T13:25:03.062Z","2.0.1-beta.16":"2021-03-25T09:40:09.865Z","2.0.1-beta.17":"2021-03-29T14:57:22.251Z","2.1.0-beta.3":"2021-03-31T14:32:56.911Z","2.1.0-beta.4":"2021-03-31T16:17:26.894Z","2.1.0-beta.6":"2021-04-08T07:37:17.828Z","2.1.0-beta.7":"2021-04-08T14:48:32.518Z","2.1.0-beta.8":"2021-04-29T13:28:55.586Z","3.0.0-beta.0":"2021-05-07T13:34:16.642Z","3.0.0-hydra-v3.0":"2021-05-07T15:51:50.266Z","3.0.0-beta.1":"2021-05-07T16:07:49.748Z","3.0.0-beta.3":"2021-05-07T17:35:39.481Z","3.0.0-beta.4":"2021-05-10T15:29:54.306Z","3.0.0-beta.6":"2021-05-14T08:33:13.373Z","3.0.0-beta.7":"2021-05-21T16:25:46.600Z","3.0.0":"2021-05-24T15:09:50.200Z","3.0.1-alpha.1":"2021-05-27T07:18:11.089Z","3.0.1-alpha.2":"2021-06-09T15:56:48.745Z","3.1.0-alpha.0":"2021-06-09T20:41:32.940Z"},"maintainers":[{"name":"dzlzv","email":"dzhelezov@gmail.com"}],"description":"\"Hydra-cli pluging for generating typed events\"","repository":{"type":"git","url":"git+https://github.com/Joystream/hydra.git"},"author":{"name":"@dzhelezov"},"license":"MIT","readme":"","readmeFilename":"","homepage":"https://github.com/Joystream/hydra#readme","bugs":{"url":"https://github.com/Joystream/hydra/issues"}}