{
  "include": ["src", "src/core", "src/bin"],
  "exclude": ["dist", "node_modules"],
  "compilerOptions": {
    "module": "esnext",
    "lib": ["dom", "esnext"],
    "types": ["vite/client", "node"],
    "importHelpers": true,
    "declaration": true,
    "sourceMap": true,
    "rootDir": "./src",
    "strict": true,
    "noImplicitReturns": true,
    "noFallthroughCasesInSwitch": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "moduleResolution": "node",
    "esModuleInterop": true,
    "skipLibCheck": true,
    "allowJs": true,
    "resolveJsonModule": true,
    "forceConsistentCasingInFileNames": true,
    "typeRoots": ["node_modules/@types"],
    "baseUrl": "./src",
    "paths": {
      "@/*": ["/*"],
      "@core": ["core/index.ts"],
      "@core/*": ["core/*"],
      "@utils/*": ["utils/*"],
      "@templates/*": ["templates/*"],
      "@types/*": ["types/*"]
    }
  }
}
