{"_id":"@dmytropaduchak/simple-ioc","_rev":"3-203b4ebecddacbf8e2bf633a3eb2b38e","name":"@dmytropaduchak/simple-ioc","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@dmytropaduchak/simple-ioc","homepage":"https://github.com/dmytropaduchak/simple-ioc#readme","version":"1.0.0","description":"A simple inversion of control (IoC) library.","author":{"name":"Dmytro Paduchak","email":"dmytro.paduchak@gmail.com"},"license":"MIT","main":"dist/index.js","scripts":{"prepublish":"npm run build","build":"rm -rf dist && tsc","lint":"eslint \"src/**/*.ts\"","lint:fix":"prettier --write \"src/**/*.ts\" && eslint \"src/**/*.ts\"","test":"jest --coverage --verbose && coveralls < coverage/lcov.info","test:dev":"jest --watch"},"keywords":["simple","ts","typescript","ioc"],"publishConfig":{"access":"public"},"dependencies":{"reflect-metadata":"^0.1.13"},"repository":{"type":"git","url":"git+https://github.com/dmytropaduchak/simple-ioc.git"},"bugs":{"url":"https://github.com/dmytropaduchak/simple-ioc/issues"},"jest":{"moduleFileExtensions":["js","json","ts"],"globals":{"ts-jest":{"diagnostics":false}},"rootDir":"src","testRegex":".spec.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"coverageDirectory":"../coverage","testEnvironment":"node"},"devDependencies":{"@types/jest":"^27.4.1","@types/lodash":"^4.14.182","@types/mocha":"^9.1.0","@types/sinon":"^10.0.11","@typescript-eslint/eslint-plugin":"^5.15.0","@typescript-eslint/parser":"^5.15.0","coveralls":"^3.1.1","eslint":"^8.11.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.5.1","prettier":"^2.6.0","sinon":"^13.0.1","ts-jest":"^27.1.3","typescript":"^4.6.2"},"gitHead":"357850a79984d5c8d596eef165104e584c344260","_id":"@dmytropaduchak/simple-ioc@1.0.0","_nodeVersion":"14.19.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-2yVwiShsMxmxqDPETT+fH/vuytbfWN6qDn7P0Y7rx3/7Tm7rfbEZeatIUqwKVH3QRIyyWaD9tOMx87ICadXuSg==","shasum":"636b6d0429137e0af182777316e53bd3cd6216bb","tarball":"https://registry.npmjs.org/@dmytropaduchak/simple-ioc/-/simple-ioc-1.0.0.tgz","fileCount":15,"unpackedSize":8319,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGbxowdm3Jzt7S402LXWYCCDyMiEHRry0kNkPKJVMQIgAiEAiYLP+qqgwobxhPRdIksVwbaU/Qt4nP/7vsGmeIRkf+4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitbqAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrkfA//Swkpcs1xgPAVKnUmHtE9I3q2QYkMrl9+thUTLtBR2qi6QuMk\r\n6elUyE8Ofj5ttd0DTLBJrkIuksTi5UZR4CmZ+t0w+rv2jT5Izt91mYZfEe89\r\n0DzaNJZd6Q1Ddg039UsfPgQWG8cx5u6RhmgnTlh8jbhnF00QPeDePcDtHnJW\r\nda/2RV1UI0a1A4w8rBaoXJiQFGcrnaxaRxbLVHh2h5nsKvDcf2fQLXJ9us5L\r\npxF41x2CYqzKTW7pve6b6KOynCEyiLtfli0WcMoYPGXUlxfwHg7cU69M9tIN\r\nYw/A08rOeP5I4VmKMC+UHuqdWaN8dzXmXYec/a/ahi015R89SV0u1Mc0uPdM\r\n5L/a/uN0uID2Pzh8qoMQewu+NPv4ImFJGxGgijUXx1O83ZxmZ7ZLlcNd1uD5\r\nPsv4+qFwelRafCcpvDzakvH2SA+d71GxYluAsW9Yc23xbvQgTv9sgoX16an1\r\nYo068UYfbDK93IQ2iB5Vh7Wl0LfZQsYPimgWWVdY8rGwfeTk7RXhPMvg6ylE\r\nTx/dBFj8Aq4LMmV3c/kiBncJysV4Mur8bm6Lh6n8a3Ge2FnrPt7n/yC/Wvy6\r\nF0z2v8BQJwoZl1ZFIojz4WnqJzsfmLXoAy498ncwvq+Ye3zWnPAXvBKLgEhv\r\nGiC7iP56tK1BU/upyYg8ZN/7+TibssGOYLs=\r\n=UAv0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"},"directories":{},"maintainers":[{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/simple-ioc_1.0.0_1656076927999_0.9943406876316425"},"_hasShrinkwrap":false},"1.0.1":{"name":"@dmytropaduchak/simple-ioc","homepage":"https://github.com/dmytropaduchak/simple-ioc#readme","version":"1.0.1","description":"A simple inversion of control (IoC) library.","author":{"name":"Dmytro Paduchak","email":"dmytro.paduchak@gmail.com"},"license":"MIT","main":"dist/index.js","scripts":{"prepublish":"npm run build","build":"rm -rf dist && tsc","lint":"eslint \"src/**/*.ts\"","lint:fix":"prettier --write \"src/**/*.ts\" && eslint \"src/**/*.ts\"","test":"jest --coverage --verbose && coveralls < coverage/lcov.info","test:dev":"jest --watch"},"keywords":["simple","ts","typescript","ioc"],"publishConfig":{"access":"public"},"dependencies":{"reflect-metadata":"^0.1.13"},"repository":{"type":"git","url":"git+https://github.com/dmytropaduchak/simple-ioc.git"},"bugs":{"url":"https://github.com/dmytropaduchak/simple-ioc/issues"},"jest":{"moduleFileExtensions":["js","json","ts"],"globals":{"ts-jest":{"diagnostics":false}},"rootDir":"src","testRegex":".spec.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"coverageDirectory":"../coverage","testEnvironment":"node"},"devDependencies":{"@types/jest":"^27.4.1","@types/lodash":"^4.14.182","@types/mocha":"^9.1.0","@types/sinon":"^10.0.11","@typescript-eslint/eslint-plugin":"^5.15.0","@typescript-eslint/parser":"^5.15.0","coveralls":"^3.1.1","eslint":"^8.11.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.5.1","prettier":"^2.6.0","sinon":"^13.0.1","ts-jest":"^27.1.3","typescript":"^4.6.2"},"gitHead":"3b42419674b86cb0a5795c2c69ea264650cd5120","_id":"@dmytropaduchak/simple-ioc@1.0.1","_nodeVersion":"14.19.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-xs+7LiTG2F3jzANPsj71hofOtk+Gnl0HISBqcUmRE6GLZli+FzJHLA3XAclrkylJB/D4AanYweQTSPTPChv7QQ==","shasum":"6d256b9319ec289f36b46ce9e99735d4040d79c5","tarball":"https://registry.npmjs.org/@dmytropaduchak/simple-ioc/-/simple-ioc-1.0.1.tgz","fileCount":15,"unpackedSize":8215,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjytkwSgykNqwdCASrpQwcifSjF6YtfuSTsD+S4IhbbQIhAIyELRXvYQqStUy+ScWtBIxWPg9ui2bY/e6osR/bi8HM"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitcLiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpFqA//Utj4SY/25FrTpvI7lld0OXDuV5LXD/xdKYT87OH1XxqTuJA8\r\nRgqBbS62TbPE2xHsImWKj6w4o68eDHrw0jNfigbjNdHKMsP1l6MNWBl2FQxC\r\nLEAYk86kZ2ujgi3kSvqZ8LtVWwk2MvminFvEoC/SOrsrNTipJV3yi8t0Jiy7\r\nUuzU416m8eeVKWAif4A3EOXUo690ow9QlSvj0oE9bM7HzZ1bM4PYTLZpylOX\r\n7IPKaHFgi1WndzKX26nqv+A4bmakMYRnYFB22MQQRR1TXZHLzaXl6jV7h2cj\r\no8WbfdZIrOtFPdXlJUZsBpjqauErZMETQcau9zM03Lkbl0Hf+8G1CmuUhKxm\r\n9n6NLgjtJz36HR06qC4OCMMGQxCPJ2z8Ng9aCH84PmTH0iGI0ZtV+qr4vQWL\r\nwDFNa10U6/4b0ekm/c+iBh/HCJDA5+T13iZ1UJlboePZC0W8WB59Q7N7u2lA\r\nTv64TJvVD0LE84/gydLQh/IMw+LPDfxU482Z7N2/KPRKxi7Xxy0k46Bmq+CO\r\nBl8tS2IsefNb0kRUKeLyl7+lBlA6SQtOGRvGG8ffxB/noR8xGWQlTCROYroQ\r\n7ZfZR59WMjPhDTz0YjJ79mFegcUuPc+bQIyURjedBKJlAG49V1ItyrJAWewF\r\nkx4cCr2SrzF+9DJhLRslgyM7ZwL8gdeKu28=\r\n=WG2x\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"},"directories":{},"maintainers":[{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/simple-ioc_1.0.1_1656079074780_0.3720344240014808"},"_hasShrinkwrap":false},"1.0.3":{"name":"@dmytropaduchak/simple-ioc","homepage":"https://github.com/dmytropaduchak/simple-ioc#readme","version":"1.0.3","description":"A simple inversion of control (IoC) library.","author":{"name":"Dmytro Paduchak","email":"dmytro.paduchak@gmail.com"},"license":"MIT","main":"dist/index.js","scripts":{"prepublish":"npm run build","build":"rm -rf dist && tsc","lint":"eslint \"src/**/*.ts\"","lint:fix":"prettier --write \"src/**/*.ts\" && eslint \"src/**/*.ts\"","test":"jest --coverage --verbose && coveralls < coverage/lcov.info","test:dev":"jest --watch"},"keywords":["simple","ts","typescript","ioc"],"publishConfig":{"access":"public"},"dependencies":{"reflect-metadata":"^0.1.13"},"repository":{"type":"git","url":"git+https://github.com/dmytropaduchak/simple-ioc.git"},"bugs":{"url":"https://github.com/dmytropaduchak/simple-ioc/issues"},"jest":{"moduleFileExtensions":["js","json","ts"],"globals":{"ts-jest":{"diagnostics":false}},"rootDir":"src","testRegex":".spec.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"coverageDirectory":"../coverage","testEnvironment":"node"},"devDependencies":{"@types/jest":"^27.4.1","@types/lodash":"^4.14.182","@types/mocha":"^9.1.0","@types/sinon":"^10.0.11","@typescript-eslint/eslint-plugin":"^5.15.0","@typescript-eslint/parser":"^5.15.0","coveralls":"^3.1.1","eslint":"^8.11.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.5.1","prettier":"^2.6.0","sinon":"^13.0.1","ts-jest":"^27.1.3","typescript":"^4.6.2"},"types":"./dist/index.d.ts","gitHead":"71f3725d93c541cf1de0ed051d69051099529b5e","_id":"@dmytropaduchak/simple-ioc@1.0.3","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-R8QtXWufOFbVJQ4kr/x++tOw9JC6X55RiqOkvZQW2Iz9oIliidUfptB3t9nouTCia2n3VzhW27xf8ZyKtTDH2A==","shasum":"003d0c9c6b8238973293d4685e10f8df8afce66d","tarball":"https://registry.npmjs.org/@dmytropaduchak/simple-ioc/-/simple-ioc-1.0.3.tgz","fileCount":15,"unpackedSize":9693,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyjwreWMFVpSBXaLoNya3cOHLctiDSET2zM7u4g5sJ0gIgZ9IpaL6TwsMwSXeNmvTz6fALvNW9y4F7JfW6ljAooFY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2bBeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrlHg//YaDFRi9u4xPTG1l8quW6ujkbkQtwRFCxlWMRxKBdXCtqcqws\r\nDc+Jzxzx0Lmx5XP0MwaKIwqGneV/fCjicOtbaSxcRnR7YmgG58LvbNPs8gd4\r\nhm1yHU74rPSyB6SMswgvuAYE5loJm24duvpH1wM92+R3koGGu/j9iDTX8UKb\r\n+TEfCPJk2mSBC+Sk/8HoH2sC4m7UDjF9ttsp21IB8T34H0GCUROXsV9h3DGS\r\nH2ymDPuwB9Szj1j5nFx5qnFPVLuVS5uj3j+ALWRdbyLiGVRPOduFHMQASI8z\r\nCBCWUebr2FFAoqz2CjYeww46fDI0ZmM/NasYq+eNs+wjhYETWcsYq2+eNUKH\r\n2ExgBTkrrtIFpXJfOOOOMWp/nFHyn4O7cl8R0+CGKQjMjmqpFsDl4VpAhE5r\r\nKPxc65wkz0EtYGiHDCYDn9iViTewFGpJlCl8gDhTzzqtEURHXA5J0mL/PpbA\r\nacZJSuZXq5008wfpcp8T+Dyq7zYl4KQF4YLlJOeJXIkKaEU2gm60S9j2bf2r\r\nAeyKhRllFuCKpASlQ02OOgKfjbedfAarImq6PduJ2mFcExoIQQBnfF1kqzsD\r\nISuXcSxNKoc/9RQsKtWv8Y2x6Ojk0IAaVfH7t9pewSG+lhyTSr9lsKiLdAfP\r\nPmKEQIKzlqa0BCtWDUS9daesE5a5b1KP/gs=\r\n=ZYaV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"},"directories":{},"maintainers":[{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/simple-ioc_1.0.3_1658433629871_0.33037192283152694"},"_hasShrinkwrap":false},"1.1.0":{"name":"@dmytropaduchak/simple-ioc","homepage":"https://github.com/dmytropaduchak/simple-ioc#readme","version":"1.1.0","description":"A simple inversion of control (IoC) library. This is a lightweight annotation-based dependency injection container for typescript.","author":{"name":"Dmytro Paduchak","email":"dmytro.paduchak@gmail.com"},"license":"MIT","main":"dist/index.js","scripts":{"prepublish":"npm run build","build":"rm -rf dist && tsc","lint":"eslint \"src/**/*.ts\"","lint:fix":"prettier --write \"src/**/*.ts\" && eslint \"src/**/*.ts\"","test":"jest --coverage --verbose && coveralls < coverage/lcov.info","test:dev":"jest --watch"},"keywords":["simple","ts","typescript","ioc"],"publishConfig":{"access":"public"},"dependencies":{"reflect-metadata":"^0.1.13"},"repository":{"type":"git","url":"git+https://github.com/dmytropaduchak/simple-ioc.git"},"bugs":{"url":"https://github.com/dmytropaduchak/simple-ioc/issues"},"jest":{"moduleFileExtensions":["js","json","ts"],"globals":{"ts-jest":{"diagnostics":false}},"rootDir":"src","testRegex":".spec.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"coverageDirectory":"../coverage","testEnvironment":"node"},"devDependencies":{"@types/jest":"^27.4.1","@types/lodash":"^4.14.182","@types/mocha":"^9.1.0","@types/sinon":"^10.0.11","@typescript-eslint/eslint-plugin":"^5.15.0","@typescript-eslint/parser":"^5.15.0","coveralls":"^3.1.1","eslint":"^8.11.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.5.1","prettier":"^2.6.0","sinon":"^13.0.1","ts-jest":"^27.1.3","typescript":"^4.6.2"},"types":"./dist/index.d.ts","gitHead":"98802b044b017c3a5b9a884f8956b73d4094b862","_id":"@dmytropaduchak/simple-ioc@1.1.0","_nodeVersion":"16.16.0","_npmVersion":"8.11.0","dist":{"integrity":"sha512-cCjGGsH+Wl/op1Kh8qD5y6UsLy2xD8Zlxhxy2X8Qgbmnp1bTT+6na+ox8zrlChcJvndVzrt3ZAhmjQFlMgphCA==","shasum":"536eb7f44da781e49ef2ef94fd3d957cee2facdc","tarball":"https://registry.npmjs.org/@dmytropaduchak/simple-ioc/-/simple-ioc-1.1.0.tgz","fileCount":15,"unpackedSize":10002,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICy7eYlDYrD1R+2+F07sEhEX4pO4OLCGYpjZwjVYq2D0AiEAizHNJ3HxQEfBFhAWroUN2XPv9znGw3QpxOY9r8EcxkQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2bGhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo7gg/9FqOfqnNoWnr1CunFD7FZv0TS6yMfeX4Ue45R0ntenuIcjJ4/\r\neUKgwaMa/t5MVBDukQo9opLYdk3szMsTHPFcZlPlC4jCmAERCwuyQ55VrLX1\r\njbtkZQbC/w9hvkLZDpen+nMfj2Aqo9+Bt4sZMwB6Jtp6SJXhDFD5//kirSrR\r\nnfg7kxodtTIMTqNk6J0jOmGwp2+prb+lcL5kR8K4Pu/G84Dm7ehymdbVg5Wf\r\nG7SadK+xGrfcueX6/y3AXDLZYCYmUGQXda7qxpQdQuast1tchdzuLGN0dpEU\r\nhvZxAByX8rQ/UTjy3CR3H7TcAIZVBhqoxxiFJiuyvf69a0YvZjfFX3wq9ei3\r\nyhp8wzx/Ay4EyEV5M5ILkcITmMolkMIrhzZnLDyES+Bo43GOsFzX8RoetKQK\r\njCw3GWjcmX7ZWeUb1y936bPR+SRxkd4H/sI12Z/hUOxMswDAoeI1F9XFgAoF\r\nEKu0krnO/s//ha0PeHSRql/Sd9/mVcsfHMjaIxjktvuADL/yBDrq72JLCj8A\r\nc3+453Y0PS+m7I1L+skSVg4rAhCmTWIbo1KVs58Y7BO662//coUWUxYqjLhC\r\nZLqtVLeLQFjQ44r4lkEZAoFArKw5QfjA7ZneLEW1vI4AtV5kysG981Tzfaz2\r\nj024ZbYLO+xX2kW6/xyxG02q2e7WpUbFfwc=\r\n=lgl6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"},"directories":{},"maintainers":[{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/simple-ioc_1.1.0_1658433953562_0.5840462387071108"},"_hasShrinkwrap":false}},"time":{"created":"2022-06-24T13:22:07.919Z","1.0.0":"2022-06-24T13:22:08.138Z","modified":"2022-07-21T20:05:53.855Z","1.0.1":"2022-06-24T13:57:54.923Z","1.0.3":"2022-07-21T20:00:30.023Z","1.1.0":"2022-07-21T20:05:53.744Z"},"maintainers":[{"name":"paduchak","email":"dmytro.paduchak+1@gmail.com"}],"description":"A simple inversion of control (IoC) library. This is a lightweight annotation-based dependency injection container for typescript.","homepage":"https://github.com/dmytropaduchak/simple-ioc#readme","keywords":["simple","ts","typescript","ioc"],"repository":{"type":"git","url":"git+https://github.com/dmytropaduchak/simple-ioc.git"},"author":{"name":"Dmytro Paduchak","email":"dmytro.paduchak@gmail.com"},"bugs":{"url":"https://github.com/dmytropaduchak/simple-ioc/issues"},"license":"MIT","readme":"# 🇺🇦 HELP UKRAINE\n\nGOOD EVENING WE ARE FROM UKRAINE.\n\nWe fight for democratic values, for freedom, for our future. We need your support. \nThere are dozen ways to help us, [JUST DO IT](https://github.com/pinchukdiana/help-ua#-%D1%87%D0%B0%D1%82-%D0%B1%D0%BE%D1%82%D0%B8--chat-bots).\n\n[![Build Status](https://travis-ci.org/dmytropaduchak/simple-ioc.svg?branch=master)](https://travis-ci.org/dmytropaduchak/simple-ioc)\n[![Coverage Status](https://coveralls.io/repos/github/dmytropaduchak/simple-ioc/badge.svg?branch=master)](https://coveralls.io/github/dmytropaduchak/simple-ioc?branch=master)\n[![NPM Version](https://badge.fury.io/js/simple-ioc.svg)](http://badge.fury.io/js/simple-ioc?type=dev)\n\n# Simple IoC\n\nA simple inversion of control (IoC) library. This is a lightweight annotation-based dependency injection container for typescript.\n\n## Installation \n\nYou can install this package using NPM:\n\n```sh\nnpm i @dmytropaduchak/simple-ioc --save\n```\n\n## How use\n\nExample with class injection:\n\n```typescript\nimport { Registry, registry, inject } from '@dmytropaduchak/simple-ioc';\n\nclass B {}\n\nclass A {\n  @inject() private readonly b: B;\n}\n\n@registry([A, B])\nclass App {\n  @inject() private readonly a: A;\n  @inject() private readonly registry: Registry;\n}\n```\n\nExample with raw object injection:\n\n```typescript\nimport { Registry, registry, inject } from '@dmytropaduchak/simple-ioc';\n\nconst name = 'env';\nconst value = process.env;\n\n@registry([{ name, value }])\nclass App {\n  @inject() private readonly env\n}\n```\n\nExample with custom name injection:\n\n```typescript\n\nclass B {}\n\nclass A {}\n\n@registry([A])\nclass App {\n  @inject('a') private readonly b: A;\n  @inject('b') private readonly a: B;\n}\n```\n\nExample with factory injection:\n\n```typescript\nimport { Registry, registry, inject } from '@dmytropaduchak/simple-ioc';\n\ninterface Options {\n  ...\n}\n\nclass A {\n  constructor(options: Options) {\n    console.log(options)\n  }\n}\n\nconst inject = A;\nconst useFactory = (): Options => { ... }\n\n@registry([{ inject, useFactory }])\nclass App {\n  @inject() private readonly a\n}\n\n```\n\n## Unit testing\n\nFor run unit tests, use:\n\n```\nnpm run test\n```\n\nAll unit test report you can find at `report/` folder.\n\nFor run test at watch mode, use:\n\n```\nnpm run test:dev\n```\n\n\n## Linting\n\nFor check eslint rules, use:\n\n```\nnpm run lint\n```\n\nFor auto fix all eslint bugs, use:\n\n```\nnpm run lint:fix\n```\n\n## License\n\nNest is [MIT licensed](LICENSE).\n","readmeFilename":"README.md"}