{
  "compilerOptions": {
    "baseUrl": ".",
    "declaration": true,
    "declarationMap": true,
    "emitDecoratorMetadata": true,
    "esModuleInterop": true,
    "exactOptionalPropertyTypes": true,
    "experimentalDecorators": true,
    "forceConsistentCasingInFileNames": true,
    "incremental": true,
    "module": "NodeNext",
    "moduleResolution": "NodeNext",
    "newLine": "lf",
    "noFallthroughCasesInSwitch": true,
    "noImplicitOverride": true,
    "noPropertyAccessFromIndexSignature": true,
    "noUncheckedIndexedAccess": true,
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "outDir": "dist",
    "paths": {
      "##/*": ["src/*"],
      "#a/*": ["src/app/*"],
      "#@/*": ["test/*"]
    },
    "preserveConstEnums": true,
    "pretty": true,
    "resolveJsonModule": true,
    "rootDir": "src",
    "skipLibCheck": true,
    "sourceMap": true,
    "strict": true,
    "strictPropertyInitialization": false,
    "stripInternal": true,
    "target": "ES2023",
    "tsBuildInfoFile": ".tsbuildinfo",
    "types" : ["mocha", "node"]
  },
  "include": [
    "src/**/*.ts"
  ],
  "exclude": [
    "asset",
    "app/public",
    "app/views",
    "dist",
    "fixtures",
    "node_modules*",
    "**/*.d.ts",
    "**/*.spec.ts"
  ],
  "ts-node": {
    "esm": true,
    "experimentalResolver": true,
    "experimentalSpecifierResolution": "node"
  }
}
