/** @type {import('jest').Config} */ module.exports = { preset: 'ts-jest', testEnvironment: 'node', roots: ['/src'], testMatch: ['**/__tests__/**/*.test.ts'], transform: { '^.+\\.ts$': ['ts-jest', { useESM: true, }], }, moduleFileExtensions: ['ts', 'js', 'json', 'node'], setupFilesAfterEnv: ['/src/db/__tests__/setup.ts'], extensionsToTreatAsEsm: ['.ts'], moduleNameMapper: { '^(\\.{1,2}/.*)\\.js$': '$1', }, collectCoverageFrom: [ 'src/**/*.{ts,js}', '!**/__tests__/**', '!**/node_modules/**', '!src/printer/serial-printer.ts', ], coverageThreshold: { global: { branches: 80, functions: 80, lines: 80, statements: 80, }, }, };