{
  "env": {
    "browser": true,
    "es2020": true,
    "node": true
  },
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaFeatures": {
      "jsx": true
    },
    "ecmaVersion": 11,
    "sourceType": "module"
  },
  "extends": [
    "eslint:recommended",
    "plugin:prettier/recommended",
    "plugin:import/recommended",
    "plugin:@typescript-eslint/recommended",
    "next"
  ],
  "plugins": ["@typescript-eslint", "prettier"],
  "settings": {
    "import/resolver": {
      "alias": {
        "map": [
          ["assets", "./src/assets"],
          ["components", "./src/components"],
          ["db", "./db"],
          ["hooks", "./src/components/hooks"],
          ["lang", "./src/lang"],
          ["lib", "./src/lib"],
          ["public", "./public"],
          ["queries", "./src/queries"],
          ["store", "./src/store"],
          ["styles", "./src/styles"]
        ],
        "extensions": [".ts", ".tsx", ".js", ".jsx", ".json"]
      }
    }
  },
  "rules": {
    "no-console": "error",
    "react/display-name": "off",
    "react/react-in-jsx-scope": "off",
    "react/prop-types": "off",
    "import/no-anonymous-default-export": "off",
    "import/no-named-as-default": "off",
    "@next/next/no-img-element": "off",
    "@typescript-eslint/no-empty-function": "off",
    "@typescript-eslint/no-explicit-any": "off",
    "@typescript-eslint/no-var-requires": "off",
    "@typescript-eslint/no-empty-interface": "off",
    "@typescript-eslint/no-unused-vars": ["error", { "ignoreRestSiblings": true }]
  },
  "globals": {
    "React": "writable"
  }
}
