{"_id":"@tsdiapi/jwt-auth","_rev":"60-28ee0bc018d589b3429a256847f473ff","name":"@tsdiapi/jwt-auth","dist-tags":{"latest":"0.4.2"},"versions":{"0.0.1-alpha.1":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.1","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.1","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"a64df466581644fe8b3160218a0dac7edafbf9c1","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.1.tgz","fileCount":10,"integrity":"sha512-wauEeabi1haKxZXJnlsZEwKBxOUdhOhJWHBOTtsSy6Nb7B89k/lSTqXbC54aO8+50+jkttX9knuiNRHL0GYdug==","signatures":[{"sig":"MEYCIQDSfxKogyuFHdg2uR90v7GgvFUv93z7VddfzSuYTLV59QIhAPxqhznJEZRZ57VAm/GC4fhft0hJMbb87xi5QGWvlkL/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23042},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"96779cd00b52715d3245f73083bc2df03a294a47","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.2.4","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.11.1","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.1.13","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.1_1738264834274_0.6988853250886733","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.2":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.2","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.2","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"8d96689c717918138868fb6f5f84211c6dc8c4e5","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.2.tgz","fileCount":10,"integrity":"sha512-d4WBLp3CQh9GzW2zzBwLeVeR1o1ngtURyJFgm9sZWEOOqSjftvbkwrJwMZAEub6DoEc8m12wiluGaofVCtkMgw==","signatures":[{"sig":"MEYCIQDVxvKSjDywIyw8impFgVMpGCApy+hu/Hz3XvEaWiuoEgIhANm7sM9co5mjVQ3JQBx40PIe2zN9uwd1aEd1hkGdUz4z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23041},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"ea98203c7538dd10676380ed20a0fd1a6e0f843c","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.2.4","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.11.1","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.2_1738267502720_0.8577529941677036","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.3":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.3","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.3","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"666c8ca1a1baa69c4604fa754748bec952d08573","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.3.tgz","fileCount":10,"integrity":"sha512-uXiDlXgoSJFCMpeEj7pJxhwVdf6r5okH8Ro89ShZMosnCtffjOdeMK3qmlAhMNBjjN85YauBYyIaYEO/jLdl9g==","signatures":[{"sig":"MEUCIQCr8QJW/z1Pf5UfgHEVf72JKLMB3FzrKlga3afRxFY/AQIgDoRRK3F0yxheOq3auZROWJl35bUa+nwJgU+Bnh3NFwI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23054},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"586d6e9b953a550069c1f829815613a3101af9ee","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.2.4","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.11.1","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.3_1740080411838_0.108919263825622","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.4":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.4","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.4","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"31343fd90dd62460b90b61ded0c159085683876a","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.4.tgz","fileCount":12,"integrity":"sha512-HrdUGpWh58izVgVQo2qQpA3EHAhIbql0vaa9M7hqrc9rL7Fneuj0OYYVlvWMLz3DKg4Q3XS/1lW3MffHhCvrvw==","signatures":[{"sig":"MEYCIQDax6s3m+d31ZWg6qIKW+3GC9DRBvPJYDLgUV98EF8+XAIhAJ9DiA0FG9WBhXU/O404+c5dOrgkjXMjj52y11UZRo05","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25463},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"7fa04037829725403471da4a63f1d9d28ed9310e","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.2.4","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.11.1","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.4_1740081541175_0.5525169376754957","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.5":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.5","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.5","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"0ad8b88c45d29e96ef010ab67ac6d70765ea7f1a","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.5.tgz","fileCount":12,"integrity":"sha512-048YaAvaTnzGKYlQRrru1Kr59P7WJ/daWUKHNKTTmgL+9gSl6tfajdQMVoPx4DHCJd172mNsWEFTaJDatIpojQ==","signatures":[{"sig":"MEYCIQCWZAjoyB17z+0WbcutYHB66hUqHVntr0kfkR9blUiTrwIhAP5FFeviyRJLw5+Y2el+1nihCU9st2jNSSNxCPQc8wQX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25462},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"67f8a131a7c80c08d6577c5800ec960ab9e51a1c","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.2.4","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.11.1","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.5_1740082964264_0.8194874789576985","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.6":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.6","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.6","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"ff0d2753faf70aa7b15e0db58e8d91ddbc6bcb12","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.6.tgz","fileCount":12,"integrity":"sha512-U6T8gOYrjvvHH8hV2DpK+9Nw92YsexPIMv1/BlWOG3JZ5AWtMpn0BL3npueqJhVffc6uYUAMadrky4HZXCKVXw==","signatures":[{"sig":"MEQCIHRXrq9/uAeRo+eh77e2O7Xhe1WtYyRfByTFiRBQ/HfuAiAO/pUBaMGbPuPrNkrjkPhf8U/+XFeNMVeYz5IP5JDAXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25464},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"c297a2a0774effbea18e00f226885955cc05a129","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.2.4","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.11.1","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.6_1740161665008_0.6182496931186112","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.7":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.7","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.7","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"a96a6cbbc55e8e250618a0426f027e22a8d07862","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.7.tgz","fileCount":12,"integrity":"sha512-n7ivIf0y2pt1k5ZUK+7fvICCVLhT81Y/RvYwC4w/4BIeozkPnJBZ9P7LNWJ2NomcFRGniCbLwsvoJAewXJ1U1g==","signatures":[{"sig":"MEUCIGl8Hp0dajlTc4c0eCQmI/W5ZIgeGESYZTD9xFzvD0COAiEAmGhzLHPHgEWmX9ZhjUeGC6CljxjbLqK8rU+PFkYCvOE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":26735},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"54668e16e0530ade7287a1287c5b5e0afcf3176b","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.7_1740651511053_0.6055694555994899","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.8":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.8","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.8","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"525688855cc2be07e1956ab0c676bf9e17cd77b6","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.8.tgz","fileCount":12,"integrity":"sha512-5OPrItXkFqZMjkZaBDin1zESlxIflm+LO/8QrbwjOX96weQPC26RSUnP6JK9P8rm/pI0V8AKrVqorOvvOkLj2A==","signatures":[{"sig":"MEQCIC63kRVn7G2d8VAFW6KjshxFVnrwdJ5FZ/ALgp1lIteUAiB9tmB/Q5JmymaMn9+rVYheGH3YMgt0BfHDLOwiKK7fvA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":27522},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"ea4ec4a2bc72ed66d28c1fc5cf7d16f0e0d4c35c","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.8_1740653599688_0.4349688144813415","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.9":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.9","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.9","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"c73862a95a4b78d7262b6327c0abe4b96e010f11","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.9.tgz","fileCount":12,"integrity":"sha512-M3wQtdtDP7++qYE/Pf4o3U6vBIyAgtSEJ8CFRWGvvEr1XeSOH+llAiSIPKpuT2YYy24cb+AyoBsvQU9D192PFg==","signatures":[{"sig":"MEUCIARAUPmRiuWqTKo1y4fXQKm6zLfwUweiEUcMyhRtzh0IAiEAtMH4gflJkwL+U4+zXL4IafETkrefnRkzO+5T7uemuoY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":29420},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"bafa174b76d015f714aa84952e6a74fe4c12c837","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.9_1740662464679_0.7299080131217439","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.10":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.10","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.10","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"cdb0ce1e83b8f20fc4a7563e57eb7594a1fbeaad","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.10.tgz","fileCount":14,"integrity":"sha512-DSuUJ0sLQREzkWCIm9fAhw7MKs+CzDJAI3YB+fC7VTuwEb7H2FUjV23mgoFFkKIlzl7iyUix3ZvyCCEEFkkItQ==","signatures":[{"sig":"MEQCIFR8Z92Mof7Sh2LwtCXeYnSzNhlw6w14leZnL71Mx3cIAiA0eNBteHoipZFhetZhv3PCfIKCKTFb+3maARZlnmwdSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36728},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"7da4948b64e70fd1f3672685a3f1ae066d55ddea","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.10_1740670786500_0.6640832117024884","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.11":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.11","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.11","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"0d0e0150c7a56bdc1e15c18adbb9f70ee7752f25","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.11.tgz","fileCount":14,"integrity":"sha512-6pTWttlynXh4pis+7NyIbU4UX85YiaNcaUdcFFq8gYaEKWaeaQz3Av0/UobS5XYR/FmghxK2PxORd8/HDq9aSw==","signatures":[{"sig":"MEUCICLWjURao2K6V4YEPl21N3z4GXK316HbMmjZ07Z2Ei2tAiEAkshuz95z8XYeoOjwzCN1KZZ3+FPB052xPgA8osT5Mwo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36783},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"107fa68926cd267db7a606df1abad39da2229e9e","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","prisma-class-dto-generator":"^6.5.1","routing-controllers-openapi":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.11_1740842969614_0.20789304964892108","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.12":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.12","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.12","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"e8bf5bd89a6b47a251b146a8a52b85af6a6e02be","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.12.tgz","fileCount":14,"integrity":"sha512-5PVXMGnqpdu22fp9zug6fwlL/AL9uJ0olO7AX9qI1GPD+pP5C9ykrN2KJYMp3BezC7AbM1p2BzCzTDyUEP2xAQ==","signatures":[{"sig":"MEQCIAn2rAZbVKqEbtFfmfed92118+YLeJ4uUcjWpT622tlXAiB1x4GTJo0f3PUHTxYCPR1fyLnZitRYhq9NZXKrmyr5dg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36692},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"0658a5ea22a7940f8d5026872acbe2569aab52ca","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.12_1740850874412_0.2552774956713373","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.13":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.13","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.13","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"c0a2a174361d42a51d0e10fb6d38c0a7d8b346c9","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.13.tgz","fileCount":14,"integrity":"sha512-d4YS39Ipgl2Z+jDG1uu7szFdcE5CtTTqbJ4UeIPzlrjuQV/yUCfNUCsFSUyqM8C67YICOuENsSXV0fjGLCBY6A==","signatures":[{"sig":"MEUCIH2ZTjEQb+AZfCQjIV05PlgB1/AOWqOGT/Wgw/4nTxsEAiEA2Wm6VfYlRVHx7je4C8+UVwPS9KSM/DKDeBy2qP/icdo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37864},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"c54f9e9966b19c09a2dfa0e122cd1ebe460505ae","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.13_1740901348814_0.4063691223696455","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.14":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.14","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.14","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"175a5351023bcc769e31c80ed7497e8f9b3d791d","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.14.tgz","fileCount":14,"integrity":"sha512-dJhjhHI0h2GilClEK543bPKD2booQbL44uA2KHekDY/XQ5RqQgvQXgcj0fT/mbyYGxl1SEB9jXhFZuroyl7lSg==","signatures":[{"sig":"MEUCIH5pOK04w7Zj4QzVjTpmJrdWsY334l3sGF0EjX16AG4cAiEA32ZQ4You5ilC/bcEAM6/w6nIKEeBgEA5Yyufg36Y7l0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38021},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"af96140fbf268f764144bef736afc5882b054e83","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.14_1740907015240_0.08897283137367928","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.15":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.15","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.15","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"55229643c59e7c5a0e741a886164d674d587af81","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.15.tgz","fileCount":14,"integrity":"sha512-MOe2hzFkpDmqZFbcHRRJU9LrIvCJEcTdjCfUZof82exGJY8xjAuS7AcB2aDMyrmDDbp41PVGW41jXWmdgwocTw==","signatures":[{"sig":"MEQCIButATkhVX8tNFUcwN49/fNw307LbtA03Fxo9BCUiWcqAiAhxdX+NO3XWld4O0egi/Mqsjcl1OPo1YAtYJ3r3rGq7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38931},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"b54064ec7ff46df7bae9ea52f35cfcc38d38820c","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.10.4","routing-controllers-openapi":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.15_1741543084755_0.2371293315027867","host":"s3://npm-registry-packages-npm-production"}},"0.0.1-alpha.16":{"name":"@tsdiapi/jwt-auth","version":"0.0.1-alpha.16","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.1-alpha.16","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"4160d4695b43451c010b5d989a679381dfa63552","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.1-alpha.16.tgz","fileCount":14,"integrity":"sha512-ticanxQ/4aVrItdzVxabKAcChNUHIFwkitwWkifQA9aiZiarRBNTe5NQDlTfmSgyzXvqyYkGmKZOp1TpEbbVqw==","signatures":[{"sig":"MEYCIQDvt0aljREcQyyUIAmSbfbic7iZZ0I4/tBuT0s4uFXOLQIhAPviqFIlL0gX5X07lrp7VisiXuUJhc6w+0SJgl/q9syO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38931},"main":"output/index.js","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"bb504984245f9230bbd1eff1ab1515122ce994d6","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","express":"^4.21.2","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.0","routing-controllers-openapi":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.1-alpha.16_1741543286541_0.05092365955363909","host":"s3://npm-registry-packages-npm-production"}},"0.0.2-alpha.1":{"name":"@tsdiapi/jwt-auth","version":"0.0.2-alpha.1","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.0.2-alpha.1","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"1cb4a05d588769dbf90749eb93feb93feff5b914","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.0.2-alpha.1.tgz","fileCount":14,"integrity":"sha512-ZBD8N7RVtxvDl1k21JoWrfu6ImBdDQ4pZrBWcRw+uGWcPC2dytFPQyRJa4D0WjmSdmIDKZGYm1WwMITacJYMYQ==","signatures":[{"sig":"MEUCIQCyY0IltjLHn/80J/Uvnvx/behE354rbNeeNKAWyTewigIgNYFMkndcu8VPMvla9WoafQWC/8YiP3HZFhwFCAUVubk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37709},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"fee8856ba2faf69e52956ced108118cb9a06024f","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0","@tsdiapi/server":"^0.0.1-alpha"},"peerDependencies":{"typedi":"^0.10.0","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.0","routing-controllers-openapi":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.0.2-alpha.1_1741618061857_0.7273768000734302","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@tsdiapi/jwt-auth","version":"0.1.0","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.1.0","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"b9acefc086e47cd49af9d74671d56d7e3a6f7dc0","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.1.0.tgz","fileCount":14,"integrity":"sha512-w0Q+vhCDK4H4kLPkF31c96Jh+XDc4LLrleyRKQjndhHGbe27wuetXZzbCaU74ZYHJ7ztc6y95uWzpq/js6QO1w==","signatures":[{"sig":"MEUCIQCqlBs3vHj0lF+SuZKcjQisKA3SE7+rSPjb7YplPKRHWAIgU5apEWpXkZ7D8WAeNaOdi99lfLoh+6xVdtxqDMOWLUE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":37695},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"4bffda6c7ed4e31e87408ea5a9348938cf17bb1b","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0"},"peerDependencies":{"typedi":"^0.10.0","@tsdiapi/server":"^0.1.0","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.0","routing-controllers-openapi":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.1.0_1741619159446_0.05582019653419534","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@tsdiapi/jwt-auth","version":"0.1.1","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.1.1","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"043ca2e143d3831c76bb06a270a573bd15efa0ec","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.1.1.tgz","fileCount":16,"integrity":"sha512-W2+tQv7WHpy0taA54csOdtYG0qfWXbGhTjaH7Vtb7rt10a35pVo777+YQ37K+oEldlJ9HS/QyJMFr4RsyvEXMg==","signatures":[{"sig":"MEUCIE93qTk1o5vsajqTL3co8P2LJd+QbbMBqjD3+TCiRYe2AiEAwsSkgq+6wm+0L0yixtta8OTVmK/eDqE7eX2dbA1AcPA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53381},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"ee19453093b8e3fa2a7ebe20bdead2be4851dd04","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0"},"peerDependencies":{"typedi":"^0.10.0","@tsdiapi/server":"^0.1.0","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.0","routing-controllers-openapi":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.1.1_1741707047712_0.08634075385445561","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@tsdiapi/jwt-auth","version":"0.1.2","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.1.2","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"e85dab45a3a367dd1a9f502ce8d3301e6372d6bd","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.1.2.tgz","fileCount":16,"integrity":"sha512-Tw4lQwfMma1pKEiF5xOpkCilcZ+6/WPaT5ya7EfUf8i4IJL+lI+tJCDyKjE8QThPvojv/B38y3GjFisuVd+fgw==","signatures":[{"sig":"MEYCIQC76dhRyUUjEoEIAQ84MnXGRJ+DFyeH23SoEj2DBbEqGQIhAK2tljQxUzR0Jy4+nrEgy9T77awc+SAv8SOPa0HtOwLo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53686},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"9db073dda76997c362e7b41a309cfd9e3ddb348d","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10","@types/express":"^5.0.0"},"peerDependencies":{"typedi":"^0.10.0","@tsdiapi/server":"^0.1.0","reflect-metadata":"^0.2.2","routing-controllers":"^0.11.0","routing-controllers-openapi":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.1.2_1741708663576_0.5405008485500324","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@tsdiapi/jwt-auth","version":"0.2.0","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.0","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"5bb241f59ba493ba0226a9e04b81205b29cb9cc6","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.0.tgz","fileCount":16,"integrity":"sha512-6YEs7Z84532FhDbpJIj+I+DOvKWKCOkU4DwXjMd7QziUuy6Qvyn9pHQODmKMdvj8BFRqylxjeuBM4JpHtD1rXw==","signatures":[{"sig":"MEQCIC1vuYjMpJxPpGPY9EJXPFUcHOIIf1M7ejei9GhfdqbZAiB7B1zMR8LKMaVrmYAWVgmHgUXsrt5szkKt+VxqsbrvPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51376},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"b22d94e045f3bccbd611a7f4c7232614da3f68b0","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.0_1743568519273_0.9585213947928934","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@tsdiapi/jwt-auth","version":"0.2.1","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.1","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"1ec591e129eeebf7dd8aa70664d0e53852e4ad41","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.1.tgz","fileCount":16,"integrity":"sha512-RkUEJvsltrDVmz8ikaJjm+vpYy4rKDCeqT52UHsFW3qKKindfq1vltZ7FzWl9gj2o0vgtzMXK3pcdq7r4r3QAQ==","signatures":[{"sig":"MEYCIQCSHQggr7+WOE1znJWyyNyMxak15LavELT2cdNI9F2mhwIhAOavS8qCdvqsBOPvLtGBoSLbnTg2whVklsTPcG/h0Pg1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53944},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"7efa9289991085e960e16fc40c23be5c00878647","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.1_1743577856930_0.6941076632100869","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@tsdiapi/jwt-auth","version":"0.2.2","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.2","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"34adabca2409ec010556ea9b4daf65a90fc87f8f","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.2.tgz","fileCount":16,"integrity":"sha512-IuA0zZQQNHgvk88AOMOeXFKqTrUhwpTe+QQB2sbMdp0ytbMWIINcUL0tgNSySGT+OEluN7h+hJmqqws6WJcogg==","signatures":[{"sig":"MEUCIQDxeQWQDEs2xYNKcl2NiESfeAx/gCFpItvuP7lktvepDwIgfPs3HPN4soZdg8mzPmJteeA1Je1sEZsnBqOJHKRjv/s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54226},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"ef1d51b248144f3513e8302ada2412bbc1d3e286","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.2_1744869761953_0.25317295083125924","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@tsdiapi/jwt-auth","version":"0.2.3","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.3","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"af7f7b255d53a328d3d15aa26855075ec13b5d83","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.3.tgz","fileCount":16,"integrity":"sha512-gBcC+KVmYdQhNKqYNRj1dH8+wbmP0N004PYrNAt9cRuQbVvuJ2HGGZ+XmPTUM6J7Llzvk7HsGP52yvz0GKCGAw==","signatures":[{"sig":"MEUCIQD4a0DCFqu2dD5FVoWQ+l2EifRyW5lzCfBjCiLRyuiwngIgIh06Dg7uophMX/yfA1BoCy7zG2pNfjfGAhDAsfMTTSQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54277},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"2bed640c8d67778017fd92ed19f7181016f08c67","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.3_1744911980574_0.02048353120396018","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@tsdiapi/jwt-auth","version":"0.2.4","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.4","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"e5dc9c3406d1f9a040217e46930c4fa8e164e1f4","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.4.tgz","fileCount":16,"integrity":"sha512-3MmI6GZ07r0V2mBDy7s6Bk7t6+5BnmyFWydCZmhVHgF7O3kd6KUh6phc2WJ/ObmhC0+MYWOnhyR0/A9C3QpqFA==","signatures":[{"sig":"MEUCIQCRX0LgA9Wm9wfvbML4qeDQ5x55CYmpO6Zw/pjwI4DGNQIgSMRWaB0b2PR7cMsVgyzAC/0ZTrrlfmgrOmH2TAmom9U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57202},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"d5ba11b30562c39dbb3c6c2ba9f6fa83a42a815b","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.4_1744965055459_0.3081635003509411","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@tsdiapi/jwt-auth","version":"0.2.5","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.5","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"482193c7b64c74fd90f623bdfca327649f3aa852","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.5.tgz","fileCount":16,"integrity":"sha512-I164kaFmht7ZBAVLOaSkQ/1mPe/rnoS4TgIzuowTsEHWdmqOEEdY/1qSj1Jwu/WSFHv2FPENG0xmH9wikugrzA==","signatures":[{"sig":"MEQCIB9aMNXQ9QKVIJq2dAiq0sOpqPMqO6x40thoiHw7bgfgAiAldAcvndowVu71LoUE00ysGp6w55b38d8Kkqek6r6zqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57313},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"bb7e5607d26f1aa4490aa37a54f31c42fc15a546","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.5_1745328282136_0.4414776229383559","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@tsdiapi/jwt-auth","version":"0.2.6","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.6","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"b2d4d6fb36ddbca2266c2ba7178469beb7c80aa0","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.6.tgz","fileCount":16,"integrity":"sha512-jGkXbdupWPZGFN1NiXldz5yMwqIh8kR15tqN1jS7Dr96jPpQ0LhyxBdQMBD0Am+qL+g5KPYDrFSHud8slZT0cg==","signatures":[{"sig":"MEYCIQCIqig+qQR0dxMKEJUGlJPbVD6DPJz0aVDrBpKPMVyEJgIhAODIllj+rYVOZJaJboLN76IXWyrydV7SCmgVtvcXb5xL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":58863},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"59967953738436ffe9f871ff23a5eeee3f508afd","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.6_1745340946476_0.7418048706125258","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@tsdiapi/jwt-auth","version":"0.2.7","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.7","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"93f4894606e7d29f007f90c31f32811684b24fb4","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.7.tgz","fileCount":16,"integrity":"sha512-PZsi+6nNkIUtDWs+pHQCKRSsor/xy8gYT4kGDgvQ+LZp4VWU7oLaqySeYbY6YRjEYd1b8uJm4tALwM+nXvRYmg==","signatures":[{"sig":"MEUCIQCl7CL1nUp36G+1wafpNiE9EQa+xX7Nk+o4i92LKUSFyAIgKHnJfU/QcHUE3libPwSX87JcWBdt2UoUIyWDajA00sA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59831},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"27b9fa1b8cfedb4349dcb8d6c21df892990dacba","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.7_1745342096418_0.4694783091979078","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@tsdiapi/jwt-auth","version":"0.2.8","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.8","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"ab8b0d84af0dc64cb521e2d8601ae9701292706c","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.8.tgz","fileCount":16,"integrity":"sha512-3cJTcgAQ3Q28j5bOYuCCqDLtjTIoE9jo1kUPmQlJddn1wvRccaxvzOtyhyIZV4fwZEFOS2BA8YvasI4Uz0ZN5A==","signatures":[{"sig":"MEUCIQDFHLdIS1NY1VW45JNiP7VKRjpj1qs/k9JnGrcG1YZ6ogIgMxmW3ub+ILGM4SM2TcGfE4QkNddfzz/06htMBWukEvk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60293},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"c706d02c87f045ee798adb38791bfa45440abaec","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.8_1745342401774_0.19205316043990917","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"@tsdiapi/jwt-auth","version":"0.2.9","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.9","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"a3981c976f6d650c8ed52d9e9f632ddd13971b4a","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.9.tgz","fileCount":16,"integrity":"sha512-JFSfroGJ17lCXgqvfOj1jQrsIfuccZADjt191L1cj6wldeHjgoCuU08T0y1agi2/+0RVSh4uKjc3zZTOSPYYkw==","signatures":[{"sig":"MEYCIQCzWup6q4brkTxFpnLhEW2oRkbEdpmNmcOHfNWW25uNwwIhAKrQ0nY3V3V7qbDzstPRCEoMt3IgoegPPRf54AAiQnMh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60263},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"46e7b9b7e429f543480f480e0e107be4b9670a1a","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.9_1745346154904_0.5433989486020283","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"@tsdiapi/jwt-auth","version":"0.2.10","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.10","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"4e777c025758b8dba142d32fae6430f806c68d6f","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.10.tgz","fileCount":16,"integrity":"sha512-oBrJMnjw+CR7HxEsH1FFKANRPUcN6CQfEBE4740Y4X+yWRFo+4atwCQVYpd1kGhcStqtGBEeWaU+Z67T/E+oNQ==","signatures":[{"sig":"MEYCIQDjIC9SOlxGw1S9aGkMyTXhLKk6BlxfId7DFldxzQcvJAIhAIwwdEnEB62vTN5Arercu88OOF3qOey734qFJippfwJr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61435},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"f1137a5b5e6460cf40e691449d8672fcd2be960d","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.10_1745585697019_0.5373787190218491","host":"s3://npm-registry-packages-npm-production"}},"0.2.11":{"name":"@tsdiapi/jwt-auth","version":"0.2.11","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.11","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"faeaaed5dcb37368cfd0e6196f305eaf44984644","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.11.tgz","fileCount":16,"integrity":"sha512-dTPxAUAU9D7xFYYiHLB/oKlPp50IjmfzK+75dgkDarBTHIEzOUarKpaz3eOoCRIMGJPKrAwjCu1r4Kjp5iAe+g==","signatures":[{"sig":"MEQCIHuAg2NTqBGzQUOhraS1YDm8CdEjpsuOQt6cqTp6VCwoAiBV99WsX8Cy/gFfu7ABawwOQLFS0LJMRbrQj2gxdv6Ghw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60922},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"0184ebaae38b9f7c5f323a76f673334e39e779af","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.11_1745586049287_0.5170746424707007","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"@tsdiapi/jwt-auth","version":"0.2.12","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.12","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"da7363c242d2d0561e6167665a226e9764a0f0a0","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.12.tgz","fileCount":14,"integrity":"sha512-lONg+q/8BkeW5YdkO5COkD9VUKeuYSAVJN569zVW90QVJ3tqxfGjfxNWJpGynwcwK3G6LiOLutUDim4F6ncbGA==","signatures":[{"sig":"MEYCIQD4YDLCH+AQnx5foD94bRl6x3omUxjgF/ez2pcw7qnpXAIhAJwCfK19uJEkW64Gz6Pq1X+viuBQxXMt2TSMZlWwDyvy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51894},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"63d38e01f5d9bf0a6edae63a4441639948957494","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.12_1745754820957_0.3151738499913208","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"@tsdiapi/jwt-auth","version":"0.2.13","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.13","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"69ceeb28314e1549d919c9f4bfbe6d604e835fe8","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.13.tgz","fileCount":14,"integrity":"sha512-PMygcHaBn0zMnshsBIOMz0xOPlzYOO/6kShGMpurbs6mp0sbNKwiuEtb9IHdagwiJ1xexXvMUviUGDUHoY8fAg==","signatures":[{"sig":"MEUCIDoxSIAE6616gCvtaKL5LB3H+dT6Y9NXPFCV2I1GN8HHAiEAhIprpwD3c7wKooRz82tA+H+6dCsID5SE9pwT0e10RQU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51888},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"a21a49065b6b4144ebad8af9ffb57085a6053dad","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.13_1745757891909_0.0654253012131858","host":"s3://npm-registry-packages-npm-production"}},"0.2.14":{"name":"@tsdiapi/jwt-auth","version":"0.2.14","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.14","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"b6519f3f28f4780e1b0eff1710a5a4fbf465f3b8","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.14.tgz","fileCount":14,"integrity":"sha512-g47M9uHMbi+I8+GbN2yg4xwsPfYNsFMIW0vQqYCNXAySjmf31VN6zSNxn/JCTsxij+YTH7F2Wi+hn+6uEBDzaA==","signatures":[{"sig":"MEYCIQD2scOSe/WadDokbT2wvokF02l+nVoC4s3743U2bVZDYwIhANh6ECQibIDx0VALYx9IKmQzgdhat0rahRt21cOm0cMr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51624},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"748ca1394d388777faa9ff77aa85b4e43516c275","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.14_1746434950938_0.9968109341988385","host":"s3://npm-registry-packages-npm-production"}},"0.2.15":{"name":"@tsdiapi/jwt-auth","version":"0.2.15","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.15","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"d7c820864a68550d0ebc6fbf2cdf9147275722c8","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.15.tgz","fileCount":14,"integrity":"sha512-/mG0FiqIBhyT++pHWyDx1y01H3BofaBTshCNGN1Mw/YTZdT23JgPiGgLm67t0hZ6mSp6YSo8aR7zD54N0BnO4Q==","signatures":[{"sig":"MEUCIGdnLZJQ9ixjs/gTzyJyYHuLSTDjGP4yUMD319Am8LM+AiEAmM0YAyBNFyhgQkUCE0FcTN8NDK2R+zapXUK0hbpQ4H4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51912},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"882eaa3355abc1841790e8a5d317be76a7e8f4b4","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.15_1746438646619_0.04890470163342919","host":"s3://npm-registry-packages-npm-production"}},"0.2.16":{"name":"@tsdiapi/jwt-auth","version":"0.2.16","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.16","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"113f5a496d951adec52b5a6fd867b63cb530c664","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.16.tgz","fileCount":14,"integrity":"sha512-FMf/Id2oBq6fyoY4HhYS/37n5sviogA2+R3hD91PW3E+irVATYBZ181m/f2ITCUBpIbUnvXzp82RPQnBSptTSQ==","signatures":[{"sig":"MEQCICAL8YYJNIy7knLzBRm7yHSvl+KiBhsZs36BKclizcJNAiAHaWTCCBXcQIHt6F3SKek0KtGECpS4ZjrU11BCliEFIg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52041},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"1e4fb5e3eee7f215d9680fd08e838b67a0d00b58","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.16_1746439069448_0.17008252311407013","host":"s3://npm-registry-packages-npm-production"}},"0.2.18":{"name":"@tsdiapi/jwt-auth","version":"0.2.18","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.18","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"249815a62ae5978bf170d9f8d49fc9522e445db9","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.18.tgz","fileCount":15,"integrity":"sha512-6w4X5htgX9O+EOOoBBa57qDAYZf2BgYDSVxG2eKGvho/2cPbmzazKGvS/K531Ysuzne3Ql0jjCRi95GJbmzoUA==","signatures":[{"sig":"MEUCIQCA9DxU1rmxZQAlPWrm41ieSxN+1InWu6oXZ17wvzTV1gIgbawOqdqpEcAQAEBp7r5rgiL0hwwWZYjZ5z+lSYBvmrs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52884},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"574b23d20d4339cdded2651ad8a38031feb5ff2e","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.18_1747755908954_0.06283847654685393","host":"s3://npm-registry-packages-npm-production"}},"0.2.19":{"name":"@tsdiapi/jwt-auth","version":"0.2.19","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.19","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"11c1bfc466ee04036e3fb21c72233eae15c2ccdc","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.19.tgz","fileCount":15,"integrity":"sha512-Px7X7JEh86Ij6cHnWj9mgMYuQOTu2Qq9S+reo9OCKhNMIpOTsV2HPfW6xKvBpIrsvN+kb0OrBphofoB8Naq1ew==","signatures":[{"sig":"MEUCIQDlUQkmShtleXSeYt9Vb9qHVab5+Wqdy+HqDx2I5Xs2wQIgJ8S7uXmJp9Uv6+gi9Jj4YPHsyk7HV9u+POOEkPaEaX8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52885},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"3409226855c5c6aad9bdc1ebed33b9db9203d134","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"11.2.0","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.17.0","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.19_1749216388115_0.8318535981694806","host":"s3://npm-registry-packages-npm-production"}},"0.2.20":{"name":"@tsdiapi/jwt-auth","version":"0.2.20","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.20","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"ae688874d5feb80c41d4671dae85d003c9ff6e1e","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.20.tgz","fileCount":15,"integrity":"sha512-Y1AVgppNLjzujP2lRxYP6CFJAuhF85pGfZvaBa0v2KzhXy9Vj1+s+EUBW3YI6B3aHAiSwIWAOx3/GjQbP3XN0g==","signatures":[{"sig":"MEUCIEn41i6+5UlTe43PZIaWLHggKlRnwO7o5Siz+emKJubNAiEAjV6CLMSxpdsE1+qtPnpWT9g2Bx7Vwyg/Yg3NhED9Hyo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59086},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"aab6d27ef2692e7a889cabcf68b533ba11799aa5","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","actor":{"name":"unbywyd","type":"user","email":"unbywyd@gmail.com"},"email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.20_1751656448966_0.8751655318611193","host":"s3://npm-registry-packages-npm-production"}},"0.2.21":{"name":"@tsdiapi/jwt-auth","version":"0.2.21","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.21","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"fc846e37e08235b3dc0f1e8c2413a2254536fad1","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.21.tgz","fileCount":15,"integrity":"sha512-fTAcciDyLRjbzQiHAF3tfuJRW+fHQwS5iJKdPTIbSLADn++5TdNhHungFzCGPXHK1zFyD9tNbZ4baEzTASx20Q==","signatures":[{"sig":"MEUCIQDZu/mv3Imdv7aWSthVl0V7O3EBeR4Q3lCFvPo18WuTIwIgQlhXAvzulfSA93hXdxUWT/xMwutGHggbetqKCKC2w4Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76866},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"d7d70f178138258618d1228be220916be362054e","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","actor":{"name":"unbywyd","type":"user","email":"unbywyd@gmail.com"},"email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.21_1751698926739_0.8201139236835249","host":"s3://npm-registry-packages-npm-production"}},"0.2.22":{"name":"@tsdiapi/jwt-auth","version":"0.2.22","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.22","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"2495a8fa793fc9ddc197659f74e249ab4021b647","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.22.tgz","fileCount":15,"integrity":"sha512-PdXIU/7BBRqyQaqNlEbRhGQ56mDUhnzuQNOFt2gOBSuvhEnISAx7ytiIk9+3w1DkyNSJA+G1Zaag3viNVNTEYw==","signatures":[{"sig":"MEUCIEegGWi4/w0NrBg7Wa7AloN40694S5b5QdhjR2JFmefQAiEA9ylK7DEO31zCWqczNqM8cXLuIYQ/FSkJghwXzKcn+MY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83371},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"0b881261c46203a81fa1a2570b2d9bcd6ad81fdf","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","actor":{"name":"unbywyd","type":"user","email":"unbywyd@gmail.com"},"email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.22_1751699813307_0.23994622327451687","host":"s3://npm-registry-packages-npm-production"}},"0.2.23":{"name":"@tsdiapi/jwt-auth","version":"0.2.23","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.23","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"3142177efeabbbf4fdd1a36cf2e45d2c1983c0a1","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.23.tgz","fileCount":15,"integrity":"sha512-8Pie3vac/q5iXDVi2TYWGsYyhHLf8qDd5YM6tIwtegfuiIQwQQ/r+POB8fLROEWdy8b/3/FjfoNWicuB1XGeBw==","signatures":[{"sig":"MEYCIQDb/IkvQngOH0lmaQ6Nf6s5e+pu3gnl6+ivswxLhhstrAIhAKoBQDAP467yy61rCJfhip0rpyAfpQ8+/Vd5ncUR2gEy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83914},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"395d9a9478d6e68d12cb6f20aa628d8ee1b06e33","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","actor":{"name":"unbywyd","type":"user","email":"unbywyd@gmail.com"},"email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.23_1751702092462_0.9391014002322862","host":"s3://npm-registry-packages-npm-production"}},"0.2.24":{"name":"@tsdiapi/jwt-auth","version":"0.2.24","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.24","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"27c106d4b9595c159edfd0162a7b795b2ea78ac6","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.24.tgz","fileCount":15,"integrity":"sha512-N0pVKUrHLHxsLFy6+wCUX3OcP+pvVXZ+1qGFJ2gFC+da50HUa946DHVdzr2dyHZ2v22d6EkKYsTHQlcMPTQygw==","signatures":[{"sig":"MEUCIHDYv16fMzSwrg83UjTfmkDMKxWGWfWHz44w3DwblI+mAiEAxdamws/MU/JX9d9wLzgY3eBEMHi+v1nfPWX/fL2UjmI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83914},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"f2fe6a750be226ee21c3f4b3809d3ebab24ec7d6","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","actor":{"name":"unbywyd","type":"user","email":"unbywyd@gmail.com"},"email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.24_1751702232475_0.36404207005664535","host":"s3://npm-registry-packages-npm-production"}},"0.2.25":{"name":"@tsdiapi/jwt-auth","version":"0.2.25","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.25","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"110eaed1687c38afe4b61c9bb7ebe6b93a663abf","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.25.tgz","fileCount":15,"integrity":"sha512-Mp4LP06F0vusHFTe2PK6c/C49p6MHBtrdWgU0f1gJNHwK+jYPlvqn0yiyHh00YtUgcoFu4bh78qQfucmGhAycA==","signatures":[{"sig":"MEUCIQDWmlG5sUL8t7EHXJXXye3U35K5tt/sKmOJJz4VUZAFfQIga77YCNmsnC483LNVM7pQkvsT0TWPDs4LhSr6IDZ6lak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84350},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"612874f46327ee8240fea7a5bb7ade3d18a66442","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.25_1752315179212_0.6623007477196594","host":"s3://npm-registry-packages-npm-production"}},"0.2.26":{"name":"@tsdiapi/jwt-auth","version":"0.2.26","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.2.26","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"14ee64257c843bb96a79b59a860f90c1b63a25fd","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.2.26.tgz","fileCount":15,"integrity":"sha512-hsawjHRMq6j7MMfthoUduzp5JQlk3TH8k8/XvTeqiZ88aIfX6LoBTBgDxRv57l6TxoqXy7fzbTf0OpXsIKoFng==","signatures":[{"sig":"MEYCIQD7sivaYKNF0KARe7lk3Dfc8F21IXxKmT48RiiVrRj5XwIhAO9ngRF7mBBmriWshn6jlWEKDHil/1LsJKgikdu95pY1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85364},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"573bf97f4f30dfb79ccc8d45707cbca35c7e8349","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@tsdiapi/server":"^0.2.7","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.2.26_1752657474206_0.15197400166712938","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@tsdiapi/jwt-auth","version":"0.3.0","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.0","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"59f5d4c5a20ab9be4cf5df740b92438c84df9faf","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.0.tgz","fileCount":15,"integrity":"sha512-a8Yy2GJX5CJAe9O81VEV6zn6raWUndXZGfIbJ612ZsV2oJoFq0/kS4FiY52i7JWUxB0pisIpZaonY5s58AZ2Sw==","signatures":[{"sig":"MEYCIQCvGlakaAqdhXrSJSacHw33MpWPqyd2pUolZmy3RmET1QIhAOTDkjXpiZnmbEnrM5hFFq906T+k6nMmuw2NMYt2aWKi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121581},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"9bba5d95a566b4c3b0d4931f6a92423a9ca069f6","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^9.4.0","@tsdiapi/server":"^0.2.7","@fastify/session":"^10.0.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.0_1758824001119_0.9914837352966543","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@tsdiapi/jwt-auth","version":"0.3.1","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.1","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"18c8ddfc041f6dc117c95d47d61f9a6a1cee53da","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.1.tgz","fileCount":15,"integrity":"sha512-iKbRfd4f7KYSpj6GZBm4hDOJMGWsP+HPtFNXPKWEF9xA7Rz8u4lIVxTeYUHpCkaf4cZBK/nAKeyo9ts8WHxrwA==","signatures":[{"sig":"MEUCIEqDOHs+qIP6Y2FCiGkbls0d8ddFtlbkNrySIrXgFiZ3AiEA83Epv4tdGtguqsRxF4y6am1rSpfR/Mi5sF3A8yw9Wl4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121582},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"9d32eef762a02f872ed1dd7cef7e76837a7e793c","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.2.7","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.1_1758825005516_0.31739834258558175","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@tsdiapi/jwt-auth","version":"0.3.2","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.2","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"4588b8894a33bdec6651525f69e632e6d27d1b32","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.2.tgz","fileCount":15,"integrity":"sha512-qy1v8pyXIOF/UH14xQQHUIMgjawqG/2+rpjxSXxAtG1i65THQy70iPHD8AmYCXdCoWEqXSEfmwcciKBuUifdxA==","signatures":[{"sig":"MEUCIGuyCAFR110/vd3x1KQgxEETrIOxwzLe4aVU6gL4K/PHAiEA2zNzxakEe9MIz//THYtcnTaPyfeMlc+K/EZcnyYAcUA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122507},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"222e5792a4fa02091e1ab2b2f4af322f5850a6aa","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.2.7","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.2_1758825726201_0.4616486545188534","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@tsdiapi/jwt-auth","version":"0.3.3","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.3","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"1f7b8870fd48aac7febb55fe77897c5bb51704c6","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.3.tgz","fileCount":15,"integrity":"sha512-bSDI18Y7RYchRfJHySNMPjtOvDEo/j37cAYY14efNKNF2Cq7D8ERKoa4Dk5WpuAr5lEWLTNK106rSZ7lQo5jYg==","signatures":[{"sig":"MEMCIDFUM9I2xFTqxAEMmcHiKmdLADuEda2pdvQ6MIZPw/AcAh9oFZk+uZ2jqVQZJk+zMy7XaDaB+w/4qOmXtfsVrKVQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122503},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"b6e26aeb76c39705081490e114379eee1738cec5","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.2.7","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.3_1758826212340_0.024676800943966404","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@tsdiapi/jwt-auth","version":"0.3.4","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.4","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"f4def1a34682639c1a7856b7a31445504df6fa29","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.4.tgz","fileCount":15,"integrity":"sha512-ChKZ0LexP8A/ns6Ti9WnX5IPCgWCpgk1+JsAyMD7wUN4MIVLl5Efpc9uUjsC6gDet3GLdF0SfgSso0wtC91+aQ==","signatures":[{"sig":"MEUCIGbfNeUGZbNSDWM1WZ4hILPWSSmnV2pQ8P2KKGVJQyQwAiEA2PjnX8//YuEgZM4rJGIUvQgBW9gbh81+u1ezYxgEQYs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122460},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"40d68be4bc26e415c35410bf7407d604e38bfde5","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.2.7","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.4_1758827155442_0.36988057508061","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@tsdiapi/jwt-auth","version":"0.3.5","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.5","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"1794e03712ce49f645f123609f2c3d78ea6b8ba4","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.5.tgz","fileCount":15,"integrity":"sha512-uAop1hF1KuGpdzek7ponJD+AnKwlPUrvZKh2ukqyoKEQWmpoJ7Xl7cdwFAh/BsfwpLOS/Tt8GDdeJ8xOTKsdEg==","signatures":[{"sig":"MEYCIQCSCPnaAN3hABnuN8OrROe6vBPSj4v2GcXGxjIw/iB1lQIhAKaFTp1+dcLDyF7fOfmnT6s/UJnGMutDDE1uEjcGx44q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122460},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"479ae8d91626f42fbfa00f39adb9f0a7de52a543","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.3.0","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.5_1758828586850_0.2905960865851758","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@tsdiapi/jwt-auth","version":"0.3.6","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.6","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"113877adbe838b2da42d6b4ad84be9f7bdaa3e4a","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.6.tgz","fileCount":15,"integrity":"sha512-bH6nu/kS9eSOBI686ETArIyig0jweTR111WyAe5/AVoq4fyVfnpfAUTnWqvbtjXLVd+4m3HRGTbZp8pWgwIF6g==","signatures":[{"sig":"MEUCIDonsWDFeieiy4wY+xcA/YK6O9ooEM8SpTpHVjc0rACtAiEAl+Eprocajz7u+GiROaqMWQy2JyUtxkpuydoM08cze/4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122698},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"fb1b3bbbdeea6e655c66820d89cb25da5078045b","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.3.0","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.6_1758831948938_0.21940938908811902","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@tsdiapi/jwt-auth","version":"0.3.7","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.7","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"b8bd5e52b49468be05b885b209aa97b6407f0537","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.7.tgz","fileCount":15,"integrity":"sha512-K3MwcQR3BCdbbr1AQjcJ3fF8uJrS1lFQCh2iY8g8yvxoIxBh/JuKX7m/lVfw0yq/TJKDjnMLXId+1cJEUMsRmg==","signatures":[{"sig":"MEQCIBAq7g+vn299GnLRrdVpBsTRZ3N9VLB8xp/ee2FbVqqbAiBK0lCVQM+KmWDDXQQ/1uFvxdBN/uWHBSUM2YsaHYtz1w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122698},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"7d9fd8417645cc50beaa5b7221dd4a9c39063311","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.3.0","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.7_1758831989929_0.07048549068494081","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"@tsdiapi/jwt-auth","version":"0.3.8","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.8","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"5a1a9878564fe7b05661fdad593628aaf89186ca","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.8.tgz","fileCount":15,"integrity":"sha512-o3215qJhbl2IA6WUEc7jKPEbrnM1nyTzdB4rmlpz3It9sQkOejtWmU4t3RqGwJAYJKzcr/83gaVA/wFrEUS/pQ==","signatures":[{"sig":"MEQCIDWIiSPcpgK4NOPzteGuAW3bn4jgpl8L8dPgfZaakV4wAiBWck1sML7BVCsViavfQE+pPAKnmuPcgSm4x/sISQpSGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":122341},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"8e8cf68a0a00b03bcaab1eb88f9f908fa2344830","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.3.0","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.8_1758832128781_0.8235749614625891","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"@tsdiapi/jwt-auth","version":"0.3.9","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.9","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"c9489feb7a2ed63ef30a2518497bedb64140890a","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.9.tgz","fileCount":15,"integrity":"sha512-NI5FMkfLN+HT9v7zPSv5znaq4rtx5xvAjl/weiTq+oOxA2PXUs7TzP2GDupy6Q3syLpkp2WE6I9GYPtv0BlsZg==","signatures":[{"sig":"MEUCIQCl0hDdZ4WOeBZ/yikmKWxffMyN/OQau4N49dzVG7fjYQIgTgJvkp5RxNk06gs60eMy+z6VZwRk+ozwgrQ8779bMtg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123323},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"aa84ea98e21af5437dab9721adeeefd227ea9213","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.3.0","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.9_1758867562050_0.5839781232157937","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"@tsdiapi/jwt-auth","version":"0.3.10","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.3.10","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"771a3c27b6b344475d24c29da5ff4bec523ea80e","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.3.10.tgz","fileCount":15,"integrity":"sha512-JbiUmoVzVL46pLH+4eiTzXhZW0ZSwM/T93i8Mfh5JNX28p0AofFs6gYw8XmY0NE+Xqc4iomNzI8x8QXUizsSng==","signatures":[{"sig":"MEUCIQC35+f4C6763Tnvkd68LRfLxSZdVWaq4/oyPRfqaDWOqQIgTYa1IooMrpi7DqpKTnO1z7Hbx761fo7MhQ5w+EScBdQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123423},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"1148e3fbfbc5f0cda4b71f41417bd6f9842cc125","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.2.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.3.0","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.31"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.3.10_1759677885007_0.560321767244524","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@tsdiapi/jwt-auth","version":"0.4.0","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.4.0","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"e43b8670445c0b8d49968f1cce79a56c619208cc","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.4.0.tgz","fileCount":15,"integrity":"sha512-K2iBYXKNTd6Wv+DFduei7bexwp5/fGs3sWMtDibS3NKdgxs10kA5vIdZBHGRjiRyjFnieMUp98tKraz0fCzALQ==","signatures":[{"sig":"MEUCIB1xZwZ+Id9gvPWLgN6AIoQ/mHlw7HlooVLito8ywl7+AiEA4mOLIkpjY7mELsCgPbLfS3MFwkJKxJvSsPvzRJqqKk4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":123422},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"380f4ebe7d1bc312935c599f5e1e1c26e37d1387","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.6.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.4.0","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.41"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.4.0_1763659148403_0.749541458382383","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@tsdiapi/jwt-auth","version":"0.4.1","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"author":{"url":"https://github.com/unbywyd","name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com"},"license":"MIT","_id":"@tsdiapi/jwt-auth@0.4.1","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"dist":{"shasum":"ba30f562da472e70915d2d44efd373bb58cb50b1","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.4.1.tgz","fileCount":15,"integrity":"sha512-kOodcG+qzw2om/mwCiLPWKMCJFkAN42A43iJU1/OQzJgxLB4F3ta7wTD0GqHomooEXj2ZBcE3TrLmx3i/Bj17w==","signatures":[{"sig":"MEUCIQD98ZWBX2suO3t/26DRa2TtVVwhWf7nGQtyrRwv9RZW6QIgD4pMewCiMVNsSL0DYsl1npnXxiQvF4NDvfLxYRX31CI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124063},"main":"output/index.js","type":"module","types":"output/index.d.ts","engines":{"node":">=18.19.0"},"gitHead":"31e3579daa2512004182cd803495e76209da97de","private":false,"scripts":{"build":"tsc"},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"repository":{"url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git","type":"git"},"_npmVersion":"10.8.2","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","directories":{},"_nodeVersion":"20.19.2","dependencies":{"jose":"^5.9.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.2","@types/node":"^22.10.10"},"peerDependencies":{"typedi":"^0.10.0","fastify":"^5.6.2","@fastify/cookie":"^11.0.2","@tsdiapi/server":"^0.4.1","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.41"},"_npmOperationalInternal":{"tmp":"tmp/jwt-auth_0.4.1_1763845917530_0.36193851931298915","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@tsdiapi/jwt-auth","description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","version":"0.4.2","type":"module","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"main":"output/index.js","types":"output/index.d.ts","private":false,"publishConfig":{"access":"public"},"scripts":{"build":"tsc"},"author":{"name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com","url":"https://github.com/unbywyd"},"engines":{"node":">=18.19.0"},"license":"MIT","dependencies":{"jose":"^5.9.6"},"devDependencies":{"@types/node":"^22.10.10","typescript":"^5.7.2"},"peerDependencies":{"@fastify/cookie":"^11.0.2","@fastify/session":"^11.1.0","@sinclair/typebox":"^0.34.41","@tsdiapi/server":"^0.4.1","fastify":"^5.6.2","typedi":"^0.10.0"},"repository":{"type":"git","url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git"},"bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","_id":"@tsdiapi/jwt-auth@0.4.2","gitHead":"e8dfdde98845cd6df599f52dc0f74d8ebd926a48","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-BC666/vqZoqNdcL/fglaO5K9c1X5GM//aQ7XIIb7LMv7A/Gd2gmLpZKd4u7VE1U6fDvbvlzA1jutz9Pi2wmxgQ==","shasum":"7ead8e78e85760fa269a28343a73906e29e5e7bd","tarball":"https://registry.npmjs.org/@tsdiapi/jwt-auth/-/jwt-auth-0.4.2.tgz","fileCount":15,"unpackedSize":133623,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDnDxYk+dMmvHWEcjmd9j6v+1B4sDJLapAGt3o38yjtPQIgXQD94pxvlYQ87IPShwKPcHJlXoKsVwRR283JeFMqsYk="}]},"_npmUser":{"name":"unbywyd","email":"unbywyd@gmail.com"},"directories":{},"maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/jwt-auth_0.4.2_1765828239025_0.3987652836849058"},"_hasShrinkwrap":false}},"time":{"created":"2025-01-30T19:20:34.139Z","modified":"2025-12-15T19:50:39.692Z","0.0.1-alpha.1":"2025-01-30T19:20:34.528Z","0.0.1-alpha.2":"2025-01-30T20:05:02.960Z","0.0.1-alpha.3":"2025-02-20T19:40:12.031Z","0.0.1-alpha.4":"2025-02-20T19:59:01.365Z","0.0.1-alpha.5":"2025-02-20T20:22:44.472Z","0.0.1-alpha.6":"2025-02-21T18:14:25.224Z","0.0.1-alpha.7":"2025-02-27T10:18:31.246Z","0.0.1-alpha.8":"2025-02-27T10:53:19.882Z","0.0.1-alpha.9":"2025-02-27T13:21:04.915Z","0.0.1-alpha.10":"2025-02-27T15:39:46.676Z","0.0.1-alpha.11":"2025-03-01T15:29:29.813Z","0.0.1-alpha.12":"2025-03-01T17:41:14.601Z","0.0.1-alpha.13":"2025-03-02T07:42:29.043Z","0.0.1-alpha.14":"2025-03-02T09:16:55.433Z","0.0.1-alpha.15":"2025-03-09T17:58:04.944Z","0.0.1-alpha.16":"2025-03-09T18:01:26.705Z","0.0.2-alpha.1":"2025-03-10T14:47:42.038Z","0.1.0":"2025-03-10T15:05:59.703Z","0.1.1":"2025-03-11T15:30:47.957Z","0.1.2":"2025-03-11T15:57:43.774Z","0.2.0":"2025-04-02T04:35:19.442Z","0.2.1":"2025-04-02T07:10:57.100Z","0.2.2":"2025-04-17T06:02:42.179Z","0.2.3":"2025-04-17T17:46:20.769Z","0.2.4":"2025-04-18T08:30:55.635Z","0.2.5":"2025-04-22T13:24:42.303Z","0.2.6":"2025-04-22T16:55:46.662Z","0.2.7":"2025-04-22T17:14:56.614Z","0.2.8":"2025-04-22T17:20:01.972Z","0.2.9":"2025-04-22T18:22:35.125Z","0.2.10":"2025-04-25T12:54:57.216Z","0.2.11":"2025-04-25T13:00:49.476Z","0.2.12":"2025-04-27T11:53:41.152Z","0.2.13":"2025-04-27T12:44:52.104Z","0.2.14":"2025-05-05T08:49:11.123Z","0.2.15":"2025-05-05T09:50:46.800Z","0.2.16":"2025-05-05T09:57:49.627Z","0.2.18":"2025-05-20T15:45:09.149Z","0.2.19":"2025-06-06T13:26:28.342Z","0.2.20":"2025-07-04T19:14:09.188Z","0.2.21":"2025-07-05T07:02:06.915Z","0.2.22":"2025-07-05T07:16:53.474Z","0.2.23":"2025-07-05T07:54:52.620Z","0.2.24":"2025-07-05T07:57:12.698Z","0.2.25":"2025-07-12T10:12:59.382Z","0.2.26":"2025-07-16T09:17:54.405Z","0.3.0":"2025-09-25T18:13:21.299Z","0.3.1":"2025-09-25T18:30:05.705Z","0.3.2":"2025-09-25T18:42:06.388Z","0.3.3":"2025-09-25T18:50:12.557Z","0.3.4":"2025-09-25T19:05:55.631Z","0.3.5":"2025-09-25T19:29:47.026Z","0.3.6":"2025-09-25T20:25:49.142Z","0.3.7":"2025-09-25T20:26:30.127Z","0.3.8":"2025-09-25T20:28:48.980Z","0.3.9":"2025-09-26T06:19:22.258Z","0.3.10":"2025-10-05T15:24:45.216Z","0.4.0":"2025-11-20T17:19:08.612Z","0.4.1":"2025-11-22T21:11:57.740Z","0.4.2":"2025-12-15T19:50:39.165Z"},"bugs":{"url":"https://github.com/unbywyd/tsdiapi-jwt-auth/issues"},"author":{"name":"Artyom Gorlovetskiy","email":"unbywyd@gmail.com","url":"https://github.com/unbywyd"},"license":"MIT","homepage":"https://github.com/unbywyd/tsdiapi-jwt-auth#readme","keywords":["tsdiapi","jwt","authentication","authorization","plugin"],"repository":{"type":"git","url":"git+https://github.com/unbywyd/tsdiapi-jwt-auth.git"},"description":"JWT authentication plugin for TSDIAPI-Server, providing easy-to-use guards, token generation, and session validation.","maintainers":[{"name":"unbywyd","email":"unbywyd@gmail.com"}],"readme":"# @tsdiapi/jwt-auth\r\n\r\n[![npm version](https://badge.fury.io/js/%40tsdiapi%2Fjwt-auth.svg)](https://badge.fury.io/js/%40tsdiapi%2Fjwt-auth)\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n\r\n**TSDIAPI-JWT-Auth** is a plugin for the `TSDIAPI-Server` framework that simplifies JWT-based authentication and authorization. It includes utilities for token creation, session validation, and custom guards to secure API endpoints effectively.\r\n\r\n## Features\r\n\r\n- **Token Management**: Generate and verify JWT tokens with customizable payloads and expiration times.\r\n- **Session Protection**: Use built-in or custom session validation logic for secure API access.\r\n- **Cookie-based Sessions**: Support for cookie-based session authentication using @fastify/session and @fastify/cookie.\r\n- **Hybrid Authentication**: Combine JWT and session authentication with flexible fallback strategies.\r\n- **Multiple Authentication Modes**: Choose between JWT-only, session-only, hybrid, or require-both authentication.\r\n- **Custom Guards**: Easily register and reference multiple guards to support various security requirements.\r\n- **Environment Integration**: Supports configuration through `.env` files to streamline deployment.\r\n- **Optional Guards**: Load session without blocking requests when authentication fails.\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @tsdiapi/jwt-auth\r\n```\r\n\r\nOr use the CLI to add the plugin:\r\n\r\n```bash\r\ntsdiapi plugins add jwt-auth\r\n```\r\n\r\n## Usage\r\n\r\n### Register the Plugin\r\n\r\nImport and register the plugin in your TSDIAPI application:\r\n\r\n```typescript\r\nimport createPlugin from \"@tsdiapi/jwt-auth\";\r\nimport { createApp } from \"@tsdiapi/server\";\r\n\r\ncreateApp({\r\n  plugins: [\r\n    createPlugin({\r\n      secretKey: \"your-secret-key\", // Use JWT_SECRET_KEY in .env as an alternative\r\n      expirationTime: 60 * 60 * 24 * 7, // Token valid for 7 days, override with JWT_EXPIRATION_TIME in .env\r\n      refreshSecretKey: \"your-refresh-secret-key\", // Use JWT_REFRESH_SECRET_KEY in .env as an alternative\r\n      refreshExpirationTime: 60 * 60 * 24 * 30, // Refresh token valid for 30 days, override with JWT_REFRESH_EXPIRATION_TIME in .env\r\n      guards: {\r\n        admin: (session) => session.role === 'admin',\r\n        user: (session) => session.role === 'user'\r\n      },\r\n      apiKeys: {\r\n        'api-key-1': true,\r\n        'api-key-2': {\r\n          description: 'Admin API key',\r\n          validate: () => true\r\n        }\r\n      },\r\n      // Authentication mode: 'jwt-only', 'session-only', 'hybrid', 'require-both'\r\n      authMode: 'jwt-only', // Default mode, override with AUTH_MODE in .env\r\n      // Session configuration (required for session-based authentication)\r\n      session: {\r\n        store: 'memory', // Session store type: 'memory', 'redis', 'mongodb', 'custom'\r\n        secret: 'session-secret-key', // Use SESSION_SECRET in .env as an alternative\r\n        cookieName: 'sessionId',\r\n        cookieOptions: {\r\n          secure: false, // Set to true in production with HTTPS\r\n          httpOnly: true,\r\n          sameSite: 'lax',\r\n          maxAge: 60 * 60 * 24 * 7 * 1000, // 7 days in milliseconds\r\n          path: '/'\r\n        }\r\n      }\r\n    }),\r\n  ],\r\n});\r\n```\r\n\r\n### Authentication Modes\r\n\r\nThe plugin supports four authentication modes that can be configured via the `authMode` option:\r\n\r\n1. **`jwt-only`** (default) - Only JWT Bearer token authentication\r\n2. **`session-only`** - Only cookie-based session authentication\r\n3. **`hybrid`** - Accepts either JWT or session authentication (whichever is available)\r\n4. **`require-both`** - Requires both JWT and session authentication to be valid\r\n\r\n**Note:** To use session-based authentication (`session-only`, `hybrid`, or `require-both`), you must:\r\n1. Install session dependencies: `npm install @fastify/cookie @fastify/session`\r\n2. Configure the `session` option in plugin configuration\r\n3. Set a `SESSION_SECRET` environment variable or provide `session.secret` in config\r\n\r\n### Environment Configuration\r\n\r\nDefine environment variables in your `.env` file to avoid hardcoding sensitive data:\r\n\r\n```env\r\nJWT_SECRET_KEY=your-secret-key\r\nJWT_EXPIRATION_TIME=604800\r\nJWT_REFRESH_SECRET_KEY=your-refresh-secret-key\r\nJWT_REFRESH_EXPIRATION_TIME=2592000\r\nSESSION_SECRET=your-session-secret-key\r\nAUTH_MODE=jwt-only\r\n```\r\n\r\n## Protecting Endpoints\r\n\r\n**Important Rules for Route Definition:**\r\n1. Every route using guards **MUST** define a 403 response code with the following schema:\r\n   ```typescript\r\n   .code(403, Type.Object({\r\n       error: Type.String(),\r\n   }))\r\n   ```\r\n2. Response codes (`code()`) must be defined immediately after the HTTP method (get, post, etc.)\r\n3. Authentication (`auth()`) and guards (`guard()`) should be defined after response codes\r\n4. The handler should be defined last\r\n\r\n### Required Guards\r\n\r\nThese guards will block requests if authentication fails:\r\n\r\n#### Applying the `JWTGuard`\r\n\r\nSecure API endpoints using `JWTGuard`. You can use it in two ways:\r\n\r\n1. For standard bearer token validation:\r\n```typescript\r\nuseRoute()\r\n  .get('/protected/endpoint')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .auth('bearer')\r\n  .guard(JWTGuard())\r\n  .handler(async (req) => {\r\n    return {\r\n      status: 200,\r\n      data: { message: 'Access granted' }\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n2. For custom guard validation:\r\n```typescript\r\nuseRoute()\r\n  .get('/admin/dashboard')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .auth('bearer')\r\n  .guard(JWTGuard({ guardName: 'adminOnly' }))\r\n  .handler(async (req) => {\r\n    return {\r\n      status: 200,\r\n      data: { message: 'Welcome to admin dashboard' }\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n#### Applying the `APIKeyGuard`\r\n\r\n```typescript\r\nuseRoute()\r\n  .get('/api/protected')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .guard(APIKeyGuard())\r\n  .handler(async (req) => {\r\n    return {\r\n      status: 200,\r\n      data: { message: 'API access granted' }\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n#### Applying the `SessionGuard`\r\n\r\n**Note:** Session guard requires `@fastify/session` and `@fastify/cookie` to be installed.\r\n\r\n```typescript\r\nimport { SessionGuard, useSession } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .get('/dashboard')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n      userId: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .guard(SessionGuard())\r\n  .handler(async (req) => {\r\n    const session = useSession(req);\r\n    return {\r\n      status: 200,\r\n      data: {\r\n        message: 'Welcome to dashboard',\r\n        userId: session.userId\r\n      }\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n#### Applying the `HybridAuthGuard`\r\n\r\nThe `HybridAuthGuard` allows flexible authentication using different modes:\r\n\r\n```typescript\r\nimport { HybridAuthGuard, useSession } from \"@tsdiapi/jwt-auth\";\r\n\r\n// Example 1: Hybrid mode - accepts either JWT or session\r\nuseRoute()\r\n  .get('/profile')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n      userId: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .guard(HybridAuthGuard({ mode: 'hybrid' }))\r\n  .handler(async (req) => {\r\n    const session = useSession(req);\r\n    return {\r\n      status: 200,\r\n      data: {\r\n        message: 'User profile',\r\n        userId: session.userId\r\n      }\r\n    }\r\n  })\r\n  .build();\r\n\r\n// Example 2: Require both JWT and session\r\nuseRoute()\r\n  .get('/secure-data')\r\n  .code(200, Type.Object({\r\n      data: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .guard(HybridAuthGuard({ mode: 'require-both' }))\r\n  .handler(async (req) => {\r\n    return {\r\n      status: 200,\r\n      data: { data: 'Top secret information' }\r\n    }\r\n  })\r\n  .build();\r\n\r\n// Example 3: Session-only mode\r\nuseRoute()\r\n  .get('/session-protected')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .guard(HybridAuthGuard({ mode: 'session-only' }))\r\n  .handler(async (req) => {\r\n    return {\r\n      status: 200,\r\n      data: { message: 'Session authenticated' }\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n### Optional Guards\r\n\r\nThese guards load session if authentication is valid, but don't block requests if it fails. Use the `optional: true` option:\r\n\r\n#### Applying the `JWTGuard` in Optional Mode\r\n\r\n```typescript\r\nuseRoute()\r\n  .get('/optional-auth')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n      isAuthenticated: Type.Optional(Type.Boolean()),\r\n      user: Type.Optional(Type.Object({\r\n          userId: Type.String(),\r\n          role: Type.String()\r\n      }))\r\n  }))\r\n  .guard(JWTGuard({ optional: true }))\r\n  .handler(async (req) => {\r\n    const session = useSession(req);\r\n    if (session) {\r\n      return {\r\n        status: 200,\r\n        data: { \r\n          message: 'Authenticated user', \r\n          user: session,\r\n          isAuthenticated: true \r\n        }\r\n      };\r\n    } else {\r\n      return {\r\n        status: 200,\r\n        data: { \r\n          message: 'Guest user',\r\n          isAuthenticated: false \r\n        }\r\n      };\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n#### Applying the `APIKeyGuard` in Optional Mode\r\n\r\n```typescript\r\nuseRoute()\r\n  .get('/api/optional')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n      isApiAuthenticated: Type.Optional(Type.Boolean()),\r\n      key: Type.Optional(Type.Any())\r\n  }))\r\n  .guard(APIKeyGuard({ optional: true }))\r\n  .handler(async (req) => {\r\n    const session = useSession(req);\r\n    if (session) {\r\n      return {\r\n        status: 200,\r\n        data: { \r\n          message: 'Authenticated API call', \r\n          key: session,\r\n          isApiAuthenticated: true \r\n        }\r\n      };\r\n    } else {\r\n      return {\r\n        status: 200,\r\n        data: { \r\n          message: 'Unauthenticated API call',\r\n          isApiAuthenticated: false \r\n        }\r\n      };\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n#### Optional Guard with Custom Validation\r\n\r\n```typescript\r\nuseRoute()\r\n  .get('/premium-content')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n      accessLevel: Type.String()\r\n  }))\r\n  .guard(JWTGuard({ \r\n    optional: true,\r\n    validateSession: (session) => session.subscription === 'premium',\r\n    guardDescription: 'Optional premium validation'\r\n  }))\r\n  .handler(async (req) => {\r\n    const session = useSession(req);\r\n    if (session && session.subscription === 'premium') {\r\n      return {\r\n        status: 200,\r\n        data: { \r\n          message: 'Premium content', \r\n          accessLevel: 'premium' \r\n        }\r\n      };\r\n    } else if (session) {\r\n      return {\r\n        status: 200,\r\n        data: { \r\n          message: 'Basic content', \r\n          accessLevel: 'basic' \r\n        }\r\n      };\r\n    } else {\r\n      return {\r\n        status: 200,\r\n        data: { \r\n          message: 'Guest content',\r\n          accessLevel: 'guest' \r\n        }\r\n      };\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n### Registering Custom Guards\r\n\r\nYou can register custom guards during plugin initialization. These guards can later be referenced by name:\r\n\r\n```typescript\r\ncreateApp({\r\n  plugins: [\r\n    createPlugin({\r\n      secretKey: \"your-secret-key\",\r\n      guards: {\r\n        adminOnly: async (session) => {\r\n          if (session.role !== \"admin\") {\r\n            return \"Only administrators are allowed!\";\r\n          }\r\n          return true;\r\n        },\r\n      },\r\n    }),\r\n  ],\r\n});\r\n```\r\n\r\nTo use the custom guard in your routes:\r\n\r\n```typescript\r\nimport { JWTGuard } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .get('/admin/dashboard')\r\n  .code(200, Type.Object({\r\n      message: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .auth('bearer')\r\n  .guard(JWTGuard({ guardName: 'adminOnly' }))\r\n  .handler(async (req) => {\r\n    return {\r\n      status: 200,\r\n      data: { message: 'Welcome to admin dashboard' }\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\n**Important Notes:**\r\n1. The `guardName` in `JWTGuard` must match exactly with one of the guards registered in the plugin initialization\r\n2. Your route must support 403 status code to handle unauthorized access cases\r\n3. The guard will return the error message defined in the guard function when validation fails\r\n\r\n### Accessing User Session Data\r\n\r\nAfter successful authentication, you can access the user's session data through `req.session`. The session contains the decoded JWT payload:\r\n\r\n```typescript\r\nimport { JWTGuard, useSession } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .get('/user/profile')\r\n  .code(200, Type.Object({\r\n      userId: Type.String(),\r\n      role: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n      error: Type.String(),\r\n  }))\r\n  .auth('bearer')\r\n  .guard(JWTGuard())\r\n  .handler(async (req) => {\r\n    // Type-safe session access\r\n    const session = useSession<{\r\n      userId: string;\r\n      role: string;\r\n    }>(req);\r\n    \r\n    return {\r\n      status: 200,\r\n      data: { userId: session.userId, role: session.role }\r\n    }\r\n  })\r\n  .build();\r\n```\r\n\r\nFor better type safety, you can define your session type once and reuse it:\r\n\r\n```typescript\r\ntype UserSession = {\r\n  userId: string;\r\n  role: string;\r\n  permissions: string[];\r\n};\r\n\r\n// In your route handler\r\nconst session = useSession<UserSession>(req);\r\n```\r\n\r\nThe session object contains all the data that was included in the JWT token when it was created. For example, if you signed in with:\r\n```typescript\r\nconst token = await authProvider.signIn({\r\n  userId: \"123\",\r\n  role: \"admin\",\r\n  permissions: [\"read\", \"write\"]\r\n});\r\n```\r\n\r\nThen in your route handler, you can access all these fields with type safety:\r\n```typescript\r\nconst session = useSession<UserSession>(req);\r\nconst { userId, role, permissions } = session;\r\n```\r\n\r\n---\r\n\r\n## Using the JWT Auth Provider\r\n\r\nThe `JWTAuthProvider` is the core service for handling JWT-based authentication in your TSDIAPI application. It provides methods for signing in users, verifying tokens, and managing guards for session validation.\r\n\r\n### Importing the Provider\r\n\r\nTo access the provider, import the `useJWTAuthProvider` function:\r\n\r\n```typescript\r\nimport { useJWTAuthProvider } from \"@tsdiapi/jwt-auth\";\r\n```\r\n\r\nMake sure the plugin is registered before calling this function, otherwise, an error will be thrown.\r\n\r\n---\r\n\r\n### `signIn(payload: Record<string, any>): Promise<string>`\r\n\r\nGenerates a JWT token for the given user payload.\r\n\r\n#### Example:\r\n```typescript\r\nconst authProvider = useJWTAuthProvider();\r\n\r\nconst token = await authProvider.signIn({\r\n  userId: \"123\",\r\n  role: \"admin\",\r\n});\r\nconsole.log(\"Generated Token:\", token);\r\n```\r\n\r\n### `signInWithExpiry(payload: Record<string, any>): Promise<TokenWithExpiry>`\r\n\r\nGenerates a JWT token with expiration date for the given user payload.\r\n\r\n#### Example:\r\n```typescript\r\nconst authProvider = useJWTAuthProvider();\r\n\r\nconst result = await authProvider.signInWithExpiry({\r\n  userId: \"123\",\r\n  role: \"admin\",\r\n});\r\nconsole.log(\"Generated Token:\", result.token);\r\nconsole.log(\"Expires At:\", result.expiresAt);\r\n```\r\n\r\n### `signInWithRefresh(payload: Record<string, any>): Promise<TokenPair>`\r\n\r\nGenerates both access and refresh tokens for the given user payload.\r\n\r\n#### Example:\r\n```typescript\r\nconst authProvider = useJWTAuthProvider();\r\n\r\nconst tokens = await authProvider.signInWithRefresh({\r\n  userId: \"123\",\r\n  role: \"admin\",\r\n});\r\nconsole.log(\"Access Token:\", tokens.accessToken);\r\nconsole.log(\"Refresh Token:\", tokens.refreshToken);\r\n```\r\n\r\n### `signInWithRefreshAndExpiry(payload: Record<string, any>): Promise<TokenPairWithExpiry>`\r\n\r\nGenerates both access and refresh tokens with expiration dates for the given user payload.\r\n\r\n#### Example:\r\n```typescript\r\nconst authProvider = useJWTAuthProvider();\r\n\r\nconst tokens = await authProvider.signInWithRefreshAndExpiry({\r\n  userId: \"123\",\r\n  role: \"admin\",\r\n});\r\nconsole.log(\"Access Token:\", tokens.accessToken);\r\nconsole.log(\"Access Token Expires At:\", tokens.accessTokenExpiresAt);\r\nconsole.log(\"Refresh Token:\", tokens.refreshToken);\r\nconsole.log(\"Refresh Token Expires At:\", tokens.refreshTokenExpiresAt);\r\n```\r\n\r\n### `verify<T>(token: string): Promise<T | null>`\r\n\r\nVerifies a JWT token and returns the decoded session payload.\r\n\r\n#### Example:\r\n```typescript\r\nconst authProvider = useJWTAuthProvider();\r\n\r\nconst session = await authProvider.verify<{ userId: string; role: string }>(token);\r\nif (session) {\r\n  console.log(\"Authenticated User:\", session.userId);\r\n} else {\r\n  console.log(\"Invalid token\");\r\n}\r\n```\r\n\r\n### `verifyRefresh<T>(token: string): Promise<T | null>`\r\n\r\nVerifies a refresh token and returns the decoded session payload.\r\n\r\n#### Example:\r\n```typescript\r\nconst authProvider = useJWTAuthProvider();\r\n\r\nconst session = await authProvider.verifyRefresh<{ userId: string; role: string }>(refreshToken);\r\nif (session) {\r\n  console.log(\"Valid Refresh Token for User:\", session.userId);\r\n} else {\r\n  console.log(\"Invalid refresh token\");\r\n}\r\n```\r\n\r\n### `validateTokens<T>(accessToken: string, refreshToken: string, validateFn?: (accessPayload: any, refreshPayload: any) => boolean | Promise<boolean>): Promise<boolean>`\r\n\r\nValidates if both access and refresh tokens are valid and belong to the same user. Optionally accepts a custom validation function.\r\n\r\n#### Example:\r\n```typescript\r\nconst authProvider = useJWTAuthProvider();\r\n\r\n// Basic validation (compares payloads)\r\nconst isValid = await authProvider.validateTokens(accessToken, refreshToken);\r\nif (isValid) {\r\n  console.log(\"Both tokens are valid and belong to the same user\");\r\n} else {\r\n  console.log(\"Tokens are invalid or don't match\");\r\n}\r\n\r\n// Custom validation\r\nconst isValidCustom = await authProvider.validateTokens(\r\n  accessToken, \r\n  refreshToken,\r\n  (accessPayload, refreshPayload) => {\r\n    return accessPayload.userId === refreshPayload.userId && \r\n           accessPayload.status === 'active';\r\n  }\r\n);\r\n```\r\n\r\n---\r\n\r\n## Using the Session Provider\r\n\r\nThe `SessionProvider` is a service for handling cookie-based session authentication. It provides methods for creating, destroying, and managing user sessions.\r\n\r\n**Note:** Session provider requires `@fastify/session` and `@fastify/cookie` to be installed.\r\n\r\n### Importing the Provider\r\n\r\n```typescript\r\nimport { useSessionProvider, createUserSession, destroyUserSession, isSessionValid, createHybridAuth } from \"@tsdiapi/jwt-auth\";\r\n```\r\n\r\n### `createUserSession<T>(req, reply, userData: T): Promise<void>`\r\n\r\nCreates a new session for a user with the provided user data.\r\n\r\n#### Example:\r\n```typescript\r\nimport { createUserSession } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .post('/login')\r\n  .code(200, Type.Object({\r\n    message: Type.String(),\r\n  }))\r\n  .handler(async (req, reply) => {\r\n    // Validate user credentials here\r\n    const userData = {\r\n      userId: \"123\",\r\n      role: \"user\",\r\n      email: \"user@example.com\"\r\n    };\r\n\r\n    await createUserSession(req, reply, userData);\r\n\r\n    return {\r\n      status: 200,\r\n      data: { message: 'Logged in successfully' }\r\n    };\r\n  })\r\n  .build();\r\n```\r\n\r\n### `destroyUserSession(req, reply): Promise<void>`\r\n\r\nDestroys the current user session (logout).\r\n\r\n#### Example:\r\n```typescript\r\nimport { destroyUserSession } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .post('/logout')\r\n  .code(200, Type.Object({\r\n    message: Type.String(),\r\n  }))\r\n  .handler(async (req, reply) => {\r\n    await destroyUserSession(req, reply);\r\n\r\n    return {\r\n      status: 200,\r\n      data: { message: 'Logged out successfully' }\r\n    };\r\n  })\r\n  .build();\r\n```\r\n\r\n### `isSessionValid(req): Promise<boolean>`\r\n\r\nChecks if the current session is valid.\r\n\r\n#### Example:\r\n```typescript\r\nimport { isSessionValid } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .get('/check-session')\r\n  .code(200, Type.Object({\r\n    isValid: Type.Boolean(),\r\n  }))\r\n  .handler(async (req) => {\r\n    const valid = await isSessionValid(req);\r\n\r\n    return {\r\n      status: 200,\r\n      data: { isValid: valid }\r\n    };\r\n  })\r\n  .build();\r\n```\r\n\r\n### `createHybridAuth<T>(req, reply, userData: T): Promise<{ tokens: TokenPairWithExpiry; session: boolean }>`\r\n\r\nCreates both JWT tokens and a session for hybrid authentication.\r\n\r\n#### Example:\r\n```typescript\r\nimport { createHybridAuth } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .post('/login-hybrid')\r\n  .code(200, Type.Object({\r\n    message: Type.String(),\r\n    accessToken: Type.String(),\r\n    refreshToken: Type.String(),\r\n    accessTokenExpiresAt: Type.String(),\r\n    refreshTokenExpiresAt: Type.String(),\r\n  }))\r\n  .handler(async (req, reply) => {\r\n    // Validate user credentials here\r\n    const userData = {\r\n      userId: \"123\",\r\n      role: \"user\",\r\n      email: \"user@example.com\"\r\n    };\r\n\r\n    const result = await createHybridAuth(req, reply, userData);\r\n\r\n    return {\r\n      status: 200,\r\n      data: {\r\n        message: 'Logged in successfully',\r\n        accessToken: result.tokens.accessToken,\r\n        refreshToken: result.tokens.refreshToken,\r\n        accessTokenExpiresAt: result.tokens.accessTokenExpiresAt.toISOString(),\r\n        refreshTokenExpiresAt: result.tokens.refreshTokenExpiresAt.toISOString()\r\n      }\r\n    };\r\n  })\r\n  .build();\r\n```\r\n\r\n### `useUser<T>(req): Promise<T | null>`\r\n\r\nUniversal function to get user data from any authentication method (session, JWT, or session provider).\r\n\r\n#### Example:\r\n```typescript\r\nimport { useUser } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .get('/current-user')\r\n  .code(200, Type.Object({\r\n    user: Type.Optional(Type.Object({\r\n      userId: Type.String(),\r\n      role: Type.String(),\r\n    })),\r\n  }))\r\n  .handler(async (req) => {\r\n    const user = await useUser(req);\r\n\r\n    return {\r\n      status: 200,\r\n      data: { user }\r\n    };\r\n  })\r\n  .build();\r\n```\r\n\r\n---\r\n\r\n## Configuration\r\n\r\n### Environment Variables\r\n\r\n- `JWT_SECRET_KEY` - Secret key for JWT signing (default: 'secret-key-for-jwt')\r\n- `JWT_EXPIRATION_TIME` - Token expiration time in seconds (default: 604800 - 7 days)\r\n- `JWT_REFRESH_SECRET_KEY` - Secret key for JWT refresh token signing (default: 'refresh-secret-key-for-jwt')\r\n- `JWT_REFRESH_EXPIRATION_TIME` - Refresh token expiration time in seconds (default: 2592000 - 30 days)\r\n- `SESSION_SECRET` - Secret key for session cookie signing (default: 'session-secret-key')\r\n- `AUTH_MODE` - Authentication mode: 'jwt-only', 'session-only', 'hybrid', 'require-both' (default: 'jwt-only')\r\n\r\n### Plugin Options\r\n\r\n| Option                | Type                                      | Description                                    |\r\n| --------------------- | ----------------------------------------- | ---------------------------------------------- |\r\n| `secretKey`           | `string`                                  | Secret key for signing JWT tokens.             |\r\n| `expirationTime`      | `number`                                  | Token expiration time in seconds.              |\r\n| `refreshSecretKey`    | `string`                                  | Secret key for signing refresh tokens.         |\r\n| `refreshExpirationTime` | `number`                               | Refresh token expiration time in seconds.      |\r\n| `guards`              | `Record<string, ValidateSessionFunction>` | Custom guards for validating sessions.         |\r\n| `apiKeys`             | `Record<string, APIKeyEntry \\| 'JWT' \\| true>` | API keys configuration.                        |\r\n| `authMode`            | `AuthMode`                                | Authentication mode: 'jwt-only', 'session-only', 'hybrid', 'require-both'. |\r\n| `session`             | `SessionConfig`                           | Session configuration (store, secret, cookie options). |\r\n\r\n\r\n---\r\n\r\n## API Reference\r\n\r\n### Guards\r\n\r\n- `JWTGuard(options?)` - JWT Bearer token authentication (use `optional: true` for optional mode)\r\n- `APIKeyGuard(options?)` - API key authentication (use `optional: true` for optional mode)\r\n- `SessionGuard(options?)` - Cookie-based session authentication (use `optional: true` for optional mode)\r\n- `HybridAuthGuard(options?)` - Flexible authentication supporting multiple modes\r\n\r\n### Helper Functions\r\n\r\n#### Session Management\r\n- `useSession<T>(req)` - Get current session from any authentication method\r\n- `useUser<T>(req)` - Universal function to get user data from any authentication method\r\n- `createUserSession<T>(req, reply, userData)` - Create a new session for a user\r\n- `destroyUserSession(req, reply)` - Destroy the current user session (logout)\r\n- `isSessionValid(req)` - Check if the current session is valid\r\n- `createHybridAuth<T>(req, reply, userData)` - Create both JWT tokens and a session\r\n\r\n#### Provider Functions\r\n- `useJWTAuthProvider()` - Get JWT provider instance\r\n- `useApiKeyProvider()` - Get API key provider instance\r\n- `useSessionProvider()` - Get Session provider instance\r\n\r\n#### Token Validation\r\n- `isBearerValid<T>(req)` - Check if Bearer token is valid\r\n- `isApiKeyValid(req)` - Check if API key is valid\r\n- `isRefreshTokenValid<T>(req)` - Check if refresh token is valid\r\n- `validateTokenPair<T>(accessToken, refreshToken, validateFn?)` - Validate if both tokens are valid and belong to the same user\r\n- `refreshAccessToken<T>(accessToken, refreshToken, validateFn?)` - Generate new access and refresh tokens with expiry dates from refresh token with validation\r\n\r\n#### Other\r\n- `logout(req, reply)` - JWT logout function\r\n\r\n### Types\r\n\r\n- `ValidateSessionFunction<T>` - Session validation function type\r\n- `JWTGuardOptions<TGuards>` - Guard configuration options\r\n- `HybridAuthGuardOptions<TGuards>` - Hybrid guard configuration options\r\n- `PluginOptions<TGuards>` - Plugin configuration options\r\n- `TokenPair` - Object containing access and refresh tokens\r\n- `TokenWithExpiry` - Object containing token and expiration date\r\n- `TokenPairWithExpiry` - Object containing access and refresh tokens with expiration dates\r\n- `AuthMode` - Authentication mode type: 'jwt-only', 'session-only', 'hybrid', 'require-both'\r\n- `SessionConfig` - Session configuration type\r\n- `SessionStore` - Session store type: 'memory', 'redis', 'mongodb', 'custom'\r\n- `UserData` - User data interface\r\n\r\n---\r\n\r\n## Refresh Token Usage Examples\r\n\r\n### Basic Refresh Token Flow\r\n\r\n```typescript\r\nimport { useJWTAuthProvider, validateTokenPair, refreshAccessToken } from \"@tsdiapi/jwt-auth\";\r\n\r\n// 1. Sign in with refresh token and expiry dates\r\nconst authProvider = useJWTAuthProvider();\r\nconst tokens = await authProvider.signInWithRefreshAndExpiry({\r\n  userId: \"123\",\r\n  role: \"user\",\r\n  email: \"user@example.com\"\r\n});\r\n\r\nconsole.log(\"Access Token:\", tokens.accessToken);\r\nconsole.log(\"Access Token Expires At:\", tokens.accessTokenExpiresAt);\r\nconsole.log(\"Refresh Token:\", tokens.refreshToken);\r\nconsole.log(\"Refresh Token Expires At:\", tokens.refreshTokenExpiresAt);\r\n\r\n// 2. Validate token pair\r\nconst isValid = await validateTokenPair(tokens.accessToken, tokens.refreshToken);\r\nif (isValid) {\r\n  console.log(\"Tokens are valid and belong to the same user\");\r\n}\r\n\r\n// 3. Validate with custom logic\r\nconst isValidCustom = await validateTokenPair(\r\n  tokens.accessToken, \r\n  tokens.refreshToken,\r\n  (accessPayload, refreshPayload) => {\r\n    return accessPayload.userId === refreshPayload.userId && \r\n           accessPayload.role === refreshPayload.role;\r\n  }\r\n);\r\n\r\n// 4. Refresh tokens when they expire\r\nconst newTokens = await refreshAccessToken(tokens.accessToken, tokens.refreshToken);\r\nif (newTokens) {\r\n  console.log(\"New access token:\", newTokens.accessToken);\r\n  console.log(\"New access token expires at:\", newTokens.accessTokenExpiresAt);\r\n  console.log(\"New refresh token:\", newTokens.refreshToken);\r\n  console.log(\"New refresh token expires at:\", newTokens.refreshTokenExpiresAt);\r\n}\r\n\r\n// 5. Refresh with custom validation\r\nconst newTokensCustom = await refreshAccessToken(\r\n  tokens.accessToken, \r\n  tokens.refreshToken,\r\n  (accessPayload, refreshPayload) => {\r\n    return accessPayload.userId === refreshPayload.userId && \r\n           accessPayload.status === 'active';\r\n  }\r\n);\r\n```\r\n\r\n### Custom Token Validation\r\n\r\n```typescript\r\nimport { validateTokenPair } from \"@tsdiapi/jwt-auth\";\r\n\r\n// Custom validation function\r\nconst customValidation = (accessPayload, refreshPayload) => {\r\n  // Custom validation logic\r\n  if (accessPayload.userId !== refreshPayload.userId) {\r\n    return false;\r\n  }\r\n  \r\n  // Check if user is still active\r\n  if (accessPayload.status === 'inactive') {\r\n    return false;\r\n  }\r\n  \r\n  // Check if tokens were issued for the same session\r\n  if (accessPayload.sessionId !== refreshPayload.sessionId) {\r\n    return false;\r\n  }\r\n  \r\n  return true;\r\n};\r\n\r\n// Use in your application\r\nconst isValid = await validateTokenPair(accessToken, refreshToken, customValidation);\r\n```\r\n\r\n### Refresh Token Endpoint Example\r\n\r\n```typescript\r\nimport { useRoute } from \"@tsdiapi/server\";\r\nimport { Type } from \"@sinclair/typebox\";\r\nimport { refreshAccessToken, isRefreshTokenValid } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .post('/auth/refresh')\r\n  .code(200, Type.Object({\r\n    accessToken: Type.String(),\r\n    refreshToken: Type.String(),\r\n    accessTokenExpiresAt: Type.String(),\r\n    refreshTokenExpiresAt: Type.String(),\r\n  }))\r\n  .code(403, Type.Object({\r\n    error: Type.String(),\r\n  }))\r\n  .handler(async (req) => {\r\n    const accessToken = req.headers.authorization?.split(/\\s+/)[1] as string;\r\n    const refreshToken = req.headers['x-refresh-token'] as string;\r\n    \r\n    if (!accessToken || !refreshToken) {\r\n      return {\r\n        status: 403,\r\n        data: { error: 'Both access and refresh tokens are required' }\r\n      };\r\n    }\r\n    \r\n    // Custom validation function\r\n    const customValidation = (accessPayload, refreshPayload) => {\r\n      return accessPayload.userId === refreshPayload.userId && \r\n             accessPayload.status === 'active';\r\n    };\r\n    \r\n    const newTokens = await refreshAccessToken(accessToken, refreshToken, customValidation);\r\n    \r\n    if (!newTokens) {\r\n      return {\r\n        status: 403,\r\n        data: { error: 'Invalid tokens or validation failed' }\r\n      };\r\n    }\r\n    \r\n    return {\r\n      status: 200,\r\n      data: { \r\n        accessToken: newTokens.accessToken,\r\n        refreshToken: newTokens.refreshToken,\r\n        accessTokenExpiresAt: newTokens.accessTokenExpiresAt.toISOString(),\r\n        refreshTokenExpiresAt: newTokens.refreshTokenExpiresAt.toISOString()\r\n      }\r\n    };\r\n  })\r\n  .build();\r\n```\r\n\r\n### Token Pair Validation Endpoint\r\n\r\n```typescript\r\nimport { useRoute } from \"@tsdiapi/server\";\r\nimport { Type } from \"@sinclair/typebox\";\r\nimport { validateTokenPair } from \"@tsdiapi/jwt-auth\";\r\n\r\nuseRoute()\r\n  .post('/auth/validate-tokens')\r\n  .code(200, Type.Object({\r\n    isValid: Type.Boolean(),\r\n  }))\r\n  .code(400, Type.Object({\r\n    error: Type.String(),\r\n  }))\r\n  .handler(async (req) => {\r\n    const { accessToken, refreshToken } = req.body;\r\n    \r\n    if (!accessToken || !refreshToken) {\r\n      return {\r\n        status: 400,\r\n        data: { error: 'Both access and refresh tokens are required' }\r\n      };\r\n    }\r\n    \r\n    const isValid = await validateTokenPair(accessToken, refreshToken);\r\n    \r\n    return {\r\n      status: 200,\r\n      data: { isValid }\r\n    };\r\n  })\r\n  .build();\r\n```\r\n\r\n---\r\n\r\n## License\r\n\r\nThis plugin is open-source and available under the [MIT License](LICENSE).","readmeFilename":"README.md"}