{"_id":"ts-class-to-openapi","_rev":"30-b2c033fceb41317c51ece8a2674deab2","name":"ts-class-to-openapi","dist-tags":{"latest":"1.6.0"},"versions":{"1.0.0":{"name":"ts-class-to-openapi","version":"1.0.0","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.0.0","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"f0e5331ff35a9a92cd4614a69f8b1258784231fe","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.0.0.tgz","fileCount":27,"integrity":"sha512-MIGHBKZ6VfeqWsU0fi9oX6TiT2/p6oyCOoNEgDKm1NK4zE0X9DNEAqhnhqJ5usFVaPEVVHPbScftaUqdRtaezA==","signatures":[{"sig":"MEQCIGLCXpth5YWhOEfVKt35SQea3s5xfa+jeYFPFu48COGAAiBOm4EzoOvezmSfsqfKfxOrgeHgGE3KrYHca7l3Y5SrNA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":146364},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.0.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=8.0.0","node":">=16.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/752b28317b62631184ee7ef023ed18db/ts-class-to-openapi-1.0.0.tgz","_integrity":"sha512-MIGHBKZ6VfeqWsU0fi9oX6TiT2/p6oyCOoNEgDKm1NK4zE0X9DNEAqhnhqJ5usFVaPEVVHPbScftaUqdRtaezA==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.0.0_1756039423554_0.31233632203586237","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"ts-class-to-openapi","version":"1.0.1","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.0.1","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"7be1bc452bddba5735d30b46d08eb2d0d3efe73b","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.0.1.tgz","fileCount":26,"integrity":"sha512-RZHAgzzYXnw7GWONN2IXwJ2UbCuJcCzMGM+YfIhair3rUp7Uv4G7a0Kzo2EzLze22oo1aG5+mI6o0ZlDGGCguQ==","signatures":[{"sig":"MEUCIQCYu+WZ1ejExg/yu663i0S2zPu9FnCATcfRqpAVBKSG6QIgZpoRpaIVksrmhhdguWrLYvdYrptWiwLtOKNcKXlVd4c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189754},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"b28f1941cf839e0bb961d3d9b9c077ea32067c51","package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.0.1_1756042659234_0.7771190401628698","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"ts-class-to-openapi","version":"1.0.2","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.0.2","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"1987bd56bda81460dcb464e3729a1a52f46dd47d","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.0.2.tgz","fileCount":27,"integrity":"sha512-pTiA1Q4QpXxBSUTDHq+Ztb8aNWVICqj1V8H4Yj3ImTWEBo+U5Jkwe2kP4HfpZBCch875lAndMKIQR8/UDOw+jA==","signatures":[{"sig":"MEUCIG5IfgVcCCSWUalR4qJb38QRwH/FppRXVy3n0NMvQMmiAiEArLnWdQwEhSLhlIpedSEqz/lGAsd3vr+g7+FuVZg8158=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150127},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"ef8ec7c743536b2c3817f12bfd0a1a7a7733a0af","package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.0.2_1756341405601_0.7144353865036239","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"ts-class-to-openapi","version":"1.0.3","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.0.3","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"1487c5452da6d81f89352df873e58e57f679451b","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.0.3.tgz","fileCount":27,"integrity":"sha512-hcNCcg8hEl7t61vKjUzHaGOtGAzlVxanKe2u37bZ5dn/utYVKhdIx15MZbsIcCfW5q52avPNcnq/AsPxe0SCEQ==","signatures":[{"sig":"MEQCIGsFteJSxHsV5JzPjYJRJiWIGRlRl+is81xd4Od7dsX7AiAptEno77zV31Jo/zrzJRRRl5hcemRkSHf9n8TzRsakoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":148493},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"47f73900b958d84a9c5ba0bd354b56ede8ee9434","package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.0.3_1756377310922_0.5105856156496977","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"ts-class-to-openapi","version":"1.0.4","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.0.4","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"d4b58368be5f78640630ae2c5ba581510cbe6fbb","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.0.4.tgz","fileCount":33,"integrity":"sha512-FJyimPFAE1YVV3ZtpRAMgJAMxO1iuImTmSwAWoFN1Zqs+tmrF/Q7ZTNZM1bbSasGKXT1FKXkQ+61aise+P/1Kg==","signatures":[{"sig":"MEUCIGe/aBkMwQ5djPC07E0L0pw9cjfG7ypoh6ofZok9JEopAiEAw7vGH/cKinuLVqcTfuJ4oIL2VTQ0ekw0bkWXfFPKZtw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":221788},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"92d399dd093e10a944db8d4176a361ae534a1643","package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.0.4_1756522223971_0.7445311772418224","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"ts-class-to-openapi","version":"1.0.5","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.0.5","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"eabdaec1c022166adce963436a108fff8b088873","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.0.5.tgz","fileCount":37,"integrity":"sha512-P3QCnuUSxAJ0oh9dEwwBiyMC1WzCz6ix3/2t3T6e8cWx3T/rH9/gFXMNrcnBfIgbN6VTnZ5aRgudvnvE6ceoJg==","signatures":[{"sig":"MEYCIQDOw64m8cYwnuQgmTa7SeINpvh6Qm95rZFnoh2+gl8CIgIhAMaBzvpbA0ykV7NZ4E2RIqDr6J5xFd9wOXsP25+muCbc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":306058},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"e84d5732c73fe3b38f3418ef1bf561a561243feb","package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.0.5_1756689188981_0.6643812749432145","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"ts-class-to-openapi","version":"1.0.6","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.0.6","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"f6fe9ef0624245cb9416f2050caf97b07b7fccee","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.0.6.tgz","fileCount":24,"integrity":"sha512-OnqFRTaYHBLwHgqgMO7u6cOz02bb0TrHm3H1x0/z5AS2SFO/OiJmNo9oHvHQZtO4v7Bh0kPE5yZfXYTNgAQ78Q==","signatures":[{"sig":"MEQCIH6gU97kmpqz4KR75NE8fLohLkjnFJlMbw6Y6XoBOCcEAiB8kzKaTm9LJdwMW9lAzwBCgc6UbZHCgXWYiasgVHcjMQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":239029},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.0.6.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/bbd66d5b819a88bb93dc87dbf8c558a1/ts-class-to-openapi-1.0.6.tgz","_integrity":"sha512-OnqFRTaYHBLwHgqgMO7u6cOz02bb0TrHm3H1x0/z5AS2SFO/OiJmNo9oHvHQZtO4v7Bh0kPE5yZfXYTNgAQ78Q==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.0.6_1757955222351_0.24193950224983563","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"ts-class-to-openapi","version":"1.1.0","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.1.0","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"6ff312fb50016bb3eaec892378a148f320d125e5","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.1.0.tgz","fileCount":30,"integrity":"sha512-/HLajZpBdbLCsiHozlPHA0fnHC5ZRRNoVnPbNuJDX2ohEH2dNMezo2weqs+wyvbxm/ELdniGQD7mBJH3it7XnQ==","signatures":[{"sig":"MEMCHwsKOARud236oND54tktxrRtidVaiBgi0SSGk2iL6+wCIFZT0/8RCEh2UCLM0DWdZ1gQOOBFqUef5+0N8GBX2rh7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":256909},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.1.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/878b6f55e3849bb23eda2d6b053fd839/ts-class-to-openapi-1.1.0.tgz","_integrity":"sha512-/HLajZpBdbLCsiHozlPHA0fnHC5ZRRNoVnPbNuJDX2ohEH2dNMezo2weqs+wyvbxm/ELdniGQD7mBJH3it7XnQ==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.1.0_1758508391894_0.2129679176143262","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"ts-class-to-openapi","version":"1.1.1","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.1.1","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"e8b265d36d52dd80423490099d68f7547a987157","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.1.1.tgz","fileCount":30,"integrity":"sha512-ESTG4Uhw0V0bfjh95En1denX5NmWyCRisNkxT+XO8TqBJ9yn9whMpf7DmOrP+MtgfPTASOV7PxYt18xh9JyxWw==","signatures":[{"sig":"MEYCIQDxfkpPnSZe1ScpkFT8Jf7QWWRAjktoEnvLS2sTLjc/sAIhAL83pblDvzWEHzBwJr+cbF5r9dKlyeJ4h1rVlm68Lx+g","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":257525},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.1.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/0a920b63320411d346bb96f254bca5be/ts-class-to-openapi-1.1.1.tgz","_integrity":"sha512-ESTG4Uhw0V0bfjh95En1denX5NmWyCRisNkxT+XO8TqBJ9yn9whMpf7DmOrP+MtgfPTASOV7PxYt18xh9JyxWw==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.1.1_1758511245737_0.4823156218322846","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"ts-class-to-openapi","version":"1.1.2","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.1.2","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"566646b85697ae4d23f717cd81f54e45af04e3d1","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.1.2.tgz","fileCount":30,"integrity":"sha512-TkKW+gzRJLqZxIOe8Qh5aNZsoML9POZHdrZtx9GjCbtMu4aJNbJzYYPH0Mp+Yv7p/USoOMedThJ9iVmTyDN6ZQ==","signatures":[{"sig":"MEYCIQC1NolVXzYOsm876jV8AEnDViYY8yHXxsaBWeOi3HsmzAIhAO/CiyFKfHEIG5ETkR+6vS72XkNiISiTf5Ydrn1eUByq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":257526},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"b9fa839e6100db8e6937ba8d7603f228961bacbf","package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.1.2_1758538899646_0.6815450511175032","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"ts-class-to-openapi","version":"1.1.3","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.1.3","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"9a108bb2877e7a34c11e7f60a4d7aaa842e51af4","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.1.3.tgz","fileCount":30,"integrity":"sha512-hxZegsXm3YqAFePqCDPflWJb37mEY/w3bpv8l1iN/fXPoaTQgYxrIcv+dCAvDUyJokUuR0v9Vft3zn8rqm5V7A==","signatures":[{"sig":"MEQCIACVU64C5cNL5PSixn1a47A405i7bkwGQG+UUe+Fj/rvAiApbKTsialQ54Kk1kv1KFYgyiMW5RlG+yVmuyWFrMdztw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":259855},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.1.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/2351eb1576c854ba577dcaa5edb024de/ts-class-to-openapi-1.1.3.tgz","_integrity":"sha512-hxZegsXm3YqAFePqCDPflWJb37mEY/w3bpv8l1iN/fXPoaTQgYxrIcv+dCAvDUyJokUuR0v9Vft3zn8rqm5V7A==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.1.3_1758543068104_0.6776574750872206","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"ts-class-to-openapi","version":"1.2.0","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.2.0","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"469260ffc062ef69446f2636c8da1db3997bf4f4","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.2.0.tgz","fileCount":30,"integrity":"sha512-oaLZqczS1q815qOGyvFE9mqVTyAwq1hPJjCf3AZBfrmdINlUYm+Olls/UnyfS0SMpXTLiz+iJhCpG8PegzJfBw==","signatures":[{"sig":"MEYCIQCRp8CaRmlAdb2plY861t0/mzgfQuwxaKSg9va51PFdtgIhAJqMYB2ZDvM5KVBz/BOCfud4U7hP3ymqTbX3KCtEWuUq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":273938},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.2.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/de386f7b09e39422cd4e7ecab0a11e7f/ts-class-to-openapi-1.2.0.tgz","_integrity":"sha512-oaLZqczS1q815qOGyvFE9mqVTyAwq1hPJjCf3AZBfrmdINlUYm+Olls/UnyfS0SMpXTLiz+iJhCpG8PegzJfBw==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.2.0_1763642546415_0.2619650505190392","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"ts-class-to-openapi","version":"1.2.1","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.2.1","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"b03205dd4ffe6b9e7bc87b2a17850da7d0250c0d","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.2.1.tgz","fileCount":30,"integrity":"sha512-KlJQCV5DYVAZIntj21fbnYFHD+4PtS/DLRWtVJyqvVlhwEB1T7DJPJQvccGz7rvHHkwviXsqNQdysV6+D/yPvg==","signatures":[{"sig":"MEUCIQDO1kytBC35SSKy3/js0PhiZViXkKqL17BlpsSo8LsZSAIgM/9Gj9N+2GjfYLVAStSu+3n0gpWMPKVp1/2nDPD18WU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288582},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.2.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/084713cbe33c63307af92a595100a9fa/ts-class-to-openapi-1.2.1.tgz","_integrity":"sha512-KlJQCV5DYVAZIntj21fbnYFHD+4PtS/DLRWtVJyqvVlhwEB1T7DJPJQvccGz7rvHHkwviXsqNQdysV6+D/yPvg==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.2.1_1763900069546_0.686480861024344","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"ts-class-to-openapi","version":"1.2.2","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.2.2","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"c3d4469bc8e6f4ebec4524c70d0ed21cb403bfcf","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.2.2.tgz","fileCount":31,"integrity":"sha512-Ab7E1wBIbRd1bv7k9IOoRRRW2h6WKIHZPEYma1d3hsudD4NkxygL2++JS3uLCYTMSK/O5VcBnrbXR7O+2tL+3w==","signatures":[{"sig":"MEQCIQCbi/XENScpCWU5WtAqse7Uga7mz9enRE8xBQjJ2OFRvQIfJUgfG1SZwvnhLNr4mHMeoobgMZo8872txKmPm+FDqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":262176},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.2.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/d646c8c91843edc0a8f5fb6c61bb4f53/ts-class-to-openapi-1.2.2.tgz","_integrity":"sha512-Ab7E1wBIbRd1bv7k9IOoRRRW2h6WKIHZPEYma1d3hsudD4NkxygL2++JS3uLCYTMSK/O5VcBnrbXR7O+2tL+3w==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.2.2_1763905410798_0.1878237986576916","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"ts-class-to-openapi","version":"1.2.3","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.2.3","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"a38417d89082662b05e2d31f971ac22ddc9c9497","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.2.3.tgz","fileCount":42,"integrity":"sha512-+Cfk51z+SASEx2fic9POQHiknUsQb64Pd4yvZAXzH3NzL5adDp1ufVlUTVAuZ/alBkqrbQ1RYc6aHTzfv9mqBg==","signatures":[{"sig":"MEQCICnKJk4WTcN6x2RtnBVMpI6+q0Swi/XsMb7EkpkmHuuKAiBjnkAqRwuABh5bUMLl1AZIFO5/q/N2A811h+89XTwxPg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":290423},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.2.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/138dd5ab8ff3c824517a2dc5d6446241/ts-class-to-openapi-1.2.3.tgz","_integrity":"sha512-+Cfk51z+SASEx2fic9POQHiknUsQb64Pd4yvZAXzH3NzL5adDp1ufVlUTVAuZ/alBkqrbQ1RYc6aHTzfv9mqBg==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"glob":"10.3.10","tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","socket.io":"4.8.1","@types/node":"24.2.1","class-validator":"0.14.2","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.0"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.2.3_1763924894613_0.6147876597447939","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"ts-class-to-openapi","version":"1.2.4","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.2.4","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"797bb52de5a416147941167554d3cba54b498d5f","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.2.4.tgz","fileCount":42,"integrity":"sha512-ccvcB4mHhCs/bn2YnYJBdRnwcRa3UfMcvi617LtAgDA7aTYEb7JZmGYIXe77nsbstW0Mtq4SoEsFImX86aLf4Q==","signatures":[{"sig":"MEUCIAPeujhzl3tzKHOvoMJYINQhHV0JQ7CSfzv5OYLE7yNRAiEA07r4FL1NuNtbEI4+XMyXYbioEKgY6ccB0HIzuL/F9OE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":290374},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.2.4.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/c4ed680a05c5d1083bfea5a04632f646/ts-class-to-openapi-1.2.4.tgz","_integrity":"sha512-ccvcB4mHhCs/bn2YnYJBdRnwcRa3UfMcvi617LtAgDA7aTYEb7JZmGYIXe77nsbstW0Mtq4SoEsFImX86aLf4Q==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2","class-validator":"0.14.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.2"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.2.4_1763925157867_0.23047241243353134","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"ts-class-to-openapi","version":"1.2.5","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.2.5","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"fad35124c0f3f36b840a337fb806bda7c84a556f","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.2.5.tgz","fileCount":43,"integrity":"sha512-zsmD4lOL/I0jw8oMHA52Qa4a+hUzCvbgey33p+uGc4gf7aM1wocM2y7PH3E23JqcNt6H3cLG+KRsVkWS3JyT5g==","signatures":[{"sig":"MEQCIA1hI8HzHDXySJmTpEvX+0TS/C1sgG/aD3E0qTTD5uHMAiB1SVfca/LLdDOtxSQ0nuD6VkQm/L2Wqn9l8VtTxY5/RA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295427},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.2.5.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/3b42861f14de65a73115b9f9024e29f0/ts-class-to-openapi-1.2.5.tgz","_integrity":"sha512-zsmD4lOL/I0jw8oMHA52Qa4a+hUzCvbgey33p+uGc4gf7aM1wocM2y7PH3E23JqcNt6H3cLG+KRsVkWS3JyT5g==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2","class-validator":"0.14.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.2"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.2.5_1763982822718_0.5386273233172116","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"ts-class-to-openapi","version":"1.3.0","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.3.0","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"70af71c9ca8ec0141ff5d36c07d355692d02e6ee","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.3.0.tgz","fileCount":43,"integrity":"sha512-M0JXATNW6IpqntS/JVhPTMsr4DgfixVSItuylGwj7PBQD7lbmcu2YqrorBP0iHRyZHbrKV8ZT5A4eXXh/MuuHg==","signatures":[{"sig":"MEYCIQCfPqRy9YcinplxTewkqKw87gprp+Q1vbeHSWU2OwAyOwIhAIGIjzeuaAKcSUOpBVRcUNLDHtSt2kekaZxwa3jE+dC7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294999},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.3.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/4078018a494e1408c5ba77b88cab8415/ts-class-to-openapi-1.3.0.tgz","_integrity":"sha512-M0JXATNW6IpqntS/JVhPTMsr4DgfixVSItuylGwj7PBQD7lbmcu2YqrorBP0iHRyZHbrKV8ZT5A4eXXh/MuuHg==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2","class-validator":"0.14.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.2"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.3.0_1765562896974_0.6487561428747399","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"ts-class-to-openapi","version":"1.3.1","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.3.1","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"11d1a1872fe01a6b1ee10be97fdeb3d4f98e94a8","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.3.1.tgz","fileCount":43,"integrity":"sha512-0T5S/2375bkF0EyAQ+wQ+T3hnaFJaBiXkIrEC/L0VGyRxRo3oELuudVCPcka5NcRl0iDejCuVNcJczk2y+cXXQ==","signatures":[{"sig":"MEUCIACJAosb0O7D2bmZOdcaS/Oh0Dv3YoQCvpVz2pD63jqKAiEA+59EEr5PWlSwtesJVZXsRFoZZfzUoFv0a//JuQXQxxI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295427},"main":"./dist/index.js","_from":"file:ts-class-to-openapi-1.3.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"/tmp/682c5f9ebde7471494613435732e2a70/ts-class-to-openapi-1.3.1.tgz","_integrity":"sha512-0T5S/2375bkF0EyAQ+wQ+T3hnaFJaBiXkIrEC/L0VGyRxRo3oELuudVCPcka5NcRl0iDejCuVNcJczk2y+cXXQ==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2","class-validator":"0.14.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.2"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.3.1_1765934504182_0.06499258312527756","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"ts-class-to-openapi","version":"1.3.2","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.3.2","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"2d8d772d7f3eff7f214903511cf8e4d768784306","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.3.2.tgz","fileCount":43,"integrity":"sha512-PG0me2aFbE4dwulM/V27fq3dAOPlEExkIFrfBxhnMt23l/49c1JgRTgu0TUKdjOyd4Ha4llEmArQgJigaDuAxA==","signatures":[{"sig":"MEQCIAZQxlYXte6iIaqU2WH+8n/hlqfQmbwMB3wYqJFciiS7AiBmOqHfowW+pE8W72iv3Xu+fIrzvVbhsmwsSWZbNRf14Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":297240},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.esm.js","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"}},"gitHead":"2c41704c08ab8c69ab9b81e5aef833b2e6e0580f","package":"./package-dist.json","scripts":{"dev":"node --trace-deprecation  --watch dist/run.js","test":"npm run build:test && node --test dist/test.js","build":"rm -rf dist && rollup -c","format":"prettier --write .","build:test":"rm -rf dist && BUILD_TARGET=test rollup -c","prepublish":"pnpm run build","test:watch":"npm run build:test && node --test --watch dist/**/*.test.js","build:watch":"rm -rf dist && rollup -c -w","format:check":"prettier --check .","test:coverage":"npm run build:test && node --test --experimental-test-coverage dist/**/*.test.js"},"typings":"./dist/index.d.ts","_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.3","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.18.0","dependencies":{"typescript":"5.0.2","class-validator":"0.14.2"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tslib":"2.8.1","rollup":"4.46.2","prettier":"3.6.2","@types/node":"24.2.1","@rollup/plugin-typescript":"12.1.4"},"peerDependencies":{"class-validator":"0.14.2"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.3.2_1767926098996_0.8202138889302864","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"ts-class-to-openapi","version":"1.3.3","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.3.3","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"a2c8ac99c40c326212e609c1354b46faea6e3d09","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.3.3.tgz","fileCount":7,"integrity":"sha512-lHsdkdS9gHlU0B75Wh8Ce82kBkqprASQAaRZjk1VNkqiaFwJu2u6Zh/uZrUhaaMW8GP/Dw2D85VovvX8ZkZebg==","signatures":[{"sig":"MEYCIQCXBNWf0XfN+MhHsA5NjsZ5ILh/HAttxb4QS0P/johv+gIhAPEy5g5ALMwjzalltGAlLKY8UPUdqBPE1jhmNL2+8ecE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103518},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.3.3.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --test --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"rm -rf dist && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\bf0dc441ebfa1434693bc3773550cd0c\\ts-class-to-openapi-1.3.3.tgz","_integrity":"sha512-lHsdkdS9gHlU0B75Wh8Ce82kBkqprASQAaRZjk1VNkqiaFwJu2u6Zh/uZrUhaaMW8GP/Dw2D85VovvX8ZkZebg==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.4","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.21.1","dependencies":{"typescript":"5.9.3","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.3.3_1774126098415_0.9139421484734109","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"ts-class-to-openapi","version":"1.3.4","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.3.4","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"9c4d0cd00359520d38e9219d1fccdc069dc0d86c","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.3.4.tgz","fileCount":7,"integrity":"sha512-3ZbEi8Lk2XUn5dn9W+cZm04Q0Zv+IyrU/wxL/tc2MaxJvC+iT7jh6ETMEc9+EG/GI3VsoE4sGYpAjK3V/WG5Sg==","signatures":[{"sig":"MEYCIQC37FoUUP/lIKJTmCIUfGeDlb6nvuYcFqjWXjVOLqNYRwIhAPDizE65bOJPXrrsXbVs4JPCRIykWR5LDCWclxeobIYM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102890},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.3.4.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --test --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && rm -rf dist && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\35e01bbd25cad7644d0cee2a92c419e4\\ts-class-to-openapi-1.3.4.tgz","_integrity":"sha512-3ZbEi8Lk2XUn5dn9W+cZm04Q0Zv+IyrU/wxL/tc2MaxJvC+iT7jh6ETMEc9+EG/GI3VsoE4sGYpAjK3V/WG5Sg==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.4","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.21.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.3.4_1774479412166_0.19992407279960167","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"ts-class-to-openapi","version":"1.4.0","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.4.0","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"b9596cec4bd6b94d5e1d5502f1aaced7ae215648","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.4.0.tgz","fileCount":7,"integrity":"sha512-Umsr3G+3gqXU9mW3uBnHXG9vtGpNfF4fSDipGV9/kEbVSIcJSE5INOdh07LbfLnjRJvq9DGlSPNqI700QEJT+g==","signatures":[{"sig":"MEQCIEJTdU/Bs81PeB54FTNwPuiN++DCJz4BP7s2J1UyIzy9AiBHotctZ6ylqUchMl546eMKuSW1ANMODX7brWbrvSYs2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105366},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.4.0.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\df472f6ce2fc19b4b1a847699fc6316b\\ts-class-to-openapi-1.4.0.tgz","_integrity":"sha512-Umsr3G+3gqXU9mW3uBnHXG9vtGpNfF4fSDipGV9/kEbVSIcJSE5INOdh07LbfLnjRJvq9DGlSPNqI700QEJT+g==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.4","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.21.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.4.0_1775140390030_0.8872686774785954","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"ts-class-to-openapi","version":"1.4.1","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.4.1","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"e59b482661406586ab2a0adf2c93c225a40ad3b0","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.4.1.tgz","fileCount":7,"integrity":"sha512-pKnlkV1hkbjfE0xRES7a4bl4P7SLEZEPsjS2+/bZr5J0qNhy26twgdw6rTZPZTd4slaLGRbFOPv/7fXzRqkxcg==","signatures":[{"sig":"MEQCIBcbUf/F5SHQu4asuCy/kqqVMYhyBEFXP7xoNrThNeIOAiA/HSgoN3o/SrUJpP8Go0J000OMeFvsENgZZ4jZUru4Xg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":111314},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.4.1.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\f23c31368c8fc3d6a60cb960d1865822\\ts-class-to-openapi-1.4.1.tgz","_integrity":"sha512-pKnlkV1hkbjfE0xRES7a4bl4P7SLEZEPsjS2+/bZr5J0qNhy26twgdw6rTZPZTd4slaLGRbFOPv/7fXzRqkxcg==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.4","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.21.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.4.1_1775245160263_0.5059100521430002","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"ts-class-to-openapi","version":"1.4.2","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.4.2","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"e941239b9096bd5d1906b21a40dd8236b9fdf7fc","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.4.2.tgz","fileCount":7,"integrity":"sha512-IL1nP5u5gnZ+y0+/2exgKqdxUBDjnNZ8lTQoJ5MzEd85ul6Pdv6p3rr61NWCaPG/xC+N75Mu8a/p9d6CvwG0jA==","signatures":[{"sig":"MEUCIQDjON5YpIsoezKOH0U67QJ+lDtB1dZZPNmfh+BUohsQ5gIgWAhz1+XNA0plfSDDTc/LMkMDY5QX6kPrFkXfXE+nZB8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117046},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.4.2.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\a32c065e6799b72e4dfcc5ef7c2bf757\\ts-class-to-openapi-1.4.2.tgz","_integrity":"sha512-IL1nP5u5gnZ+y0+/2exgKqdxUBDjnNZ8lTQoJ5MzEd85ul6Pdv6p3rr61NWCaPG/xC+N75Mu8a/p9d6CvwG0jA==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.4","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.21.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.4.2_1775274100836_0.0690430838642806","host":"s3://npm-registry-packages-npm-production"}},"1.4.3":{"name":"ts-class-to-openapi","version":"1.4.3","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.4.3","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"e9654256f9d65174d6687f8c9a8e7c11e96532f9","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.4.3.tgz","fileCount":7,"integrity":"sha512-14oyJacNQ5l18MJkehlD0F7RAnG8TjTT7Jup7g8754EkgG24Z33Jq4MeDVtLAtDGdDX9U8KA8ohdoc0bIEAQjQ==","signatures":[{"sig":"MEQCIEx4EHi2ONV8juPoSq5Geyavs+kHJtFRfZR45prWGcaeAiAqT8HvnVY7dI2Ib8ud3dX9QmjrW8+n8y0R04Iwd9BZaA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":117950},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.4.3.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\14d8d8fd61e574ee025e7fd906c059e9\\ts-class-to-openapi-1.4.3.tgz","_integrity":"sha512-14oyJacNQ5l18MJkehlD0F7RAnG8TjTT7Jup7g8754EkgG24Z33Jq4MeDVtLAtDGdDX9U8KA8ohdoc0bIEAQjQ==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.4","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.21.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.4.3_1775305959379_0.6829185302302141","host":"s3://npm-registry-packages-npm-production"}},"1.4.4":{"name":"ts-class-to-openapi","version":"1.4.4","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.4.4","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"af00f5af34c7eecc8fe83acefdc1197a827ca7c7","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.4.4.tgz","fileCount":7,"integrity":"sha512-P6QfxI4hmhIQKNAuLclBmyCeuxCHrrHdu77ro6GKJA9/UDcVMU9tf60z+0+gamh/R9FqBy5bqJgNQo29PjRmaQ==","signatures":[{"sig":"MEUCIG4DdxHc9eTljOgUUR9/tRxn/5VoNP60SWV1qgU1lcENAiEA2Vbau5uIReVjTRsDlp/+/s8KpK2uaBUlN+LrBuq5ZOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118195},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.4.4.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\8c8233ac8c3ff025c6b78a96757b1873\\ts-class-to-openapi-1.4.4.tgz","_integrity":"sha512-P6QfxI4hmhIQKNAuLclBmyCeuxCHrrHdu77ro6GKJA9/UDcVMU9tf60z+0+gamh/R9FqBy5bqJgNQo29PjRmaQ==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.4","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.21.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.4.4_1775308278540_0.8149697402720271","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"ts-class-to-openapi","version":"1.5.0","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.5.0","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"68cdef3dfa292d107de1c780ae4b0792d0aedb9b","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.5.0.tgz","fileCount":7,"integrity":"sha512-9+ruVLJlpZGjIofFR28rD7cvxfT2Yt0m/mXjwNjbg1BzINuHS241x+xYQA7m0X6M6wIZ+Iag8nv3UBkFxzeFxw==","signatures":[{"sig":"MEYCIQDa8/Dry5MFv5nU1jhOpVz6j32WYcyvxJpbtVHAAzDq3gIhAP0mm8Ja3VC70ZCjsAn5H/hHfF7eNo/asThnU4Tg73NB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124703},"main":"./dist/index.cjs","type":"module","_from":"file:ts-class-to-openapi-1.5.0.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"package":"./package-dist.json","scripts":{"dev":"node --import tsx --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"_resolved":"C:\\Users\\JTEJED~1\\AppData\\Local\\Temp\\1c9e1da1dc0c2c1b16c1d58aa5a20dde\\ts-class-to-openapi-1.5.0.tgz","_integrity":"sha512-9+ruVLJlpZGjIofFR28rD7cvxfT2Yt0m/mXjwNjbg1BzINuHS241x+xYQA7m0X6M6wIZ+Iag8nv3UBkFxzeFxw==","repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.8","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.23.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.5.0_1788463020069_0.014425269080284187","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"ts-class-to-openapi","version":"1.5.1","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"license":"MIT","_id":"ts-class-to-openapi@1.5.1","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"dist":{"shasum":"3e01447febf53112c19cf7d30ceae23e16b16ef4","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.5.1.tgz","fileCount":7,"integrity":"sha512-4FMwSNyif3weOxJj4Ci+gxjF6MzCAizLPm2MKIwak2IexNnWSLe5OdtQyKh3GbjxGmolYbQbv37e6qugAoULwg==","signatures":[{"sig":"MEQCIGKOO4b5jxRKyXizDjXN8xJRDsBkF/CtgNn2/6W/U1ETAiBx0suBTn8U4goWsVfwk9KtoYYy6SkOdNMLLDxPC0eCvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125134},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.mts","module":"./dist/index.mjs","engines":{"npm":">=6.14.18","node":">=14.21.3"},"exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"eadfe5bf1515c178148f4843935e824210b9c020","package":"./package-dist.json","scripts":{"dev":"node --import tsx --inspect --watch ./src/run.ts","test":"node --import tsx --test test/testCases/**/*.test.ts","build":"tsc --noEmit && tsdown","format":"prettier --write .","prepublish":"pnpm build","test:watch":"node --import tsx --inspect --test --watch test/testCases/**/*.test.ts","build:watch":"rm -rf dist && tsdown --watch","postpublish":"git push && git push --tags","format:check":"prettier --check .","test:coverage":"node --import tsx --test --experimental-test-coverage test/testCases/**/*.test.ts"},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"repository":{"url":"git+https://github.com/julioolivares/ts-class-to-openapi.git","type":"git"},"_npmVersion":"10.9.8","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","directories":{},"_nodeVersion":"22.23.1","dependencies":{"typescript":"6.0.2","class-validator":"0.15.1"},"engineStrict":true,"_hasShrinkwrap":false,"devDependencies":{"tsx":"4.21.0","tslib":"2.8.1","tsdown":"0.21.4","prettier":"3.6.2","@types/node":"24.2.1"},"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/ts-class-to-openapi_1.5.1_1788578481065_0.3950260845262472","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"ts-class-to-openapi","version":"1.6.0","description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","type":"module","main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/index.d.mts","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"repository":{"type":"git","url":"git+https://github.com/julioolivares/ts-class-to-openapi.git"},"keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"author":{"name":"Julio Olivares"},"homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"license":"MIT","engines":{"node":">=14.21.3","npm":">=6.14.18"},"engineStrict":true,"peerDependencies":{"class-validator":"0.15.1"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"dependencies":{"class-validator":"0.15.1","typescript":"6.0.2"},"devDependencies":{"@types/node":"24.2.1","prettier":"3.9.6","tsdown":"0.21.4","tsx":"4.23.13"},"package":"./package-dist.json","scripts":{"test":"tsx --test test/testCases/*.test.ts","prettier":"prettier --write ./src/","test:watch":"tsx --inspect --test --watch test/testCases/*.test.ts","test:coverage":"tsx --test --experimental-test-coverage test/testCases/*.test.ts","build":"tsc --noEmit && tsdown","build:watch":"rm -rf dist && tsdown --watch","dev":"tsx --inspect --watch ./src/run.ts","format":"prettier --write .","format:check":"prettier --check .","prepublish":"pnpm build"},"_id":"ts-class-to-openapi@1.6.0","_integrity":"sha512-m1kncvOF0NLILzAM+Qd964ikeJ1Zj+1skR0MFA6vjuZIgGmid0DI5d9srO14zvPuRbpz2XPJ5RrGPbRVqnIQyQ==","_resolved":"/tmp/42040eb729b3e6c609c136f0cd4ab987/ts-class-to-openapi-1.6.0.tgz","_from":"file:ts-class-to-openapi-1.6.0.tgz","_nodeVersion":"22.23.2","_npmVersion":"10.9.8","dist":{"integrity":"sha512-m1kncvOF0NLILzAM+Qd964ikeJ1Zj+1skR0MFA6vjuZIgGmid0DI5d9srO14zvPuRbpz2XPJ5RrGPbRVqnIQyQ==","shasum":"41c77e9d76b2b2d04c58cb014f3894395d9930c7","tarball":"https://registry.npmjs.org/ts-class-to-openapi/-/ts-class-to-openapi-1.6.0.tgz","fileCount":7,"unpackedSize":128160,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEeMOQu12M2WCdZXF4hoS/reVVtASaRfFqFNmgNMDNCCAiEA/Vl5XFLhNC8hQWDfFpPQISavhI0mkeiuDlK7fyjBPgk="}]},"_npmUser":{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"},"directories":{},"maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ts-class-to-openapi_1.6.0_1789006899186_0.20629723255507337"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-24T12:43:43.553Z","modified":"2026-09-10T02:21:39.525Z","1.0.0":"2025-08-24T12:43:43.768Z","1.0.1":"2025-08-24T13:37:39.431Z","1.0.2":"2025-08-28T00:36:45.800Z","1.0.3":"2025-08-28T10:35:11.121Z","1.0.4":"2025-08-30T02:50:24.220Z","1.0.5":"2025-09-01T01:13:09.160Z","1.0.6":"2025-09-15T16:53:42.538Z","1.1.0":"2025-09-22T02:33:12.092Z","1.1.1":"2025-09-22T03:20:45.934Z","1.1.2":"2025-09-22T11:01:39.902Z","1.1.3":"2025-09-22T12:11:08.354Z","1.2.0":"2025-11-20T12:42:26.638Z","1.2.1":"2025-11-23T12:14:29.743Z","1.2.2":"2025-11-23T13:43:31.004Z","1.2.3":"2025-11-23T19:08:14.802Z","1.2.4":"2025-11-23T19:12:38.054Z","1.2.5":"2025-11-24T11:13:42.905Z","1.3.0":"2025-12-12T18:08:17.120Z","1.3.1":"2025-12-17T01:21:44.340Z","1.3.2":"2026-01-09T02:34:59.130Z","1.3.3":"2026-03-21T20:48:18.553Z","1.3.4":"2026-03-25T22:56:52.318Z","1.4.0":"2026-04-02T14:33:10.178Z","1.4.1":"2026-04-03T19:39:20.430Z","1.4.2":"2026-04-04T03:41:40.990Z","1.4.3":"2026-04-04T12:32:39.528Z","1.4.4":"2026-04-04T13:11:18.682Z","1.5.0":"2026-09-03T19:17:00.198Z","1.5.1":"2026-09-05T03:21:21.213Z","1.6.0":"2026-09-10T02:21:39.331Z"},"bugs":{"url":"https://github.com/julioolivares/ts-class-to-openapi/issues"},"author":{"name":"Julio Olivares"},"license":"MIT","homepage":"https://github.com/julioolivares/ts-class-to-openapi#readme","keywords":["ts-class-to-openapi","typescript-to-openapi","class-validator","openapi","swagger","typescript","validation","schema","api","dto","nestjs","express","decorators","transform","json-schema","rest-api","documentation"],"repository":{"type":"git","url":"git+https://github.com/julioolivares/ts-class-to-openapi.git"},"description":"Transform TypeScript classes into OpenAPI 3.1.0 schema objects, which support class-validator decorators","maintainers":[{"name":"juliotejeda","email":"julioolivarestejeda@gmail.com"}],"readme":"# 🔄 ts-class-to-openapi\n\n[![npm version](https://badge.fury.io/js/ts-class-to-openapi.svg)](https://www.npmjs.com/package/ts-class-to-openapi) [![npm downloads](https://img.shields.io/npm/dm/ts-class-to-openapi.svg)](https://www.npmjs.com/package/ts-class-to-openapi)\n\n✨ **Transform TypeScript classes into OpenAPI 3.1.0 schemas**\n\nA robust and efficient library that automatically transforms TypeScript classes into OpenAPI-compatible schemas. Compatible with **pure TypeScript classes** and **class-validator decorated classes**.\n\n> **What is OpenAPI?** OpenAPI (formerly Swagger) is the industry standard for describing REST APIs. This library generates OpenAPI 3.1.0 compatible schemas that can be used for API documentation, client SDK generation, and validation.\n\n## 🚀 Key Features\n\n- ✅ **Direct transformation** - Convert any TypeScript class without additional configuration\n- ✅ **Zero runtime dependencies** - No `reflect-metadata` or complex configurations required\n- ✅ **class-validator integration** - Enrich schemas using validation decorators\n- ✅ **Automatic documentation generation** - Generate Swagger documentation from existing classes\n- ✅ **Native TypeScript support** - Full compatibility with enums, arrays, and nested objects\n\n## 🎯 Quick Example\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\n\nclass User {\n  /**\n   * User identifier, is a primary key\n   */\n  id: number\n  name: string\n  email: string\n  age?: number\n}\n\nconst schema = transform(User)\n\nconsole.log(JSON.stringify(schema, null, 2))\n```\n\n**Generated output:**\n\n```json\n{\n  \"name\": \"User\",\n  \"schema\": {\n    \"type\": \"object\",\n    \"properties\": {\n      \"id\": {\n        \"type\": \"number\",\n        \"description\": \"User identifier, is a primary key\"\n      },\n      \"name\": { \"type\": \"string\" },\n      \"email\": { \"type\": \"string\" },\n      \"age\": { \"type\": \"number\" }\n    },\n    \"required\": [\"id\", \"name\", \"email\"]\n  }\n}\n```\n\n## 📦 Installation\n\n```bash\n# Using npm\nnpm install ts-class-to-openapi\n\n# Using yarn\nyarn add ts-class-to-openapi\n\n# Using pnpm\npnpm add ts-class-to-openapi\n```\n\n### Additional Dependencies for class-validator\n\nTo use validation decorators and generate more detailed schemas:\n\n```bash\nnpm install ts-class-to-openapi class-validator\n```\n\n> **Note**: The `class-validator` dependency is optional and only required when using validation decorators.\n\n## 🎨 Class Transformation Examples\n\n### 1. Class with Advanced Validations\n\nFor more detailed schemas, class-validator decorators can be incorporated:\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\nimport { IsString, IsEmail, IsNotEmpty, IsInt, Min, Max } from 'class-validator'\n\n// Class with validation decorators\nclass User {\n  @IsString()\n  @IsNotEmpty()\n  name: string\n\n  @IsEmail()\n  email: string\n\n  @IsInt()\n  @Min(18)\n  @Max(100)\n  age: number\n}\n\nconst result = transform(User)\n```\n\n**Generated output:**\n\n```json\n{\n  \"name\": \"User\",\n  \"schema\": {\n    \"type\": \"object\",\n    \"properties\": {\n      \"name\": { \"type\": \"string\" },\n      \"email\": {\n        \"type\": \"string\",\n        \"format\": \"email\"\n      },\n      \"age\": {\n        \"type\": \"integer\",\n        \"format\": \"int32\",\n        \"minimum\": 18,\n        \"maximum\": 100\n      }\n    },\n    \"required\": [\"name\", \"email\", \"age\"]\n  }\n}\n```\n\n### 2. Nested Objects and Arrays\n\nAutomatic processing of complex relationships:\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\n\nclass Address {\n  street: string\n  city: string\n  zipCode: string\n}\n\nclass Role {\n  id: number\n  name: string\n  permissions: string[]\n}\n\nclass User {\n  id: number\n  name: string\n  email: string\n  address: Address // Nested object\n  roles: Role[] // Array of objects\n  phone?: string // Optional property\n}\n\nconst schema = transform(User)\n```\n\n**Generated output:**\n\n```json\n{\n  \"name\": \"User\",\n  \"schema\": {\n    \"type\": \"object\",\n    \"properties\": {\n      \"id\": { \"type\": \"number\" },\n      \"name\": { \"type\": \"string\" },\n      \"email\": { \"type\": \"string\" },\n      \"address\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"street\": { \"type\": \"string\" },\n          \"city\": { \"type\": \"string\" },\n          \"zipCode\": { \"type\": \"string\" }\n        },\n        \"required\": [\"street\", \"city\", \"zipCode\"]\n      },\n      \"roles\": {\n        \"type\": \"array\",\n        \"items\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"id\": { \"type\": \"number\" },\n            \"name\": { \"type\": \"string\" },\n            \"permissions\": {\n              \"type\": \"array\",\n              \"items\": { \"type\": \"string\" }\n            }\n          },\n          \"required\": [\"id\", \"name\", \"permissions\"]\n        }\n      },\n      \"phone\": { \"type\": \"string\" }\n    },\n    \"required\": [\"id\", \"name\", \"email\", \"address\", \"roles\"]\n  }\n}\n```\n\n### 3. Class Inheritance\n\nFull support for class inheritance via `extends`. Properties from parent classes are automatically included in the generated schema, and generic type parameters are resolved:\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\n\nclass Base<T> {\n  data: T\n}\n\nclass ConcreteString extends Base<string> {\n  other: number\n}\n\nconst schema = transform(ConcreteString)\n```\n\n**Generated output:**\n\n```json\n{\n  \"name\": \"ConcreteString\",\n  \"schema\": {\n    \"type\": \"object\",\n    \"properties\": {\n      \"data\": { \"type\": \"string\" },\n      \"other\": { \"type\": \"number\" }\n    },\n    \"required\": [\"data\", \"other\"]\n  }\n}\n```\n\n### 4. Generic Classes\n\nTransform generic classes with concrete type arguments. The library scans your `transform()` call sites at build time to resolve the generic type parameters:\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\n\nclass PaginatedResponse<Entity> {\n  rows: Entity[]\n  cursor?: string\n  next: boolean\n  prev: boolean\n}\n\nclass User {\n  id: number\n  name: string\n  email: string\n}\n\nconst schema = transform(PaginatedResponse<User>)\n```\n\n**Generated output:**\n\n```json\n{\n  \"name\": \"PaginatedResponse\",\n  \"schema\": {\n    \"type\": \"object\",\n    \"properties\": {\n      \"rows\": {\n        \"type\": \"array\",\n        \"items\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"id\": { \"type\": \"number\" },\n            \"name\": { \"type\": \"string\" },\n            \"email\": { \"type\": \"string\" }\n          },\n          \"required\": [\"id\", \"name\", \"email\"]\n        }\n      },\n      \"cursor\": { \"type\": \"string\" },\n      \"next\": { \"type\": \"boolean\" },\n      \"prev\": { \"type\": \"boolean\" }\n    },\n    \"required\": [\"rows\", \"next\", \"prev\"]\n  }\n}\n```\n\n### 5. Enumerations and Special Types\n\nFull compatibility with TypeScript enumerations (both decorated and pure), and literal object as enums:\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\nimport { IsEnum } from 'class-validator'\n\nenum UserType {\n  ADMIN = 'admin',\n  USER = 'user',\n  MODERATOR = 'moderator',\n}\n\nenum Priority {\n  LOW = 1,\n  MEDIUM = 2,\n  HIGH = 3,\n}\n\nclass Task {\n  @IsEnum(UserType)\n  assignedTo: UserType\n\n  // Pure TypeScript enum (automatically detected without decorator)\n  status: UserType\n\n  @IsEnum(Priority)\n  priority?: Priority\n\n  title: string\n  completed: boolean\n  dueDate: Date\n}\n\nconst schema = transform(Task)\n```\n\n**Generated output:**\n\n```json\n{\n  \"name\": \"Task\",\n  \"schema\": {\n    \"type\": \"object\",\n    \"properties\": {\n      \"assignedTo\": {\n        \"type\": \"string\",\n        \"enum\": [\"admin\", \"user\", \"moderator\"]\n      },\n      \"status\": {\n        \"type\": \"string\",\n        \"enum\": [\"admin\", \"user\", \"moderator\"]\n      },\n      \"priority\": {\n        \"type\": \"number\",\n        \"enum\": [1, 2, 3]\n      },\n      \"title\": { \"type\": \"string\" },\n      \"completed\": { \"type\": \"boolean\" },\n      \"dueDate\": {\n        \"type\": \"string\",\n        \"format\": \"date-time\"\n      }\n    },\n    \"required\": [\"assignedTo\", \"status\", \"title\", \"completed\", \"dueDate\"]\n  }\n}\n```\n\n## 🌐 REST API Integration\n\n### Implementation with Express.js and Swagger UI\n\n```typescript\nimport express from 'express'\nimport swaggerUi from 'swagger-ui-express'\nimport { transform } from 'ts-class-to-openapi'\nimport { IsString, IsEmail, IsNotEmpty, IsInt, Min, Max } from 'class-validator'\n\n// DTO definition with validation decorators\nclass User {\n  @IsString()\n  @IsNotEmpty()\n  name: string\n\n  @IsEmail()\n  email: string\n\n  @IsInt()\n  @Min(18)\n  @Max(100)\n  age: number\n}\n\nclass CreateUserDto {\n  @IsString()\n  @IsNotEmpty()\n  name: string\n\n  @IsEmail()\n  email: string\n}\n\nconst app = express()\n\n// Schema generation from classes\nconst userSchema = transform(User)\nconst createUserSchema = transform(CreateUserDto)\n\n// OpenAPI specification configuration\nconst swaggerSpecification = {\n  openapi: '3.1.0',\n  info: { title: 'Management API', version: '1.0.0' },\n  components: {\n    schemas: {\n      [userSchema.name]: userSchema.schema,\n      [createUserSchema.name]: createUserSchema.schema,\n    },\n  },\n}\n\n// Swagger UI configuration\napp.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerSpecification))\n\napp.listen(3000, () => {\n  console.log('API documentation available at http://localhost:3000/api-docs')\n})\n```\n\n### Complete POST endpoint implementation with schema validation\n\n```typescript\nimport express from 'express'\nimport swaggerUi from 'swagger-ui-express'\nimport { transform } from 'ts-class-to-openapi'\nimport {\n  IsString,\n  IsEmail,\n  IsNotEmpty,\n  IsInt,\n  Min,\n  Max,\n  IsOptional,\n} from 'class-validator'\n\n// Domain entity definition\nclass User {\n  @IsInt()\n  @Min(1)\n  id: number\n\n  @IsString()\n  @IsNotEmpty()\n  name: string\n\n  @IsEmail()\n  email: string\n\n  @IsInt()\n  @Min(18)\n  @Max(100)\n  age: number\n\n  @IsOptional()\n  @IsString()\n  phone?: string\n}\n\n// DTO for user creation\nclass CreateUserDto {\n  @IsString()\n  @IsNotEmpty()\n  name: string\n\n  @IsEmail()\n  email: string\n\n  @IsInt()\n  @Min(18)\n  @Max(100)\n  age: number\n\n  @IsOptional()\n  @IsString()\n  phone?: string\n}\n\nconst app = express()\napp.use(express.json())\n\n// Schema generation from classes\nconst userSchema = transform(User)\nconst createUserSchema = transform(CreateUserDto)\n\n// Complete OpenAPI specification with POST endpoint\nconst swaggerSpecification = {\n  openapi: '3.1.0',\n  info: { title: 'User Management API', version: '1.0.0' },\n  components: {\n    schemas: {\n      [userSchema.name]: userSchema.schema,\n      [createUserSchema.name]: createUserSchema.schema,\n      UserResponse: {\n        type: 'object',\n        properties: {\n          data: { $ref: `#/components/schemas/${userSchema.name}` },\n          success: { type: 'boolean' },\n        },\n        required: ['data', 'success'],\n      },\n    },\n  },\n  paths: {\n    '/users': {\n      post: {\n        summary: 'Create a new user',\n        requestBody: {\n          required: true,\n          content: {\n            'application/json': {\n              schema: {\n                $ref: `#/components/schemas/${createUserSchema.name}`,\n              },\n            },\n          },\n        },\n        responses: {\n          '201': {\n            description: 'User created successfully',\n            content: {\n              'application/json': {\n                schema: { $ref: '#/components/schemas/UserResponse' },\n              },\n            },\n          },\n          '400': {\n            description: 'Invalid input data',\n          },\n        },\n      },\n    },\n  },\n}\n\n// POST endpoint implementation\napp.post('/users', (req, res) => {\n  try {\n    const userData = req.body as CreateUserDto\n\n    // User creation simulation (replace with database logic)\n    const newUser: User = {\n      id: Math.floor(Math.random() * 1000) + 1,\n      ...userData,\n    }\n\n    // Response that complies with the defined schema\n    const response = {\n      data: newUser,\n      success: true,\n    }\n\n    res.status(201).json(response)\n  } catch (error) {\n    res.status(400).json({\n      data: null,\n      success: false,\n      error: 'Invalid input data',\n    })\n  }\n})\n\n// Swagger UI configuration\napp.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerSpecification))\n\napp.listen(3000, () => {\n  console.log('API documentation available at http://localhost:3000/api-docs')\n})\n```\n\n## 📖 API Reference\n\n### `transform(class)`\n\nTransforms a class constructor function into an OpenAPI schema object.\n\n**Parameters:**\n\n- `class: Function` - The class constructor function to transform\n\n**Returns:**\n\n```typescript\n{\n  name: string;        // Class name\n  schema: {\n    type: \"object\";\n    properties: Record<string, any>;\n    required: string[];\n  }\n}\n```\n\n**Example:**\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\nimport { User } from './entities/user.js'\n\nconst result = transform(User)\nconsole.log(result.name) // \"User\"\nconsole.log(result.schema) // OpenAPI schema object\n```\n\n## 🔒 Access Modifiers\n\nProperties with `private` or `protected` modifiers are automatically excluded from the generated schema. Only `public` properties (the default in TypeScript) are included:\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\n\nclass User {\n  public name: string // ✅ Included\n  email: string // ✅ Included (public by default)\n  private password: string // ❌ Excluded\n  protected role: string // ❌ Excluded\n}\n\nconst schema = transform(User)\n// schema.properties will only contain \"name\" and \"email\"\n```\n\n## 📋 Supported TypeScript Types\n\nThe following TypeScript types are automatically mapped to OpenAPI schema types:\n\n| TypeScript Type         | OpenAPI Type         | Format      | Description                       |\n| ----------------------- | -------------------- | ----------- | --------------------------------- |\n| `string`                | `string`             | —           | String values                     |\n| `number`                | `number`             | `integer`   | Numeric values                    |\n| `boolean`               | `boolean`            | —           | Boolean values                    |\n| `Date`                  | `string`             | `date-time` | Date/time values                  |\n| `BigInt`                | `integer`            | `int64`     | Large integer values              |\n| `Buffer` / `Uint8Array` | `string`             | `binary`    | Binary data                       |\n| `File`                  | `binary`             | `binary`    | Binary data                       |\n| `Symbol`                | `string`             | —           | Mapped as string                  |\n| `any` / `unknown`       | `object`             | —           | With `additionalProperties: true` |\n| `T[]` / `Array<T>`      | `array`              | —           | Typed arrays                      |\n| `enum`                  | `string` or `number` | —           | With `enum` values                |\n| `string \\| null`        | `string`             | —           | Union types (nullable filtered)   |\n\n> **Union types**: For union types like `string | null` or `Date | undefined`, the library filters out `null` and `undefined` and uses the first meaningful type.\n\n## 🎯 Required Properties Rules\n\n### TypeScript Optional Operator (`?`)\n\nThe presence or absence of the TypeScript optional operator (`?`) determines whether a property is required:\n\n```typescript\nclass User {\n  /**\n   * Name of user\n   * */\n  name: string // ✅ REQUIRED (no ? operator)\n  /*\n   * Email\n   */\n  email: string // ✅ REQUIRED (no ? operator)\n  age?: number // ❌ OPTIONAL (has ? operator)\n  bio?: string // ❌ OPTIONAL (has ? operator)\n}\n\n// Generated schema:\n// \"required\": [\"name\", \"email\"]\n```\n\n### Override via class-validator Decorators\n\nclass-validator decorators can override the default behavior of the TypeScript optional operator:\n\n```typescript\nimport { IsNotEmpty, IsOptional } from 'class-validator'\n\nclass User {\n  /**\n   * Comment property\n   */\n  @IsNotEmpty()\n  requiredField?: string // ✅ REQUIRED (@IsNotEmpty overrides ?)\n\n  @IsOptional()\n  optionalField: string // ❌ OPTIONAL (@IsOptional overrides absence of ?)\n\n  normalField: string // ✅ REQUIRED (no ? operator)\n  normalOptional?: string // ❌ OPTIONAL (has ? operator)\n}\n\n// Generated schema:\n// \"required\": [\"requiredField\", \"normalField\"]\n```\n\n## 🎨 Supported Decorators\n\n### Type Validation Decorators\n\n| Decorator                        | Generated Schema Property                       | Description                       |\n| -------------------------------- | ----------------------------------------------- | --------------------------------- |\n| `@IsString()`                    | `type: \"string\"`                                | String type validation            |\n| `@IsInt()`                       | `type: \"integer\", format: \"int32\"`              | Integer type validation           |\n| `@IsNumber()`                    | `type: \"number\", format: \"double\"`              | Number type validation            |\n| `@IsBoolean()`                   | `type: \"boolean\"`                               | Boolean type validation           |\n| `@IsEmail()`                     | `type: \"string\", format: \"email\"`               | Email format validation           |\n| `@IsDate()`                      | `type: \"string\", format: \"date-time\"`           | Date format validation            |\n| `@IsEnum(enumObject)`            | `type: \"string/number/boolean\", enum: [values]` | Enum constraint validation        |\n| `@IsIn(['value a', 'value b'])`  | `type: \"string/number/boolean\"`                 | List value constraint             |\n| `@IsNotIn(['a', 'value b'])`     | `type: \"string/number/boolean\"`                 | List value constraint not allowed |\n\n### String Validation Decorators\n\n| Decorator           | Generated Schema Property        | Description           |\n| ------------------- | -------------------------------- | --------------------- |\n| `@IsNotEmpty()`     | Added to `required` array        | Field is required     |\n| `@MinLength(n)`     | `minLength: n`                   | Minimum string length |\n| `@MaxLength(n)`     | `maxLength: n`                   | Maximum string length |\n| `@Length(min, max)` | `minLength: min, maxLength: max` | String length range   |\n\n### Number Validation Decorators\n\n| Decorator       | Generated Schema Property | Description           |\n| --------------- | ------------------------- | --------------------- |\n| `@Min(n)`       | `minimum: n`              | Minimum numeric value |\n| `@Max(n)`       | `maximum: n`              | Maximum numeric value |\n| `@IsPositive()` | `minimum: 0`              | Positive number (≥ 0) |\n\n### Array Validation Decorators\n\n| Decorator          | Generated Schema Property | Description                 |\n| ------------------ | ------------------------- | --------------------------- |\n| `@IsArray()`       | `type: \"array\"`           | Array type validation       |\n| `@ArrayNotEmpty()` | `minItems: 1` + required  | Non-empty array requirement |\n| `@ArrayMinSize(n)` | `minItems: n`             | Minimum array size          |\n| `@ArrayMaxSize(n)` | `maxItems: n`             | Maximum array size          |\n\n## 📊 Comparison: Pure TypeScript vs Enhanced Mode\n\n| Feature                 | Pure TypeScript                       | Enhanced (class-validator)           |\n| ----------------------- | ------------------------------------- | ------------------------------------ |\n| **Dependencies**        | Zero                                  | Requires `class-validator`           |\n| **Configuration**       | None                                  | `experimentalDecorators: true`       |\n| **Type Detection**      | Automatic                             | Automatic + Decorators               |\n| **Validation Rules**    | Basic types only                      | Rich validation constraints          |\n| **Required Fields**     | Based on optional operator (`?`)      | Optional operator + decorators       |\n| **String Constraints**  | None                                  | Min/max length, patterns             |\n| **Number Constraints**  | None                                  | Min/max values, positive             |\n| **Array Constraints**   | None                                  | Min/max items, non-empty             |\n| **Inheritance**         | ✅ Supported                          | ✅ Supported                         |\n| **Circular References** | ✅ Auto `$ref` generation             | ✅ Auto `$ref` generation            |\n| **Use Case**            | Existing codebases, rapid prototyping | APIs with validation, robust schemas |\n\n## ⚙️ Configuration\n\n### Requirements\n\n- Node.js >= 14.0.0\n- TypeScript with minimal compiler options in `tsconfig.json`:\n  ```json\n  {\n    \"compilerOptions\": {\n      \"experimentalDecorators\": true\n    }\n  }\n  ```\n\n> **Note**: The `experimentalDecorators` option is only required if you plan to use class-validator decorators. Pure TypeScript classes work without special configuration.\n\n### TypeScript Support\n\nThis library works with:\n\n- ✅ Pure TypeScript classes (no decorators needed)\n- ✅ class-validator decorated classes\n- ✅ Mixed usage (some classes with decorators, some without)\n- ✅ All TypeScript types: primitives, arrays, enums, nested objects\n\n### Module Compatibility\n\nThis library is **fully compatible with CommonJS and ESM**:\n\n```typescript\n// ESM (recommended)\nimport { transform } from 'ts-class-to-openapi'\n\n// CommonJS\nconst { transform } = require('ts-class-to-openapi')\n```\n\n## 🔧 Troubleshooting\n\n### Common Issues\n\n**Error: \"Cannot find module 'ts-class-to-openapi'\"**\n\n```bash\nnpm install ts-class-to-openapi\n```\n\n**Error: \"Cannot find module 'class-validator'\"**\n\nThis dependency is only necessary for using validation decorators:\n\n```bash\nnpm install class-validator\n```\n\n**Error: \"Experimental decorators warning\"**\n\nAdd the following configuration to the `tsconfig.json` file:\n\n```json\n{\n  \"compilerOptions\": {\n    \"experimentalDecorators\": true\n  }\n}\n```\n\n**Empty schema generated**\n\n- For pure TypeScript classes: Verify that the class contains properties with correctly defined types\n- For classes with decorators: Confirm that the class includes class-validator decorators\n- Verify that the class is correctly exported and imported\n- Confirm that TypeScript compilation runs without errors\n\n**Works without decorators but wants validation?**\n\nPure TypeScript classes work immediately, but if you want enhanced validation schemas:\n\n1. Install class-validator: `npm install class-validator`\n2. Add decorators to the corresponding properties\n3. Enable `experimentalDecorators: true` in the tsconfig.json file\n\n## 🌟 Advanced Features\n\n- ✅ **Native pure TypeScript support** - Compatible with any TypeScript class without requiring decorators\n- ✅ **Zero runtime dependencies** - Uses TypeScript Compiler API instead of reflect-metadata\n- ✅ **Optimized performance** - Singleton pattern implementation with caching system for repeated transformations\n- ✅ **Class inheritance** - Automatic resolution of properties from parent classes via `extends`\n- ✅ **Generics resolution** - Resolves generic type parameters from call-site type arguments (e.g., `transform(Paginated<User>)`)\n- ✅ **Circular reference handling** - Automatically generates `$ref` references for self-referencing and mutually recursive classes\n- ✅ **Class name collision detection** - Smart property matching when multiple classes share the same name, with `filePath` disambiguation\n- ✅ **Access modifier filtering** - Excludes `private` and `protected` properties from the schema\n- ✅ **Nested object processing** - Automatic handling of complex relationships between objects\n- ✅ **Full typed array support** - Comprehensive compatibility with arrays (`T[]` and `Array<T>`) and validation constraints\n- ✅ **Union type support** - Handles union types by filtering out `null` and `undefined`\n- ✅ **Integrated caching system** - Avoids reprocessing the same classes with configurable cache size\n- ✅ **Type safety** - Complete TypeScript support with precise type definitions\n- ✅ **Framework agnostic** - Compatible with any TypeScript project configuration\n\n## 🔄 Migration Guide\n\n### Migration from reflect-metadata Based Solutions\n\nFor projects using solutions that require `reflect-metadata`:\n\n**Previous implementation (with reflect-metadata):**\n\n```typescript\nimport 'reflect-metadata'\nimport { getMetadataStorage } from 'class-validator'\n\n// Complex configuration required\nconst schema = transformClassToSchema(User)\n```\n\n**New implementation (with ts-class-to-openapi):**\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\n\n// Simplified API\nconst schema = transform(User)\n```\n\n### New Functionality: Pure TypeScript Support\n\nThe main advantage lies in the ability to transform **any TypeScript class** without requiring decorators:\n\n**Previous limitation (mandatory decorators):**\n\n```typescript\n// This approach would NOT work with traditional solutions\nclass LegacyUser {\n  id: number\n  name: string\n  email: string\n}\n```\n\n**Current implementation (immediate functionality):**\n\n```typescript\nimport { transform } from 'ts-class-to-openapi'\n\n// Ready-to-use functionality\nclass LegacyUser {\n  id: number\n  name: string\n  email: string\n}\n\nconst schema = transform(LegacyUser) // ✅ Successful operation\n```\n\n## 📄 License\n\nMIT\n","readmeFilename":"README.md"}