{
  "compilerOptions": {
    "module": "NodeNext",
    "moduleResolution": "nodenext",
    "resolvePackageJsonExports": true,
    "esModuleInterop": true,
    "isolatedModules": true,
    "declaration": true,
    "removeComments": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "allowSyntheticDefaultImports": true,
    "target": "ES2021",
    "sourceMap": true,
    "outDir": "./dist",
    "baseUrl": "./",
    "incremental": true,
    "skipLibCheck": true,
    /* Strict Type-Checking Options */
    "strict": true, // บังคับใช้ Strict Mode
    "strictNullChecks": true, // ตรวจสอบค่า Null อย่างเคร่งครัด
    "forceConsistentCasingInFileNames": true,
    "noImplicitAny": true, // ห้ามใช้ Any โดยไม่จำเป็น
    "strictBindCallApply": true,
    "noFallthroughCasesInSwitch": true,
    "paths": {
      "@backend": ["./src"],
      "@backend/*": ["./src/*"],
      "@modules": ["./src/modules"],
      "@common": ["./src/common"],
      "@config": ["./src/common/config"],
      "@circulation": ["./src/modules/circulation"],
      "@correspondence": ["./src/modules/correspondence"],
      "@document-numbering": ["./src/modules/document-numbering"],
      "@drawing": ["./src/modules/drawing"],
      "@json-schema": ["./src/modules/json-schema"],
      "@master": ["./src/modules/master"],
      "@monitoring": ["./src/modules/monitoring"],
      "@notification": ["./src/modules/notification"],
      "@project": ["./src/modules/project"],
      "@rfa": ["./src/modules/rfa"],
      "@search": ["./src/modules/search"],
      "@transmittal": ["./src/modules/transmittal"],
      "@users": ["./src/modules/users"],
      "@workflow-engine": ["./src/modules/workflow-engine"]
    }
  }
}
