diff --git a/packages/errors/package.json b/packages/errors/package.json index e43252b31..1dc794498 100644 --- a/packages/errors/package.json +++ b/packages/errors/package.json @@ -35,7 +35,7 @@ "posttest": "pnpm run lint" }, "devDependencies": { - "@types/node": "24.19.2", + "@types/node": "26.6.6", "esbuild": "0.28.2", "typescript": "catalog:", "zod": "4.6.7" diff --git a/packages/prometheus-metrics/package.json b/packages/prometheus-metrics/package.json index f861b7e6f..d56c665be 100644 --- a/packages/prometheus-metrics/package.json +++ b/packages/prometheus-metrics/package.json @@ -50,7 +50,7 @@ }, "devDependencies": { "@types/express": "5.0.6", - "@types/node": "24.19.2", + "@types/node": "26.6.6", "@types/sinon": "22.0.2", "@types/stoppable": "1.1.3", "express": "5.3.0", diff --git a/packages/security/lib/tokens.ts b/packages/security/lib/tokens.ts index e31290f9e..d434da10a 100644 --- a/packages/security/lib/tokens.ts +++ b/packages/security/lib/tokens.ts @@ -1,12 +1,13 @@ -import { createHash, type BinaryLike } from 'node:crypto'; +import { createHash, type Hash } from 'node:crypto'; -type ContentTokenOptions = { content: BinaryLike }; +type HashInput = Parameters[0]; +type ContentTokenOptions = { content: HashInput }; type EmailTokenOptions = { expires: number | string; email: string; secret: string }; type ResetTokenOptions = { expires: number | string; email: string; dbHash: string; - passwordHash: BinaryLike; + passwordHash: HashInput; }; type ExtractedToken = { expires: number; email: string }; type TokenComparison = { @@ -86,7 +87,7 @@ export const resetToken = { compare: function compare(options: { token: string; dbHash: string; - passwordHash: BinaryLike; + passwordHash: HashInput; }): TokenComparison { const tokenToCompare = options?.token; const parts = resetToken.extract({ token: tokenToCompare }); diff --git a/packages/security/package.json b/packages/security/package.json index f677bccb0..9d1622ad1 100644 --- a/packages/security/package.json +++ b/packages/security/package.json @@ -35,7 +35,7 @@ "bcryptjs": "^3.0.3" }, "devDependencies": { - "@types/node": "24.19.2", + "@types/node": "26.6.6", "typescript": "catalog:" } } diff --git a/packages/security/test/types.ts b/packages/security/test/types.ts index 200b7bd5e..4743c480a 100644 --- a/packages/security/test/types.ts +++ b/packages/security/test/types.ts @@ -1,4 +1,3 @@ -import type { BinaryLike } from 'node:crypto'; import security = require('../'); import * as namespace from '../'; import { expectTypeOf } from 'vitest'; @@ -15,6 +14,12 @@ expectTypeOf(security.string.safe(null)).toEqualTypeOf(); expectTypeOf( security.tokens.generateFromContent({ content: Buffer.from('content') }), ).toEqualTypeOf(); +expectTypeOf(security.tokens.generateFromContent).parameter(0).toEqualTypeOf<{ + content: string | NodeJS.ArrayBufferView; +}>(); +expectTypeOf().not.toExtend< + Parameters[0]['content'] +>(); expectTypeOf( security.tokens.generateFromEmail({ email: 'test@example.com', @@ -43,12 +48,12 @@ expectTypeOf(security.tokens.resetToken.generateHash).parameter(0).toEqualTypeOf expires: number | string; email: string; dbHash: string; - passwordHash: BinaryLike; + passwordHash: string | NodeJS.ArrayBufferView; }>(); expectTypeOf(security.tokens.resetToken.compare).parameter(0).toEqualTypeOf<{ token: string; dbHash: string; - passwordHash: BinaryLike; + passwordHash: string | NodeJS.ArrayBufferView; }>(); expectTypeOf( security.tokens.resetToken.generateHash({ diff --git a/packages/tpl/package.json b/packages/tpl/package.json index 7542a949f..94c8da719 100644 --- a/packages/tpl/package.json +++ b/packages/tpl/package.json @@ -31,7 +31,7 @@ }, "dependencies": {}, "devDependencies": { - "@types/node": "24.19.2", + "@types/node": "26.6.6", "typescript": "catalog:" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d07112534..b89d7be37 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -429,8 +429,8 @@ importers: packages/errors: devDependencies: '@types/node': - specifier: 24.19.2 - version: 24.19.2 + specifier: 26.6.6 + version: 26.6.6 esbuild: specifier: 0.28.2 version: 0.28.2 @@ -693,8 +693,8 @@ importers: specifier: 5.0.6 version: 5.0.6 '@types/node': - specifier: 24.19.2 - version: 24.19.2 + specifier: 26.6.6 + version: 26.6.6 '@types/sinon': specifier: 22.0.2 version: 22.0.2 @@ -773,8 +773,8 @@ importers: version: 3.0.3 devDependencies: '@types/node': - specifier: 24.19.2 - version: 24.19.2 + specifier: 26.6.6 + version: 26.6.6 typescript: specifier: 'catalog:' version: 7.0.2 @@ -795,8 +795,8 @@ importers: packages/tpl: devDependencies: '@types/node': - specifier: 24.19.2 - version: 24.19.2 + specifier: 26.6.6 + version: 26.6.6 typescript: specifier: 'catalog:' version: 7.0.2