{
  "compilerOptions": {
    "target": "es2020",
    "module": "esnext",
    "moduleResolution": "node",
    "jsx": "preserve",

    // 🧠 Strict Mode – aktiviert alle strengen Prüfungen
    "strict": true,
    "noImplicitAny": true,
    "strictNullChecks": true,
    "strictFunctionTypes": true,
    "strictBindCallApply": true,
    "alwaysStrict": true,

    // 🧼 Weitere gute Optionen
    "forceConsistentCasingInFileNames": true,
    "noFallthroughCasesInSwitch": true,

    // 🔧 Build-Verhalten
    "noEmit": true,
    "incremental": true,
    "isolatedModules": true,
    "skipLibCheck": true,

    // 📦 Module/Import
    "esModuleInterop": true,
    "resolveJsonModule": true,
    "allowSyntheticDefaultImports": true,
    "allowJs": true,

    // 🌐 IDE-Typen
    "types": ["node"],

    // 📚 Unterstützte Bibliotheken
    "lib": ["dom", "dom.iterable", "es2020"],

    // ✨ Pfade/Aliase
    "baseUrl": ".",
    "paths": {
      "@/*": ["./*"],
      "@/redux/*": ["./redux/*"],
      "@/utils/*": ["./utils/*"],
      "@/components/*": ["./components/*"],
      "@/services/*": ["./services/*"],
      "@/types/*": ["./types/*"]
    }
  },

  "include": [
    ".", // Projekt-Root
    "**/*.ts",
    "**/*.tsx",
    "types/global.d.ts"
  ],

  "exclude": ["node_modules", ".next", "out"]
}
