{
  "extends": "./.conf/tsconfig.base.json",

  "compilerOptions": {
    "rootDir": "./",
    "baseUrl": ".",
    /* ===============================
       Internal aliases (DEV ONLY)
       =============================== */
    "paths": {
      // Base ARE Entities
      "@adaas/are-html/nodes/*": ["src/nodes/*"],
      "@adaas/are-html/attributes/*": ["src/attributes/*"],
      "@adaas/are-html/directives/*": ["src/directives/*"],
      "@adaas/are-html/instructions/*": ["src/instructions/*"],
      "@adaas/are-html/watchers/*": ["src/watchers/*"],
      "@adaas/are-html/signals/*": ["src/signals/*"],
      "@adaas/are-html/helpers/*": ["src/helpers/*"],
      // Custom Lib Exports
      "@adaas/are-html/style/*": ["src/lib/AreStyle/*"],
      "@adaas/are-html/directive/*": ["src/lib/AreDirective/*"],
      "@adaas/are-html/root/*": ["src/lib/AreRoot/*"],
      "@adaas/are-html/dynamic/*": ["src/lib/AreDynamic/*"],
      "@adaas/are-html/node": ["src/lib/AreHTMLNode/AreHTMLNode"],
      "@adaas/are-html/attribute": ["src/lib/AreHTMLAttribute/AreHTML.attribute"],
      // HTML Engine Basics
      "@adaas/are-html/compiler": ["src/engine/AreHTML.compiler"],
      "@adaas/are-html/constants": ["src/engine/AreHTML.constants"],
      "@adaas/are-html/context": ["src/engine/AreHTML.context"],
      "@adaas/are-html/engine": ["src/engine/AreHTML.engine"],
      "@adaas/are-html/interpreter": ["src/engine/AreHTML.interpreter.ts"],
      "@adaas/are-html/lifecycle": ["src/engine/AreHTML.lifecycle"],
      "@adaas/are-html/tokenizer": ["src/engine/AreHTML.tokenizer"],
      "@adaas/are-html/transformer": ["src/engine/AreHTML.transformer"],
      "@adaas/are-html/types": ["src/engine/AreHTML.types"],

    },

    /* ===============================
       Types
       =============================== */
    "types": [
      "node",
      "jest",
      "mocha",
    ],
    "typeRoots": ["node_modules/@types"]
  },

  "include": [
    "src/**/*",
    "tests/**/*",
    "examples/**/*.ts",
    "src/index.ts",
    "src/env/global.browser.d.ts"
  ],

  "exclude": [
    "node_modules",
    "dist",
  ]
}