{"_id":"@amtarc/auth-utils","_rev":"7-a3e13fb8da75ae26f518602c875f2b09","name":"@amtarc/auth-utils","dist-tags":{"latest":"1.4.0"},"versions":{"1.0.1":{"name":"@amtarc/auth-utils","version":"1.0.1","keywords":["authentication","session","security","typescript","guards"],"author":{"name":"amtarc"},"license":"MIT","_id":"@amtarc/auth-utils@1.0.1","maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"dist":{"shasum":"600d7e5412081380d06488b66037c5303f88756f","tarball":"https://registry.npmjs.org/@amtarc/auth-utils/-/auth-utils-1.0.1.tgz","fileCount":51,"integrity":"sha512-3jOr6zjOkZEbfXaIbioKS8+vAJtulfe1rdTOC2kddB3PiMuiaRkQ7i5bwp3qvG1WFe9cgEkb4uRrZwQmAYtpYA==","signatures":[{"sig":"MEQCIBUO68bKLyrsUNCYlEcGU6E39hvMNoM9q4fylGcrUVn8AiB8RZ+VcOe4gHyIvD1O+uq+U0HvdKVlz9FO5KcZZjVAiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55151},"type":"module","_from":"file:amtarc-auth-utils-1.0.1.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js","require":"./dist/errors/index.cjs"},"./guards":{"types":"./dist/guards/index.d.ts","import":"./dist/guards/index.js","require":"./dist/guards/index.cjs"},"./cookies":{"types":"./dist/cookies/index.d.ts","import":"./dist/cookies/index.js","require":"./dist/cookies/index.cjs"},"./session":{"types":"./dist/session/index.d.ts","import":"./dist/session/index.js","require":"./dist/session/index.cjs"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest","build":"tsup","clean":"rm -rf dist","lint:fix":"eslint src/ --fix","test:run":"vitest run","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"amtarc-main","email":"amtarcofficial@gmail.com"},"_resolved":"/tmp/c008d4119f4470cb65e4b823b300cd3b/amtarc-auth-utils-1.0.1.tgz","_integrity":"sha512-3jOr6zjOkZEbfXaIbioKS8+vAJtulfe1rdTOC2kddB3PiMuiaRkQ7i5bwp3qvG1WFe9cgEkb4uRrZwQmAYtpYA==","_npmVersion":"10.8.2","description":"Core authentication and session management utilities","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vitest":"^1.3.1","typescript":"^5.3.3","@types/node":"^20.11.17","@vitest/coverage-v8":"^1.3.1"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/auth-utils_1.0.1_1770810189163_0.715872632696158","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@amtarc/auth-utils","version":"1.1.0","keywords":["authentication","authorization","session","session-management","security","guards","cookies","csrf","fingerprinting","multi-device","typescript","framework-agnostic"],"author":{"name":"amtarc"},"license":"MIT","_id":"@amtarc/auth-utils@1.1.0","maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"dist":{"shasum":"cc3ec35d3c23a6af080ba9a195be60726dc3e33d","tarball":"https://registry.npmjs.org/@amtarc/auth-utils/-/auth-utils-1.1.0.tgz","fileCount":61,"integrity":"sha512-Cqq3Z+s2U01Y6w79Kk7qKoPFtq8lKBKQiMYatDM+mCF2kCP8p5TFGawNX0lVnBtLw26+0NkSOTz7CHleT4fpeg==","signatures":[{"sig":"MEUCIQCxbperHY3Hw92cG83LvRcoq9PGyxBJIyDE/R7Z0b7HegIgN1VdYcIQyACnEVoRsLrdrf/kqVi8LFjobgLGxSyN3zY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":489121},"type":"module","_from":"file:amtarc-auth-utils-1.1.0.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js","require":"./dist/errors/index.cjs"},"./guards":{"types":"./dist/guards/index.d.ts","import":"./dist/guards/index.js","require":"./dist/guards/index.cjs"},"./cookies":{"types":"./dist/cookies/index.d.ts","import":"./dist/cookies/index.js","require":"./dist/cookies/index.cjs"},"./session":{"types":"./dist/session/index.d.ts","import":"./dist/session/index.js","require":"./dist/session/index.cjs"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest","build":"tsup","clean":"rm -rf dist","lint:fix":"eslint src/ --fix","test:run":"vitest run","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"amtarc-main","email":"amtarcofficial@gmail.com"},"_resolved":"/tmp/0e6876a856e71b718b32ec8ed5b8e1dd/amtarc-auth-utils-1.1.0.tgz","_integrity":"sha512-Cqq3Z+s2U01Y6w79Kk7qKoPFtq8lKBKQiMYatDM+mCF2kCP8p5TFGawNX0lVnBtLw26+0NkSOTz7CHleT4fpeg==","_npmVersion":"10.8.2","description":"Enterprise-grade authentication utilities with session management, guards, secure cookies, and comprehensive error handling","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vitest":"^1.3.1","typescript":"^5.3.3","@types/node":"^20.11.17","@vitest/coverage-v8":"^1.3.1"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/auth-utils_1.1.0_1770835208503_0.6391151985562109","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@amtarc/auth-utils","version":"1.2.0","keywords":["authentication","authorization","session","session-management","security","guards","cookies","csrf","rate-limiting","brute-force-protection","security-headers","csp","encryption","aes-256-gcm","key-derivation","fingerprinting","multi-device","typescript","framework-agnostic"],"author":{"name":"amtarc"},"license":"MIT","_id":"@amtarc/auth-utils@1.2.0","maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"dist":{"shasum":"30dab62999c847db1eda6938e846ade1599eae5e","tarball":"https://registry.npmjs.org/@amtarc/auth-utils/-/auth-utils-1.2.0.tgz","fileCount":139,"integrity":"sha512-UQN83lPSX0NLnZn1mD24gJOd93egSXQRZ7aU5vgFKlLVDPRSStBDhpnPxbdxVBF1jLXUKxcVC015obXJMzcTmw==","signatures":[{"sig":"MEUCIHiiZKtpkIgcvQdXEHejVVTQu14pDP/RI50JYPBGZtlfAiEA2usnt/Ark/GVgyfI5d5PQDBVIvXNBpOPR8fg/RGQ6pU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":894986},"type":"module","_from":"file:amtarc-auth-utils-1.2.0.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js","require":"./dist/errors/index.cjs"},"./guards":{"types":"./dist/guards/index.d.ts","import":"./dist/guards/index.js","require":"./dist/guards/index.cjs"},"./cookies":{"types":"./dist/cookies/index.d.ts","import":"./dist/cookies/index.js","require":"./dist/cookies/index.cjs"},"./session":{"types":"./dist/session/index.d.ts","import":"./dist/session/index.js","require":"./dist/session/index.cjs"},"./storage":{"types":"./dist/storage/index.d.ts","import":"./dist/storage/index.js","require":"./dist/storage/index.cjs"},"./security":{"types":"./dist/security/index.d.ts","import":"./dist/security/index.js","require":"./dist/security/index.cjs"},"./security/csrf":{"types":"./dist/security/csrf/index.d.ts","import":"./dist/security/csrf/index.js","require":"./dist/security/csrf/index.cjs"},"./security/headers":{"types":"./dist/security/headers/index.d.ts","import":"./dist/security/headers/index.js","require":"./dist/security/headers/index.cjs"},"./security/encryption":{"types":"./dist/security/encryption/index.d.ts","import":"./dist/security/encryption/index.js","require":"./dist/security/encryption/index.cjs"},"./security/rate-limit":{"types":"./dist/security/rate-limit/index.d.ts","import":"./dist/security/rate-limit/index.js","require":"./dist/security/rate-limit/index.cjs"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest","build":"tsup","clean":"rm -rf dist","lint:fix":"eslint src/ --fix","test:run":"vitest run","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"amtarc-main","email":"amtarcofficial@gmail.com"},"_resolved":"/tmp/c2bad8340ae998cc1b7e7c07120be01c/amtarc-auth-utils-1.2.0.tgz","_integrity":"sha512-UQN83lPSX0NLnZn1mD24gJOd93egSXQRZ7aU5vgFKlLVDPRSStBDhpnPxbdxVBF1jLXUKxcVC015obXJMzcTmw==","_npmVersion":"10.8.2","description":"Enterprise-grade authentication utilities with session management, guards, secure cookies, and comprehensive error handling","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vitest":"^1.3.1","typescript":"^5.3.3","@types/node":"^20.11.17","@vitest/coverage-v8":"^1.3.1"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/auth-utils_1.2.0_1771006497890_0.19795396284014588","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@amtarc/auth-utils","version":"1.2.1","keywords":["authentication","authorization","session","session-management","security","guards","cookies","csrf","rate-limiting","brute-force-protection","security-headers","csp","encryption","aes-256-gcm","key-derivation","fingerprinting","multi-device","typescript","framework-agnostic"],"author":{"name":"amtarc"},"license":"MIT","_id":"@amtarc/auth-utils@1.2.1","maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"dist":{"shasum":"1a09359859db3c9d77e2c93e2586f03490197cb6","tarball":"https://registry.npmjs.org/@amtarc/auth-utils/-/auth-utils-1.2.1.tgz","fileCount":139,"integrity":"sha512-sBsg8PV39Z4XDWXTuDLLELYUoAlA56tKTN/8icwJ0ke0mwDz4pP7TbemMAfrU0l8kmsorgMV+lcukRpd6IkymA==","signatures":[{"sig":"MEUCIQDVwE+iGJtJtb7v9HPr0NBCHixBymtn6X8GEyPbiNBNXgIgFaCAIUO6rQHDSJLFhENKv/n5xqeea2akGDIc7kLwZDg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":896108},"type":"module","_from":"file:amtarc-auth-utils-1.2.1.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js","require":"./dist/errors/index.cjs"},"./guards":{"types":"./dist/guards/index.d.ts","import":"./dist/guards/index.js","require":"./dist/guards/index.cjs"},"./cookies":{"types":"./dist/cookies/index.d.ts","import":"./dist/cookies/index.js","require":"./dist/cookies/index.cjs"},"./session":{"types":"./dist/session/index.d.ts","import":"./dist/session/index.js","require":"./dist/session/index.cjs"},"./storage":{"types":"./dist/storage/index.d.ts","import":"./dist/storage/index.js","require":"./dist/storage/index.cjs"},"./security":{"types":"./dist/security/index.d.ts","import":"./dist/security/index.js","require":"./dist/security/index.cjs"},"./security/csrf":{"types":"./dist/security/csrf/index.d.ts","import":"./dist/security/csrf/index.js","require":"./dist/security/csrf/index.cjs"},"./security/headers":{"types":"./dist/security/headers/index.d.ts","import":"./dist/security/headers/index.js","require":"./dist/security/headers/index.cjs"},"./security/encryption":{"types":"./dist/security/encryption/index.d.ts","import":"./dist/security/encryption/index.js","require":"./dist/security/encryption/index.cjs"},"./security/rate-limit":{"types":"./dist/security/rate-limit/index.d.ts","import":"./dist/security/rate-limit/index.js","require":"./dist/security/rate-limit/index.cjs"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest","build":"tsup","clean":"rm -rf dist","lint:fix":"eslint src/ --fix","test:run":"vitest run","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"amtarc-main","email":"amtarcofficial@gmail.com"},"_resolved":"/tmp/9d4d1c205cfe6714516ed37c17255104/amtarc-auth-utils-1.2.1.tgz","_integrity":"sha512-sBsg8PV39Z4XDWXTuDLLELYUoAlA56tKTN/8icwJ0ke0mwDz4pP7TbemMAfrU0l8kmsorgMV+lcukRpd6IkymA==","_npmVersion":"10.8.2","description":"Enterprise-grade authentication utilities with session management, guards, secure cookies, and comprehensive error handling","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vitest":"^1.3.1","typescript":"^5.3.3","@types/node":"^20.11.17","@vitest/coverage-v8":"^1.3.1"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/auth-utils_1.2.1_1771010381793_0.43247717922928186","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@amtarc/auth-utils","version":"1.3.0","keywords":["authentication","authorization","session","session-management","security","guards","cookies","csrf","rate-limiting","brute-force-protection","security-headers","csp","encryption","aes-256-gcm","key-derivation","fingerprinting","multi-device","typescript","framework-agnostic"],"author":{"name":"amtarc"},"license":"MIT","_id":"@amtarc/auth-utils@1.3.0","maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"dist":{"shasum":"fed031d6c4c10b1c9a643e6f2e53320834891302","tarball":"https://registry.npmjs.org/@amtarc/auth-utils/-/auth-utils-1.3.0.tgz","fileCount":169,"integrity":"sha512-ybjK5z1dYTiBmRPzBrKUn77A9jzLtmWgmbCWA+ZLcyt7Q0cAgB8mETc8io5CdoKo9fUyH3VG0s6KNrFlvXkziw==","signatures":[{"sig":"MEUCIQD2enK6JbGCZ78QsU3QtQkIOq1Eo6bcHTdG3mlr4aXvOAIgZOZrbmpPI2pO3W6xxhYY49hM62vm1wxaSrtSCCjvVn4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1185434},"type":"module","_from":"file:amtarc-auth-utils-1.3.0.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js","require":"./dist/errors/index.cjs"},"./guards":{"types":"./dist/guards/index.d.ts","import":"./dist/guards/index.js","require":"./dist/guards/index.cjs"},"./cookies":{"types":"./dist/cookies/index.d.ts","import":"./dist/cookies/index.js","require":"./dist/cookies/index.cjs"},"./session":{"types":"./dist/session/index.d.ts","import":"./dist/session/index.js","require":"./dist/session/index.cjs"},"./storage":{"types":"./dist/storage/index.d.ts","import":"./dist/storage/index.js","require":"./dist/storage/index.cjs"},"./security":{"types":"./dist/security/index.d.ts","import":"./dist/security/index.js","require":"./dist/security/index.cjs"},"./authorization":{"types":"./dist/authorization/index.d.ts","import":"./dist/authorization/index.js","require":"./dist/authorization/index.cjs"},"./security/csrf":{"types":"./dist/security/csrf/index.d.ts","import":"./dist/security/csrf/index.js","require":"./dist/security/csrf/index.cjs"},"./security/headers":{"types":"./dist/security/headers/index.d.ts","import":"./dist/security/headers/index.js","require":"./dist/security/headers/index.cjs"},"./authorization/rbac":{"types":"./dist/authorization/rbac/index.d.ts","import":"./dist/authorization/rbac/index.js","require":"./dist/authorization/rbac/index.cjs"},"./authorization/types":{"types":"./dist/authorization/types.d.ts","import":"./dist/authorization/types.js","require":"./dist/authorization/types.cjs"},"./security/encryption":{"types":"./dist/security/encryption/index.d.ts","import":"./dist/security/encryption/index.js","require":"./dist/security/encryption/index.cjs"},"./security/rate-limit":{"types":"./dist/security/rate-limit/index.d.ts","import":"./dist/security/rate-limit/index.js","require":"./dist/security/rate-limit/index.cjs"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest","build":"tsup","clean":"rm -rf dist","lint:fix":"eslint src/ --fix","test:run":"vitest run","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"amtarc-main","email":"amtarcofficial@gmail.com"},"_resolved":"/tmp/bf94ae8fb3e00867d799008c378e1f2c/amtarc-auth-utils-1.3.0.tgz","_integrity":"sha512-ybjK5z1dYTiBmRPzBrKUn77A9jzLtmWgmbCWA+ZLcyt7Q0cAgB8mETc8io5CdoKo9fUyH3VG0s6KNrFlvXkziw==","_npmVersion":"10.8.2","description":"Enterprise-grade authentication and authorization utilities with session management, RBAC, guards, secure cookies, and comprehensive error handling","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vitest":"^1.3.1","typescript":"^5.3.3","@types/node":"^20.11.17","@vitest/coverage-v8":"^1.3.1"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/auth-utils_1.3.0_1771182347764_0.6841887398424216","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@amtarc/auth-utils","version":"1.3.1","keywords":["authentication","authorization","session","session-management","security","guards","cookies","csrf","rate-limiting","brute-force-protection","security-headers","csp","encryption","aes-256-gcm","key-derivation","fingerprinting","multi-device","typescript","framework-agnostic"],"author":{"name":"amtarc"},"license":"MIT","_id":"@amtarc/auth-utils@1.3.1","maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"dist":{"shasum":"6f55af30dd7ac7c5a495f2f719568844f2258f28","tarball":"https://registry.npmjs.org/@amtarc/auth-utils/-/auth-utils-1.3.1.tgz","fileCount":169,"integrity":"sha512-ar+4/GOYPNfHbBQ+LLoLaLVV0JTQ8iL02fV3qnrC5P6sEU/S0aTwqwXUX7wrsw9tBeI+ga1Wmx+jqdjipZPfvA==","signatures":[{"sig":"MEUCIQCdV77Vrc986EqmsLBcdTFMlRUOfLj+IFX6+2jxWvkIUwIgUdV9LxVqF/Jz3NIV2Crz/TktoqX7cUnck9CGUndYuF0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1180962},"type":"module","_from":"file:amtarc-auth-utils-1.3.1.tgz","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js","require":"./dist/errors/index.cjs"},"./guards":{"types":"./dist/guards/index.d.ts","import":"./dist/guards/index.js","require":"./dist/guards/index.cjs"},"./cookies":{"types":"./dist/cookies/index.d.ts","import":"./dist/cookies/index.js","require":"./dist/cookies/index.cjs"},"./session":{"types":"./dist/session/index.d.ts","import":"./dist/session/index.js","require":"./dist/session/index.cjs"},"./storage":{"types":"./dist/storage/index.d.ts","import":"./dist/storage/index.js","require":"./dist/storage/index.cjs"},"./security":{"types":"./dist/security/index.d.ts","import":"./dist/security/index.js","require":"./dist/security/index.cjs"},"./authorization":{"types":"./dist/authorization/index.d.ts","import":"./dist/authorization/index.js","require":"./dist/authorization/index.cjs"},"./security/csrf":{"types":"./dist/security/csrf/index.d.ts","import":"./dist/security/csrf/index.js","require":"./dist/security/csrf/index.cjs"},"./security/headers":{"types":"./dist/security/headers/index.d.ts","import":"./dist/security/headers/index.js","require":"./dist/security/headers/index.cjs"},"./authorization/rbac":{"types":"./dist/authorization/rbac/index.d.ts","import":"./dist/authorization/rbac/index.js","require":"./dist/authorization/rbac/index.cjs"},"./authorization/types":{"types":"./dist/authorization/types.d.ts","import":"./dist/authorization/types.js","require":"./dist/authorization/types.cjs"},"./security/encryption":{"types":"./dist/security/encryption/index.d.ts","import":"./dist/security/encryption/index.js","require":"./dist/security/encryption/index.cjs"},"./security/rate-limit":{"types":"./dist/security/rate-limit/index.d.ts","import":"./dist/security/rate-limit/index.js","require":"./dist/security/rate-limit/index.cjs"}},"scripts":{"dev":"tsup --watch","lint":"eslint src/","test":"vitest","build":"tsup","clean":"rm -rf dist","lint:fix":"eslint src/ --fix","test:run":"vitest run","typecheck":"tsc --noEmit","test:coverage":"vitest run --coverage"},"_npmUser":{"name":"amtarc-main","email":"amtarcofficial@gmail.com"},"_resolved":"/tmp/1b44b7a5f43eec9fc55115e58d7461fd/amtarc-auth-utils-1.3.1.tgz","_integrity":"sha512-ar+4/GOYPNfHbBQ+LLoLaLVV0JTQ8iL02fV3qnrC5P6sEU/S0aTwqwXUX7wrsw9tBeI+ga1Wmx+jqdjipZPfvA==","_npmVersion":"10.8.2","description":"Enterprise-grade authentication and authorization utilities with session management, RBAC, guards, secure cookies, and comprehensive error handling","directories":{},"_nodeVersion":"20.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","vitest":"^1.3.1","typescript":"^5.3.3","@types/node":"^20.11.17","@vitest/coverage-v8":"^1.3.1"},"peerDependencies":{"typescript":">=5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/auth-utils_1.3.1_1771224901131_0.32291240864456405","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@amtarc/auth-utils","version":"1.4.0","description":"Enterprise-grade authentication and authorization utilities with RBAC, ABAC, resource-based access control, session management, guards, secure cookies, and comprehensive error handling","type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./session":{"types":"./dist/session/index.d.ts","import":"./dist/session/index.js","require":"./dist/session/index.cjs"},"./guards":{"types":"./dist/guards/index.d.ts","import":"./dist/guards/index.js","require":"./dist/guards/index.cjs"},"./cookies":{"types":"./dist/cookies/index.d.ts","import":"./dist/cookies/index.js","require":"./dist/cookies/index.cjs"},"./errors":{"types":"./dist/errors/index.d.ts","import":"./dist/errors/index.js","require":"./dist/errors/index.cjs"},"./security":{"types":"./dist/security/index.d.ts","import":"./dist/security/index.js","require":"./dist/security/index.cjs"},"./security/csrf":{"types":"./dist/security/csrf/index.d.ts","import":"./dist/security/csrf/index.js","require":"./dist/security/csrf/index.cjs"},"./security/rate-limit":{"types":"./dist/security/rate-limit/index.d.ts","import":"./dist/security/rate-limit/index.js","require":"./dist/security/rate-limit/index.cjs"},"./security/headers":{"types":"./dist/security/headers/index.d.ts","import":"./dist/security/headers/index.js","require":"./dist/security/headers/index.cjs"},"./security/encryption":{"types":"./dist/security/encryption/index.d.ts","import":"./dist/security/encryption/index.js","require":"./dist/security/encryption/index.cjs"},"./storage":{"types":"./dist/storage/index.d.ts","import":"./dist/storage/index.js","require":"./dist/storage/index.cjs"},"./authorization":{"types":"./dist/authorization/index.d.ts","import":"./dist/authorization/index.js","require":"./dist/authorization/index.cjs"},"./authorization/rbac":{"types":"./dist/authorization/rbac/index.d.ts","import":"./dist/authorization/rbac/index.js","require":"./dist/authorization/rbac/index.cjs"},"./authorization/abac":{"types":"./dist/authorization/abac/index.d.ts","import":"./dist/authorization/abac/index.js","require":"./dist/authorization/abac/index.cjs"},"./authorization/resource":{"types":"./dist/authorization/resource/index.d.ts","import":"./dist/authorization/resource/index.js","require":"./dist/authorization/resource/index.cjs"},"./authorization/guards":{"types":"./dist/authorization/guards/index.d.ts","import":"./dist/authorization/guards/index.js","require":"./dist/authorization/guards/index.cjs"},"./authorization/types":{"types":"./dist/authorization/types.d.ts","import":"./dist/authorization/types.js","require":"./dist/authorization/types.cjs"}},"keywords":["authentication","authorization","session","session-management","security","guards","cookies","csrf","rate-limiting","brute-force-protection","security-headers","csp","encryption","aes-256-gcm","key-derivation","fingerprinting","multi-device","typescript","framework-agnostic"],"author":{"name":"amtarc"},"license":"MIT","publishConfig":{"access":"public"},"devDependencies":{"@types/node":"^20.11.17","@vitest/coverage-v8":"^1.3.1","tsup":"^8.0.2","typescript":"^5.3.3","vitest":"^1.3.1"},"peerDependencies":{"typescript":">=5.0.0"},"scripts":{"build":"tsup","dev":"tsup --watch","lint":"eslint src/","lint:fix":"eslint src/ --fix","test":"vitest","test:run":"vitest run","test:coverage":"vitest run --coverage","typecheck":"tsc --noEmit","clean":"rm -rf dist"},"_id":"@amtarc/auth-utils@1.4.0","_integrity":"sha512-M4J6FMTd1g9u2bYFrRgGMl5sNdmP5limTpJbPcPy+BNSoS1FQMh/WYnqT7dn5GIGipaCWllKbyVIZNo5IncM9A==","_resolved":"/tmp/7b08e2d57105e7b3b93f0d67bb652398/amtarc-auth-utils-1.4.0.tgz","_from":"file:amtarc-auth-utils-1.4.0.tgz","_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-M4J6FMTd1g9u2bYFrRgGMl5sNdmP5limTpJbPcPy+BNSoS1FQMh/WYnqT7dn5GIGipaCWllKbyVIZNo5IncM9A==","shasum":"f5b110629f1953c60a07b39464f4c456438f26f3","tarball":"https://registry.npmjs.org/@amtarc/auth-utils/-/auth-utils-1.4.0.tgz","fileCount":205,"unpackedSize":1455816,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICHNOHjt4vryO6PVffy8blScSURI/vMuUTovJH3kguURAiEA1C+rdGMeH554tsmP+qZlYtGUpWY+b14sQXlF/QhhC3s="}]},"_npmUser":{"name":"amtarc-main","email":"amtarcofficial@gmail.com"},"directories":{},"maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/auth-utils_1.4.0_1771236894364_0.2025767872916262"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-11T11:43:09.086Z","modified":"2026-02-16T10:14:54.701Z","1.0.1":"2026-02-11T11:43:09.296Z","1.1.0":"2026-02-11T18:40:08.693Z","1.2.0":"2026-02-13T18:14:58.249Z","1.2.1":"2026-02-13T19:19:42.099Z","1.3.0":"2026-02-15T19:05:48.001Z","1.3.1":"2026-02-16T06:55:01.348Z","1.4.0":"2026-02-16T10:14:54.569Z"},"author":{"name":"amtarc"},"license":"MIT","keywords":["authentication","authorization","session","session-management","security","guards","cookies","csrf","rate-limiting","brute-force-protection","security-headers","csp","encryption","aes-256-gcm","key-derivation","fingerprinting","multi-device","typescript","framework-agnostic"],"description":"Enterprise-grade authentication and authorization utilities with RBAC, ABAC, resource-based access control, session management, guards, secure cookies, and comprehensive error handling","maintainers":[{"name":"amtarc-main","email":"amtarcofficial@gmail.com"}],"readme":"# @amtarc/auth-utils\n\n> Enterprise-grade authentication and security utilities with session management, guards, CSRF protection, rate limiting, encryption, security headers, and RBAC authorization\n\n[![npm version](https://img.shields.io/npm/v/@amtarc/auth-utils.svg)](https://www.npmjs.com/package/@amtarc/auth-utils)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n## Installation\n\n```bash\nnpm install @amtarc/auth-utils\n# or\npnpm add @amtarc/auth-utils\n# or\nyarn add @amtarc/auth-utils\n```\n\n## Features\n\n### Session Management\n- Session creation, validation, and refresh\n- Multi-device session support (`listUserSessions`, `revokeDeviceSession`, `findSessionByDevice`)\n- Session fingerprinting for device tracking\n- Concurrent session limits with automatic enforcement\n- Session invalidation (single device, all devices, all except current)\n- Storage adapter pattern (Memory, custom adapters)\n- Session ID rotation for security\n\n### Guards & Route Protection\n- Authentication guards (`requireAuth`, `requireGuest`)\n- Composable guard system (`requireAny`, `requireAll`)\n- Redirect management (`saveAuthRedirect`, `restoreAuthRedirect`, `peekAuthRedirect`, `clearAuthRedirect`, `isValidRedirect`)\n- Open redirect prevention with domain validation\n- Framework-agnostic design\n\n### Cookie Management\n- Secure cookie creation and parsing (RFC 6265)\n- HMAC cookie signing (SHA-256)\n- AES-256-GCM cookie encryption\n- Cookie rotation and deletion\n- Secure defaults (HttpOnly, Secure, SameSite)\n\n### Security\n- CSRF protection (double-submit & synchronizer patterns)\n- Rate limiting (4 algorithms: token bucket, fixed window, sliding window)\n- Brute-force protection with progressive delays\n- Security headers (CSP, HSTS, X-Frame-Options, etc.)\n- AES-256-GCM encryption with key derivation\n- Secure random generation (tokens, UUIDs, etc.)\n\n### Authorization\n- **RBAC (Role-Based Access Control)** with permission inheritance\n  - Scoped role assignments (tenant, organization, project)\n  - Role hierarchy validation with circular dependency detection (up to 10 levels)\n  - Permission and role management with auto-ID generation\n  - Expiring role assignments with automatic cleanup\n- **ABAC (Attribute-Based Access Control)** with policy engine\n  - Policy evaluation with user attributes and context\n  - Time-based policies and custom conditions\n  - Policy combining algorithms (permit-overrides, deny-overrides)\n- **Resource-based Access Control**\n  - Grant/revoke access to specific resources\n  - Resource ownership and access level management\n  - Resource metadata and hierarchical permissions\n- Authorization guards (`requirePermission`, `requireRole`, `requirePolicy`)\n- Memory storage adapter (custom adapters supported)\n\n### Error Handling\n- 25+ specialized error classes\n- HTTP status code mapping\n- Type guards for error classification\n- JSON serialization for API responses\n- Operational vs programmer error distinction\n\n### Developer Experience\n- Full TypeScript support with generics\n- Tree-shakeable modular exports\n- Zero runtime dependencies\n- Framework-agnostic\n- Comprehensive JSDoc documentation\n\n## Quick Start\n\n```typescript\nimport { createSession } from '@amtarc/auth-utils';\nimport { createAuthCookie, signCookie } from '@amtarc/auth-utils/cookies';\nimport { requireAuth } from '@amtarc/auth-utils/guards';\nimport { UnauthenticatedError } from '@amtarc/auth-utils/errors';\n\n// Create a session\nconst session = createSession('user-123', {\n  expiresIn: 1000 * 60 * 60 * 24, // 24 hours\n  idleTimeout: 1000 * 60 * 30, // 30 minutes\n});\n\n// Create signed session cookie\nconst signedValue = signCookie(session.sessionId, 'your-secret-key');\nconst sessionCookie = createAuthCookie('session', signedValue, {\n  httpOnly: true,\n  secure: true,\n  sameSite: 'strict',\n});\n\n// Protect routes with guards\nconst guard = requireAuth();\nconst result = guard({\n  session,\n  request: { url: '/dashboard' },\n  response: {},\n});\n\nif (!result.authorized) {\n  throw new UnauthenticatedError('Please log in');\n}\n```\n\n## Modular Imports\n\nThe package provides tree-shakeable exports:\n\n```typescript\n// Main entry (all features)\nimport { createSession } from '@amtarc/auth-utils';\nimport { requireAuth } from '@amtarc/auth-utils/guards';\nimport { createAuthCookie } from '@amtarc/auth-utils/cookies';\n\n// Session management only\nimport { \n  createSession,\n  validateSession,\n  refreshSession,\n  invalidateSession\n} from '@amtarc/auth-utils/session';\n\n// Guards only\nimport { requireAuth, requireGuest, requireAny } from '@amtarc/auth-utils/guards';\n\n// Cookies only\nimport { createAuthCookie, signCookie, encryptCookie } from '@amtarc/auth-utils/cookies';\n\n// Errors only\nimport { UnauthenticatedError, SessionExpiredError } from '@amtarc/auth-utils/errors';\n\n// Security\nimport { generateCSRFToken, createRateLimiter } from '@amtarc/auth-utils/security';\nimport { CSPBuilder, createSecurityHeaders } from '@amtarc/auth-utils/security/headers';\nimport { encrypt, deriveKey } from '@amtarc/auth-utils/security/encryption';\n\n// Authorization\nimport { PermissionManager, RoleManager, RBACGuards } from '@amtarc/auth-utils/authorization';\nimport { MemoryRBACStorage } from '@amtarc/auth-utils/authorization/rbac';\n```\n\n## API Documentation\n\nFor complete API reference with all methods, parameters, and examples, see our [full documentation](https://amtarc-auth-utils.dev).\n\n### Quick Reference\n\n**Session Management:**\n- `createSession()` - Create sessions with secure IDs\n- `validateSession()` - Validate expiration and idle timeout\n- `refreshSession()` - Update timestamps and rotate IDs\n- `invalidateSession()` - End sessions\n- `MemoryStorageAdapter` - In-memory session storage\n- `listUserSessions()` / `revokeDeviceSession()` - Multi-device management\n- `enforceConcurrentSessionLimit()` - Limit concurrent sessions\n- `countUserSessions()` / `findSessionByDevice()` - Session queries\n- `invalidateUserSessions()` - Bulk session invalidation\n- `generateSessionFingerprint()` - Device tracking\n\n**Guards & Protection:**\n- `requireAuth()` - Require authenticated users\n- `requireGuest()` - Require unauthenticated users\n- `requireAny()` / `requireAll()` - Composable guards\n- `saveAuthRedirect()` / `restoreAuthRedirect()` / `peekAuthRedirect()` - Redirect management\n- `clearAuthRedirect()` / `isValidRedirect()` - Redirect utilities\n\n**Cookie Management:**\n- `createAuthCookie()` / `parseAuthCookies()` - Cookie strings\n- `signCookie()` / `verifyCookie()` - HMAC signing\n- `encryptCookie()` / `decryptCookie()` - AES-256-GCM encryption\n- `deleteCookie()` / `rotateCookie()` - Cookie lifecycle\n\n**Security:**\n- `generateCSRFToken()` / `validateCSRFToken()` - CSRF protection\n- `generateDoubleSubmitToken()` - Stateless CSRF\n- `generateSynchronizerToken()` - Server-side CSRF\n- `createRateLimiter()` - Rate limiting (4 algorithms)\n- `BruteForceProtection` - Login protection\n- `CSPBuilder` - Content Security Policy builder\n- `createSecurityHeaders()` - Security headers collection\n- `encrypt()` / `decrypt()` - AES-256-GCM encryption\n- `deriveKey()` - PBKDF2/Scrypt key derivation\n- `generateSecureToken()` - Cryptographic tokens\n\n**Authorization:**\n- `PermissionManager` - Define and manage permissions\n- `RoleManager` - Create roles, grant permissions, assign to users\n- `RoleHierarchy` - Validate role hierarchies with circular detection\n- `PolicyEngine` - ABAC policy evaluation with attributes and conditions\n- `ResourceManager` - Grant/revoke access to resources with ownership\n- `RBACGuards` - Authorization guards (requireRole, requirePermission, requirePolicy)\n- `MemoryRBACStorage` - In-memory storage with expiration\n- Role inheritance (up to 10 levels)\n- Scoped assignments (tenant, organization, project)\n- Time-based policies and resource ownership\n\n**Error Handling:**\n- `AuthUtilsError` - Base error with HTTP status codes\n- `UnauthenticatedError`, `UnauthorizedError` - Auth errors (401/403)\n- `SessionExpiredError`, `SessionNotFoundError` - Session errors\n- `CSRFError`, `RateLimitError` - Security errors (403/429)\n- `InsufficientPermissionsError` - Authorization errors (403)\n- `isAuthUtilsError()`, `getErrorStatusCode()` - Type guards\n- `serializeError()` - Safe JSON serialization\n\n## TypeScript Support\n\nFull TypeScript support with generics:\n\n```typescript\ninterface UserData {\n  role: 'admin' | 'user';\n  permissions: string[];\n}\n\nconst session = createSession<UserData>('user-123', {\n  data: {\n    role: 'admin',\n    permissions: ['read', 'write'],\n  },\n});\n\n// session.data is typed as UserData\nsession.data.role; // 'admin' | 'user'\n```\n\n## Framework Integration\n\nFramework-agnostic with adapter examples for Express, Next.js, Fastify, and more. See [documentation](https://amtarc-auth-utils.dev/guide/frameworks) for details.\n\n## Bundle Size\n\n- **Main (Full)**: ~12 KB (gzipped)\n\nTotal: ~12 KB (tree-shakeable - use only what you need)\n\n## Testing\n\n661 tests with >95% coverage:\n\n```bash\npnpm test          # Run tests in watch mode\npnpm test:run      # Run tests once\npnpm test:coverage # Generate coverage report\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}