/** @type {import('ts-jest').JestConfigWithTsJest} */ module.exports = { preset: 'react-native', testMatch: ['**/stores/templateSocialStore.test.ts'], transformIgnorePatterns: [ 'node_modules/(?!(@react-native|react-native|@react-navigation|expo|expo-.*|@expo|@react-native-community|react-native-.*|@shopify|@better-auth|nativewind|react-native-css-interop|@gorhom)/)', ], transform: { '^.+\\.(js|jsx)$': 'babel-jest', '^.+\\.(ts|tsx)$': ['ts-jest', { tsconfig: { jsx: 'react', jsxFactory: 'React.createElement', esModuleInterop: true, allowSyntheticDefaultImports: true, skipLibCheck: true, noEmit: true, strict: false, noImplicitAny: false, strictNullChecks: false, strictFunctionTypes: false, strictBindCallApply: false, strictPropertyInitialization: false, noImplicitThis: false, alwaysStrict: false, module: 'esnext', moduleResolution: 'node', isolatedModules: true, }, }], }, moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], setupFilesAfterEnv: ['/jest.store.setup.js'], moduleNameMapper: { '^@/(.*)$': '/$1', }, collectCoverageFrom: [ 'stores/templateSocialStore.ts', ], }