{
   "parser": "@typescript-eslint/parser",
   "parserOptions": {
      "project": "tsconfig.json",
      "tsconfigRootDir": ".",
      "sourceType": "module"
   },
   "plugins": [
      "@typescript-eslint/eslint-plugin"
   ],
   "extends": [
      "plugin:@typescript-eslint/recommended",
      "prettier"
   ],
   "root": true,
   "env": {
      "node": true,
      "jest": true
   },
   "ignorePatterns": [
      ".eslintrc.js",
      "schema/entities/**/*"
   ],
   "rules": {
      "@typescript-eslint/no-non-null-assertion": "off",
      "@typescript-eslint/interface-name-prefix": "off",
      "@typescript-eslint/explicit-function-return-type": "off",
      "@typescript-eslint/explicit-module-boundary-types": "off",
      "@typescript-eslint/no-explicit-any": "off",
      "no-extra-boolean-cast": "off",
      "no-var": "error",
      "brace-style": "error",
      "prefer-template": "error",
      "radix": "error",
      "space-before-blocks": "error",
      "import/prefer-default-export": "off",
      "no-unused-vars": "off",
      "@typescript-eslint/no-unused-vars": [
         "error",
         {
            "argsIgnorePattern": "^_",
            "varsIgnorePattern": "^_",
            "caughtErrorsIgnorePattern": "^_"
         }
      ]
   }
}