{"_id":"@akishichinibu/typedmeta","_rev":"2-36b8ba05d9236225e5fcfc92eca72cb5","name":"@akishichinibu/typedmeta","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@akishichinibu/typedmeta","version":"1.0.0","main":"dist/index.js","author":{"name":"akishichinibu@gmail.com"},"license":"MIT","scripts":{"prettier":"prettier --write ./src/ && prettier --write ./tests/","test":"jest","build":"tsc","clean":"rm -rf dist","prepack":"npm run clean; npm run build"},"dependencies":{},"devDependencies":{"reflect-metadata":"^0.1.13","@types/jest":"^27.4.0","jest":"^27.4.7","ts-jest":"^27.1.3","typescript":"^4.5.5","prettier":"^2.4.1"},"peerDependencies":{"reflect-metadata":"^0.1.13"},"types":"./dist/index.d.ts","gitHead":"e52367f643ec02938a04b24c870939691a3a2499","description":"A fully type-safe metadata schema framework, to add type annotation on the typescript meta data.","_id":"@akishichinibu/typedmeta@1.0.0","_nodeVersion":"16.4.1","_npmVersion":"8.1.4","dist":{"integrity":"sha512-kqCXJIvW0aUCYyT6EsrXOZQunaib+8UEKZ4LLhPozKPKQZj27h39fMNMpQBn73Vp2ywiT5y7lmCKayz4IXV3JA==","shasum":"b01926d728d123381674862df5d43b360efa1eee","tarball":"https://registry.npmjs.org/@akishichinibu/typedmeta/-/typedmeta-1.0.0.tgz","fileCount":24,"unpackedSize":35019,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+JjXCRA9TVsSAnZWagAAALwP/2QT4Pb9Wv1X3ZVJQf7n\nQxrn1K++Mrfq9onkrz32WDoslsosVu0t6f6E6j+CAtN9EhKdkt1sQzggMyFU\nG/4/F2uJg4NUuk3D0f6cKFT8mQ3R2f0lc1zyiJk+92eT1z60ozC1bp2k2HL+\nUwpS0TCn3OXcYssy9rWBwtIVNcNHFxt3nfLG6dM0TgWRWBlS81cuJ6D7mIk8\nJm8iCfML+Mm7Tkp+9LK+cU/KABrg9vKut9GUQHIpVI3Af/25mQaL7UsGtE/a\n9Ae07WzQ+KRtfJ+khsrD0xyAu2/OgKrtr3ibYk7aGk/2WAmrSIXOGtOmDexy\nfJPfbdujylmVafdMNve7dTE4OHw4RaV296q/2ObMauhOGt0qyfDePoHF4ULb\ns5v/n/p2Mhz8KOAXdkWKiK/bXtq1ZfubArP4lXKzrEikgomoccM34VLmJh6V\njDDLaUuS0tFGJ1adsgaqRV15ZTNYv+eFsZNQ7ce2YdoBsGyeJa+qHQC8u4A2\nPs3Nn8EN29lzzXvji/IGLvUZybu4Y4QNka1nIiW21p0xe9T7ijwYmwSz/qR3\nw4RP86GXuC/cq/wl3ISX2pjvkNhRrRh6EJdotJou/E+vpVB33WnzIeP+HYgw\nNMjVbUCpzycKw3Q0rF3oJEX3GHLRobVHVLaYfg/9VfqxsZ705sDiGpgoOPMF\nz0Jx\r\n=pe08\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPUB3Czyz+bfDKu8uyulZi3L+tWnvKgeJPo+0xDYexVQIgLuXP40xqEEqOhqqNuxr7GsbRol2nuqeMKcxXXUZJPns="}]},"_npmUser":{"name":"akishichinibu","email":"akishichinibu@gmail.com"},"directories":{},"maintainers":[{"name":"akishichinibu","email":"akishichinibu@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typedmeta_1.0.0_1643682007443_0.49469492762965617"},"_hasShrinkwrap":false},"1.0.1":{"name":"@akishichinibu/typedmeta","version":"1.0.1","main":"dist/index.js","author":{"name":"akishichinibu@gmail.com"},"license":"MIT","scripts":{"prettier":"prettier --write ./src/ && prettier --write ./tests/","test":"jest","build":"tsc","clean":"rm -rf dist","prepack":"npm run clean; npm run build"},"dependencies":{},"devDependencies":{"reflect-metadata":"^0.1.13","@types/jest":"^27.4.0","jest":"^27.4.7","ts-jest":"^27.1.3","typescript":"^4.5.5","prettier":"^2.4.1"},"peerDependencies":{"reflect-metadata":"^0.1.13"},"types":"./dist/index.d.ts","gitHead":"e52367f643ec02938a04b24c870939691a3a2499","description":"A fully type-safe metadata schema framework, to add type annotation on the typescript meta data.","_id":"@akishichinibu/typedmeta@1.0.1","_nodeVersion":"16.4.1","_npmVersion":"8.1.4","dist":{"integrity":"sha512-YaZ/QWiPcsnjSwm1d+yn/bZvVkI9p9xk+k79zDUz8AXOGAEFZtwA6yEv+Xrpugww4JW12gIwiRbj+ftxIyVGbw==","shasum":"b431fa011ca7057db52ed639043bc21cee8c3753","tarball":"https://registry.npmjs.org/@akishichinibu/typedmeta/-/typedmeta-1.0.1.tgz","fileCount":31,"unpackedSize":44336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+JxGCRA9TVsSAnZWagAA9YcP+wVmBhROK2N+fRquDv4S\niPzYhaUV+RUjOkIP7cxLowKCJAfrLv3korWnznBCQquGYiNiBy6wNUojZ/lJ\n/f0Xf1KLmYgl6+SBzMPYEVONDBe/eaXcr21/ZF9cAkKGovYwdDUu+aFBk81I\n5/tTrgfwrsXr7YZJW5eMWRM1OywvhLNF/a1yFfQhFzv4qyqSxB0ttwUnWHHn\nhIjNSeHMHfbkGz7J8whp/rOXu9OxLaRvRFLrWYts+jVMV+NWH9iH8tLrp02D\nFUy4456P4SDesqmkXgakb8uknj5+pE9/E+pM9lgL9C5hdn3Ap6iVqQin0rIe\nMWf5MIVOkO660X/vFPKuBC4ufCOkP52V8GFKkfJHGYTYpawX0pr/0nUxSdZM\ngyKiQDkZ/EqT1OburIT8HE6sdu49E2yuXX5hsfl8fHKPmALtaD/eglNmESMJ\nz+oY/jdpTpUPEba9vMZzwj1Tz0BKAJ9Ih4FJbUDKA9yvdyQksmuuEV7nXI+4\ndf2aEKw3tFsbALYAmhnYphDJ+NvkqCsoSBr/oq5NwVlvtUsZCNmipNftDCnh\noeJJ4FTdM4rGFy5OlPQiPldCrjZ3L7Fkqf6K09LIpdd+FaL94D0q9xEUHfud\nWe+GjQJrm9Y9LA7/CFCwN3fBECeIK+CplGPdhKwd1u4H8ymsqV8E0n8biHfl\nfH+Q\r\n=5OnQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCR2i2hMrWkvOoiK6A7tXUDueDwvUs8S4RtFdthpiwQcAIgEcbeBrMrxp73po8nRK+lfkVfsqqjuUW3TlsIaM232Fs="}]},"_npmUser":{"name":"akishichinibu","email":"akishichinibu@gmail.com"},"directories":{},"maintainers":[{"name":"akishichinibu","email":"akishichinibu@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/typedmeta_1.0.1_1643682886600_0.4118676258870073"},"_hasShrinkwrap":false}},"time":{"created":"2022-02-01T02:20:07.397Z","1.0.0":"2022-02-01T02:20:07.605Z","modified":"2022-04-04T12:29:49.097Z","1.0.1":"2022-02-01T02:34:46.934Z"},"maintainers":[{"name":"akishichinibu","email":"akishichinibu@gmail.com"}],"description":"A fully type-safe metadata schema framework, to add type annotation on the typescript meta data.","author":{"name":"akishichinibu@gmail.com"},"license":"MIT","readme":"# TypedMeta\n\nA fully type-safe metadata schema framework, to add type annotation on the typescript meta data. \n\nExample:\n```typescript\n\nclass TestClass {\n  id!: string;\n}\n\ntype TestClassPropertySchema = {\n  id: {\n    id1!: string;\n    id2!: boolean;\n  };\n  aPropertyDontExisted: {};\n};\n\nclass TestClassSchema extends IBaseSchema<TestClass, TestClassPropertySchema> {\n  name!: string;\n  age: number = 20;\n  optionField?: string = undefined;\n  isValid: boolean = true;\n}\n\n\nconst m = MetadataManager.fromConstructor(TestClass, TestClassSchema);\n\nconst r1 = m.getSelfMetadata('name'); // will be string, an exception will be throwed if it doesn't exist\nconst r2 = m.getSelfMetadata('age'); // will be number, if it doesn't exist, the 20 will be returned as a default value\nconst r3 = m.getSelfMetadata('optionField'); // will be string or undefined \nconst r4 = m.setSelfPropertyMetadata(\"id\", \"id1\"); // will be string\n\n```\n","readmeFilename":"README.md"}