import type { Config } from 'jest'; const config: Config = { preset: 'ts-jest/presets/default-esm', testEnvironment: 'node', extensionsToTreatAsEsm: ['.ts'], testMatch: ['**/tests/**/*.test.ts'], setupFilesAfterEnv: ['/tests/setup.ts'], moduleNameMapper: { '^@/(.*)$': '/src/$1', }, transform: { '^.+\\.ts$': [ 'ts-jest', { useESM: true, tsconfig: './tsconfig.json', }, ], }, collectCoverageFrom: ['src/**/*.ts'], coveragePathIgnorePatterns: ['node_modules', 'dist', '/@types/'], coverageReporters: ['text', 'lcov', 'json'], clearMocks: true, resetMocks: true, restoreMocks: true, }; export default config;