{ "compilerOptions": { "target": "ES2020", "useDefineForClassFields": true, "lib": ["ES2020", "DOM", "DOM.Iterable"], "module": "ESNext", "skipLibCheck": true, "moduleResolution": "bundler", "allowImportingTsExtensions": true, "resolveJsonModule": true, "isolatedModules": true, "noEmit": true, "jsx": "react-jsx", "strict": true, "noUnusedLocals": true, "noUnusedParameters": true }, "include": ["src"], // Editors resolve a file to the nearest tsconfig that INCLUDES it; vite.config.ts / vitest.config.ts // are in neither this project's `include` nor e2e's, so without this reference the language service // falls back to an inferred project (non-strict, DOM lib) and shows you different errors than // `npm run typecheck` does. The reference makes the editor and the gate agree. "references": [{ "path": "./tsconfig.node.json" }] }