{"_id":"@assassinonz/exzodus-client","_rev":"12-0bcf68d582eadbe44c378255722cae77","name":"@assassinonz/exzodus-client","dist-tags":{"latest":"0.0.22"},"versions":{"0.0.7":{"name":"@assassinonz/exzodus-client","version":"0.0.7","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.7","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"7eefbfa395e207d4d8d92501822ff029a32d0d81","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.7.tgz","fileCount":10,"integrity":"sha512-azXTOyl3N1ozpFYWgdxVi9/jMNFhVI3cEg0cLaHGkWTiAycDXZ3k4/sDEUpPk2SMkADPVMfIY/zkhhZveWlVLg==","signatures":[{"sig":"MEUCIQDmVPPA9EszMTKBYr214vfXofAvambDukT0V9KwzVD/vAIgeSt/7r6X/yhYGTjCVDdXi5ZNDZ+N6PA8cu71TO9mWts=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13484},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"ce780fe0c471f97389b0b0920f0b96cc14bd3270","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"8.19.2","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"18.12.1","dependencies":{"axios":"^1.7.7"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.7_1725894191462_0.5666713788043662","host":"s3://npm-registry-packages"}},"0.0.8":{"name":"@assassinonz/exzodus-client","version":"0.0.8","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.8","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"b2270b336dd571ca640a3067aed82483218d076c","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.8.tgz","fileCount":2,"integrity":"sha512-VmI8h2RM/op6c7MycLfNAvKx1v/pQ3ZBBaI/jn4ASJPn+wNu1dCO0+geh4m6lPNiyAfHSKyf/kYmJhyX3y2exQ==","signatures":[{"sig":"MEUCIQC7+vj22m9Rw6pyCs06XbujJTZMrCbp/ojqtEYSSLe00AIgQfhs7v27Jfq63n0Aporp1SAnCDPBSFSA7EGa7Rt1Gsg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":5267},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"ce780fe0c471f97389b0b0920f0b96cc14bd3270","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"8.19.2","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"18.12.1","dependencies":{"axios":"^1.7.7"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.8_1725894525048_0.6824609024798334","host":"s3://npm-registry-packages"}},"0.0.9":{"name":"@assassinonz/exzodus-client","version":"0.0.9","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.9","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"480fc0b09dc480988101b86089abfbe53fb602c0","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.9.tgz","fileCount":11,"integrity":"sha512-+Ky9Kr6G+8G6TBTicrNJFUMpQZn8e5vlVevBurbkz4OAxpnP3UgxSgu4+9yYjN0Ktec9yD9ogcfxgzsU1tikDw==","signatures":[{"sig":"MEQCIFrQGw5d5a5szAaFIhfMH6ONNsiz0r4aiJYxCj4HyMR2AiAz2LGupmTj+JzzDB9EhbtEKGe9SVCpuXSwTsskRC5w/Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17884},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"ce780fe0c471f97389b0b0920f0b96cc14bd3270","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"8.19.2","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"18.12.1","dependencies":{"axios":"^1.7.7"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.9_1725894688546_0.5115689871523692","host":"s3://npm-registry-packages"}},"0.0.10":{"name":"@assassinonz/exzodus-client","version":"0.0.10","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.10","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"58d3315dc16c4ce9f9b1ae6546a1ce8897a0b50c","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.10.tgz","fileCount":11,"integrity":"sha512-oYdeO66eHZWyuut2To54SFR5NNsVMK67X2Ev4vG6f8XOMQ5AZWUH5Sauuv+y0MtD1jNGa5aBA0zp89xCrn8mrA==","signatures":[{"sig":"MEUCIQDxVGiG4CX771CfAK7ddP1nvoa5NV8i2VIyKG8vE5vsoAIgP7xMiC6ggrVI8CwVavnxGVb0fzISlRPl2IGT9euoKC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":17907},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"42d9573f9acec1e9fbb21398948dcf4dcd7f02a9","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.8.2","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"22.8.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.10_1725943000942_0.5500452057649925","host":"s3://npm-registry-packages"}},"0.0.11":{"name":"@assassinonz/exzodus-client","version":"0.0.11","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.11","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"f3c3466483729aa5607319e56c4ccf388c156afb","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.11.tgz","fileCount":11,"integrity":"sha512-5HmzSHy4AEmkcY4MwB9abvxITE6Zm3lgpZx+CtK3V/tlZYaVG/JOx+kXKnzge9cGBpSqAkFh8gexuFYEVrkAZA==","signatures":[{"sig":"MEYCIQDAGHQ4tSzH7y3uTSVkALzeQ30QfqQu6AKayc6V1z0KZQIhAM/jtr8R6fbYAkiAwrSiLnWUlAo6ob/CtXLilhp5t1HA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18062},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"42d9573f9acec1e9fbb21398948dcf4dcd7f02a9","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.8.3","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.11_1729238218510_0.7381114664988611","host":"s3://npm-registry-packages"}},"0.0.12":{"name":"@assassinonz/exzodus-client","version":"0.0.12","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.12","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"863baf8b8251e1f3e9ff76020837f58d02e4d4c3","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.12.tgz","fileCount":11,"integrity":"sha512-LPyFXrIv/16VveloyIYWJ6TmWjVNw+RnPtGdeHH6UylTXeNPp8V/jHtedQWvtpUltxm0cj7AQGzAigvI9oyKyA==","signatures":[{"sig":"MEQCIGTeVUWclN4OojB30aVBEIZYZozsgf7wYl9FYBGNd2FCAiAoUNy5l/dbbSVRVDW7EG9Cadx2B4pBpAcDXKt/kEJdkQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18083},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"6ee99ab981ba46d10379d389708606b3ec919427","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.8.3","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.5.4"},"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.12_1729238864646_0.8194891940572586","host":"s3://npm-registry-packages"}},"0.0.14":{"name":"@assassinonz/exzodus-client","version":"0.0.14","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.14","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"be0afaf18d787d5bfbcbe6064a218c03950a33f9","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.14.tgz","fileCount":11,"integrity":"sha512-qPkodg5ufwjFUFbA8krbfBlZUlM9lZ62PurYyV4phy2bTksI3vZEuYuCcaSoOrCVHFZOPqPbGi0pFelsJNNXag==","signatures":[{"sig":"MEUCIH6yIqb4cjzC6UHsZU76J+I1pF+iu6tf4BUW2jFShGQcAiEAs8q9sH4DQlKxWFXTmxhpkVtSpQbmyO0bgdbEENloQkc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18187},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"6ee99ab981ba46d10379d389708606b3ec919427","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.8.3","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.14_1729783446915_0.07727219946699115","host":"s3://npm-registry-packages"}},"0.0.15":{"name":"@assassinonz/exzodus-client","version":"0.0.15","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.15","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"3bb2dac6b9aac950199b87d7091b86b05a754cc6","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.15.tgz","fileCount":11,"integrity":"sha512-bKh0Ac2Dgz3NwwcnPGeHn1/kZZMJ3+Vp9Tu+933jsXvqdpG4dxBMEyhDe8RXyJFXS/QWBUACH9TF/nsB4G5Zzg==","signatures":[{"sig":"MEUCIQDNSG84HIJZ1TC1R/o+5uvrwm3Z/o8bTRey/q8FeMrdnwIgcFpRiICI9l5ijAwwgiGedPjq2Ziss/UtOMffNYrcye8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18187},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"6ee99ab981ba46d10379d389708606b3ec919427","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.8.3","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.15_1729786450646_0.1606304304832089","host":"s3://npm-registry-packages"}},"0.0.16":{"name":"@assassinonz/exzodus-client","version":"0.0.16","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.16","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"976496bce79d183ab6dab64004121b7175eff1af","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.16.tgz","fileCount":11,"integrity":"sha512-ToZcc7Q1W4K4r74VEpfZPB3b+nkcQccOG6tPBrS/h+Wvc58gEgSJNFuXDxJlcOOiTgmq9Y9fbuB82EnsR7xU4g==","signatures":[{"sig":"MEUCIQDQkkOZ3oT5H2q9lC97aUoyBNRneY2CHbKcHlml2tf+xwIgJpzVZPfnZYhzgny6sxoSbhhPf1wY42zwMxWBNQZCyzU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":18341},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"aee62329052dd150f43ce0eb711536987377c988","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.8.3","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"22.9.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.16_1729856225909_0.09931484184477068","host":"s3://npm-registry-packages"}},"0.0.20":{"name":"@assassinonz/exzodus-client","version":"0.0.20","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.20","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"3697c26ebd89af5549e043bb8406e6546f0428db","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.20.tgz","fileCount":11,"integrity":"sha512-F2f2Tk7wHT9trSJ/D7mKj4hoU9UCFL1flOO9gHjJ+4omtp5Xz9pKllGNclZw/K+haJjQAq9RAjx54y59ihphmg==","signatures":[{"sig":"MEYCIQDRoLr4m02W66fWsaxx3Vf7mUCDsUOtv8UKo+SCh3PnowIhAOcixYr+eid+ZSV0XkxJmbFXX8nl5KlKWRZ5KQFSBLE0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18442},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"ad16f5831a7842deca94beff90d950092debfac2","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.9.2","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"23.4.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.20_1741092313112_0.8316815700153233","host":"s3://npm-registry-packages-npm-production"}},"0.0.21":{"name":"@assassinonz/exzodus-client","version":"0.0.21","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","_id":"@assassinonz/exzodus-client@0.0.21","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"homepage":"https://github.com/assassinoNz/ExZodus#readme","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"dist":{"shasum":"805c47b4a5ca2d7ddf0caac6941bead31beac930","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.21.tgz","fileCount":11,"integrity":"sha512-FHhR65YLkQ774K2OdJhr81Ho00VWSBnMV2bu3ffd3C7cWrWctqMU04qeFYINV7R4YBlSSWifP6SyTORpZcTCuQ==","signatures":[{"sig":"MEQCIBeXxLCrzGtb8/aQXb04wtf1qXJl0Cpvdnci3n4xk8SvAiAxNEcFZvdINr98Z/R8559A7XLj4Lhs4jZtbYWzbnpsvA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18495},"main":"./build/client/index.js","type":"module","types":"./build/client/index.d.ts","gitHead":"ba20d43dc9c3bb38b9877c2362e753050cdb9188","scripts":{"build":"rm -r ./build; tsc","prepublish":"npm run build"},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"repository":{"url":"git+https://github.com/assassinoNz/ExZodus-Client.git","type":"git"},"_npmVersion":"10.9.2","description":"Axios wrapper with end to end type safety","directories":{},"_nodeVersion":"23.4.0","dependencies":{"zod":"^3.23.8","axios":"^1.7.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/exzodus-client_0.0.21_1741093214697_0.6764517024873253","host":"s3://npm-registry-packages-npm-production"}},"0.0.22":{"name":"@assassinonz/exzodus-client","version":"0.0.22","description":"Axios wrapper with end to end type safety","main":"./build/client/index.js","types":"./build/client/index.d.ts","scripts":{"prepublish":"npm run build","build":"rm -r ./build; tsc"},"type":"module","repository":{"type":"git","url":"git+https://github.com/assassinoNz/ExZodus-Client.git"},"keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"author":{"name":"assassinoNz"},"license":"ISC","bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"homepage":"https://github.com/assassinoNz/ExZodus#readme","dependencies":{"axios":"^1.7.7","zod":"^3.23.8"},"_id":"@assassinonz/exzodus-client@0.0.22","gitHead":"586b491bd99fc232911fec9d790c361441454bbf","_nodeVersion":"23.3.0","_npmVersion":"11.0.0","dist":{"integrity":"sha512-Ub2KO75rL0tj3NxiJQv3H9VV4gK+tRGIUpjc5B2dz2bGQwT6tNxzsOlZPll3eObxGT0hsWRqLhimwohUyCzCVg==","shasum":"aa92390ea8a93a7f2bb98a98e32865646a2dd428","tarball":"https://registry.npmjs.org/@assassinonz/exzodus-client/-/exzodus-client-0.0.22.tgz","fileCount":11,"unpackedSize":18484,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBdbnSpIpRb7G3VGL3hN4YEnq8pd56bkAIYEfuxSXcZOAiEAux7rnxljmgnfbrgV6AaTMHfUbPlTTPbSxz/r1cTkYds="}]},"_npmUser":{"name":"assassinonz","email":"nirmaldiaz@gmail.com"},"directories":{},"maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/exzodus-client_0.0.22_1760111195489_0.3013773267105371"},"_hasShrinkwrap":false}},"time":{"created":"2024-09-09T15:03:11.367Z","modified":"2025-10-10T15:46:35.841Z","0.0.7":"2024-09-09T15:03:11.704Z","0.0.8":"2024-09-09T15:08:45.178Z","0.0.9":"2024-09-09T15:11:28.745Z","0.0.10":"2024-09-10T04:36:41.109Z","0.0.11":"2024-10-18T07:56:58.663Z","0.0.12":"2024-10-18T08:07:44.882Z","0.0.14":"2024-10-24T15:24:07.091Z","0.0.15":"2024-10-24T16:14:10.817Z","0.0.16":"2024-10-25T11:37:06.104Z","0.0.20":"2025-03-04T12:45:13.340Z","0.0.21":"2025-03-04T13:00:14.894Z","0.0.22":"2025-10-10T15:46:35.671Z"},"bugs":{"url":"https://github.com/assassinoNz/ExZodus/issues"},"author":{"name":"assassinoNz"},"license":"ISC","homepage":"https://github.com/assassinoNz/ExZodus#readme","keywords":["zod","axios","express","zodios","kubb","swagger-zod"],"repository":{"type":"git","url":"git+https://github.com/assassinoNz/ExZodus-Client.git"},"description":"Axios wrapper with end to end type safety","maintainers":[{"name":"assassinonz","email":"nirmaldiaz@gmail.com"}],"readme":"# ExZodus\r\n\r\nExZodus provides a type-safe Axios client wrapper and an Express router with auto-completion features backed by [Zod](https://github.com/colinhacks/zod) schemas. This project is heavily inspired by the [Zodios](https://www.zodios.org) project.\r\n\r\n## Why ExZodus?\r\n\r\nThe existence of this project is due to following factors.\r\n\r\n- The wrappers provided by the Zodios project caused heavy TS-Server performance issues leading to `Type instantiation is excessively deep and possibly infinite.ts(2589)` errors.\r\n- The api definition structure required by Zodios seems limited.\r\n\r\n## Can this replace Zodios?\r\nAbsolutely not.\r\n\r\n- If your workflow didn't encounter above mentioned problems, you should definitely use Zodios. It is well documented and established.\r\n\r\n- Zodios has many more features that won't be included in the scope of this project.\r\n\r\n## How to use?\r\n\r\n### 1. Installation\r\n```bash\r\nnpm i @assassinonz/exzodus\r\n```\r\n\r\n### 2. Schema definition\r\n- Use `@kubb/swagger-zod` to generate the API schema using an `openapi.yaml` file or hand write it.\r\n\r\n- The API schema is typed as follows.\r\n```typescript\r\ntype Path = string;\r\ntype Method = string;\r\ntype Api = Record<Path, Record<Method, {\r\n    request: z.ZodType | undefined;\r\n    parameters: {\r\n        path: z.ZodType | undefined;\r\n        query: z.ZodType | undefined;\r\n        header: z.ZodType | undefined;\r\n    };\r\n    responses: Record<number | \"default\", z.ZodType>;\r\n    errors: Record<number, z.ZodType>;\r\n}>>;\r\n```\r\n\r\n- An example schema looks as follows.\r\n```typescript\r\nexport const paths = {\r\n    \"/users/:id\": {\r\n        get: {\r\n            request: undefined,\r\n            parameters: {\r\n                path: z.object({ \"id\": z.coerce.number.int() }),\r\n                query: undefined,\r\n                header: undefined\r\n            },\r\n            responses: {\r\n                200: z.object({ \"id\": z.number.int(),  \"name\": z.string() }),\r\n                404: z.object({ \"message\": z.string() })\r\n                default: z.object({ \"id\": z.number.int(),  \"name\": z.string() })\r\n            },\r\n            errors: {\r\n                404: z.object({ \"message\": z.coerce.string() })\r\n            }\r\n        },\r\n    }\r\n}\r\n```\r\n\r\n### 3. Using ExZodusRouter\r\n\r\n```typescript\r\nimport { paths } from \"../../kubb/zod/operations.js\";\r\nimport { express, ExZodusRouter } from \"@assassinonz/exzodus-router\";\r\n\r\n//Define extras if modification of request type is needed\r\ntype Extras = {\r\n    ctx?: {\r\n        userId: number;\r\n    }\r\n}\r\n\r\n//                    @kubb/swagger-zod generated API schema\r\n//                                        ▼\r\nconst router = ExZodusRouter.new<typeof paths, Extras>(paths, {\r\n    //Provide error handler for Zod errors\r\n    errorHandler: (err, req, res) => {\r\n        //TODO: Handle errors\r\n    },\r\n\r\n    //Enable response validation to prevent unintentional data leaks\r\n    attachResponseValidator: true\r\n});\r\n\r\n\r\n//  auto-complete path  fully typed and validated input params (body, query, params)\r\n//             ▼           ▼    ▼\r\nrouter.get(\"/users/:id\", (req, res) => {\r\n    if (req.ctx === undefined) {\r\n        //Allows only documented response codes\r\n        //Response is typed from the body of 404 response\r\n        //                 ▼\r\n        return res.status(404).json({\r\n            message: \"Please login first\"\r\n        });\r\n    } else {\r\n        const user = findUserById(req.ctx.userId);\r\n\r\n        //Response is typed from the body of 200 response\r\n        //                 ▼\r\n        return res.status(200).json({\r\n            id: user.id,\r\n            name: user.name,\r\n            password: user.password\r\n        });\r\n    }\r\n\r\n});\r\n\r\n\r\nconst app = express();\r\napp.use(express.json());\r\napp.use(\"/api/v1\", router);\r\n```\r\n### 4. Using ExZodusClient\r\nCalling this API is now easy and has builtin autocomplete features :  \r\n  \r\n```typescript\r\nimport type { paths } from \"../../kubb/zod/operations.js\";\r\nimport { ExZodusClient } from \"@assassinonz/exzodus-client\";\r\n\r\n\r\n//                      @kubb/swagger-zod generated API schema type\r\n//                                        ▼\r\nconst client = new ExZodusClient<typeof paths>(\"http://localhost:8080/api/v1\");\r\n\r\n\r\n//   typed                auto-complete path   auto-complete params\r\n//     ▼                           ▼                   ▼\r\nconst userResponse = await client.get(\"/users/:id\", { path: { id: 7 } });\r\nconsole.log(userResponse.data);\r\n```\r\n\r\n### 5. Output\r\nThis should output the following. Note the missing password field due to the `attachResponseValidator` option.\r\n```typescript\r\n{\r\n    id: 7,\r\n    name: \"John Doe\"\r\n}\r\n```","readmeFilename":"README.md"}