{ "compilerOptions": { "target": "ES2022", "lib": ["dom", "dom.iterable", "ES2022"], "allowJs": false, "skipLibCheck": true, "strict": true, "noUncheckedIndexedAccess": true, "noImplicitOverride": true, "noEmit": true, "esModuleInterop": true, "module": "esnext", "moduleResolution": "bundler", "resolveJsonModule": true, // next-intl generates src/messages/de.d.json.ts from the German catalog so // that a mistyped message key is a compile error rather than a string that // renders as its own key. TypeScript prefers that declaration when // resolving "@/messages/de.json", and reading a .d.json.ts needs this flag. // The file is types only (`declare const`) -- the runtime import still // reads the real JSON, so a stale declaration can never change behaviour. "allowArbitraryExtensions": true, "isolatedModules": true, "jsx": "react-jsx", "incremental": true, "verbatimModuleSyntax": true, "plugins": [ { "name": "next" } ], "paths": { "@/*": ["./src/*"], // Type-checked against the community implementation; both implement the // same `Edition` type, and cloud.ts is checked on its own as a source file. "@gw/edition": ["./src/server/edition/community.ts"], "@gw/home": ["./src/components/home/community-home.tsx"], "@gw/billing-adapters": ["./src/cloud/billing/adapters/unavailable.ts"], // The contract the private build checks its own adapters against. // Aliased rather than imported by path so that the specifier the // private build uses is the specifier this repository proves. "@gw/billing-conformance": ["./src/cloud/billing/conformance/index.ts"], "@gw/catalog": ["./src/cloud/catalog/unavailable.ts"] } }, "include": [ "next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".next/dev/types/**/*.ts" ], "exclude": ["node_modules", "help"] }