{ "compilerOptions": { "target": "ES2022", "lib": ["ES2022", "DOM", "DOM.Iterable"], "module": "ESNext", "moduleResolution": "bundler", "types": ["node", "vite/client"], "strict": true, "noUncheckedIndexedAccess": true, "noImplicitOverride": true, "noFallthroughCasesInSwitch": true, "exactOptionalPropertyTypes": false, "jsx": "react-jsx", "resolveJsonModule": true, "isolatedModules": true, // The server runs its .ts directly under Node's type stripping, so its // imports carry .ts extensions. noEmit is on, so this only affects // resolution. "allowImportingTsExtensions": true, "verbatimModuleSyntax": true, "skipLibCheck": true, "esModuleInterop": true, "allowJs": true, "checkJs": false, "noEmit": true, // lib/ ships unchanged; its types live alongside in types/lib/. // Vite resolves the same specifiers to the real .js modules. "baseUrl": ".", "paths": { "@lib/*": ["./types/lib/*"], "@data/*": ["./data/*"], "@app/*": ["./app/src/*"], "@shared/*": ["./types/shared/*"] } }, "include": ["app/src", "test", "types", "app/vite.config.ts", "vitest.config.ts"], "exclude": ["node_modules", "dist", "export", "vendor", "android", "app/android"] }