/** @jest-config-loader esbuild-register */ import type { Config } from 'jest' const config: Config = { preset: 'ts-jest/presets/default-esm', testEnvironment: 'node', roots: ['/src', '/WAProto'], testMatch: ['/src/**/*.test.ts'], extensionsToTreatAsEsm: ['.ts'], moduleNameMapper: { '^(\\.{1,2}/.*)\\.js$': '$1', }, transform: { '^.+\\.tsx?$': [ 'ts-jest', { useESM: true, tsconfig: { module: 'esnext', allowJs: true, verbatimModuleSyntax: false, allowImportingTsExtensions: false, }, }, ], '^.+\\.js$': [ 'ts-jest', { useESM: true, tsconfig: { module: 'esnext', allowJs: true, verbatimModuleSyntax: false, }, }, ], }, transformIgnorePatterns: [ 'node_modules/(?!(protobufjs|long|@protobufjs|@types/long|whatsapp-rust-bridge)/)', ], } export default config