{
  "comment": "Backend Template TypeScript Configuration - Created by Nguyen Thi Nguyet Que",
  "compilerOptions": {
    "module": "NodeNext",
    "target": "ES2022",
    "lib": ["ES2022"],
    "moduleResolution": "NodeNext",
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "resolveJsonModule": true,
    "skipLibCheck": true,
    "strict": true,
    "noImplicitReturns": true,
    "noFallthroughCasesInSwitch": true,
    "noUncheckedIndexedAccess": true,
    "exactOptionalPropertyTypes": true,
    "noImplicitOverride": true,
    "noPropertyAccessFromIndexSignature": false,
    "types": ["node", "jest"],
    "sourceMap": true,
    "removeComments": false,
    "outDir": "./dist",
    "rootDir": "./src",
    "baseUrl": "./src",
    "declaration": false,
    "incremental": true,
    "tsBuildInfoFile": "dist/.tsbuildinfo",
    "paths": {
      "#audit/*": ["audit/*"],
      "#audit": ["audit"],
      "#config": ["config"],
      "#config/*": ["config/*"],
      "#controllers/*": ["controllers/*"],
      "#dto/*": ["dto/*"],
      "#database/*": ["database/*"],
      "#database": ["database"],
      "#database/mongo": ["database/mongo"],
      "#providers/*": ["providers/*"],
      "#services/*": ["services/*"],
      "#middlewares/*": ["middlewares/*"],
      "#models/*": ["models/*"],
      "#templates/*": ["templates/*"],
      "#constants/*": ["constants/*"],
      "#interfaces/*": ["interfaces/*"],
      "#strategies/*": ["strategies/*"],
      "#presenters/*": ["presenters/*"],
      "#utils/*": ["utils/*"],
      "#contracts/*": ["contracts/*"],
      "#/*": ["*"],
      "@tests/*": ["../tests/*"],
      "@factories/*": ["../tests/factories/*"],
      "@helpers/*": ["../tests/helpers/*"],
      "@mocks/*": ["../tests/mocks/*"],
      "@fixtures/*": ["../tests/fixtures/*"]
    }
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules", "dist", "storage"]
}
