/** @type {import('jest').Config} */ export default { preset: 'ts-jest', testEnvironment: 'jsdom', roots: ['/src'], testMatch: [ '**/__tests__/**/*.+(ts|tsx|js)', '**/*.(test|spec).+(ts|tsx|js)' ], transform: { '^.+\\.(ts|tsx)$': 'ts-jest' }, collectCoverageFrom: [ 'src/**/*.{ts,tsx}', '!src/**/*.d.ts', '!src/**/*.test.{ts,tsx}', '!src/**/*.spec.{ts,tsx}', '!src/workers/**', '!src/**/__tests__/**' ], coverageDirectory: 'coverage', coverageReporters: ['text', 'lcov', 'html'], coverageThreshold: { global: { branches: 80, functions: 80, lines: 80, statements: 80 } }, setupFilesAfterEnv: ['/src/setupTests.ts'], moduleNameMapping: { '^@/(.*)$': '/src/$1', '^~/(.*)$': '/src/$1' }, testTimeout: 10000, verbose: true };