{
  "overrides": [
    {
      "extends": [
        "plugin:@typescript-eslint/recommended-requiring-type-checking"
      ],
      "files": [
        "*.ts",
        "*.tsx"
      ],
      "parserOptions": {
        "project": "tsconfig.json"
      }
    }
  ],
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "project": "./tsconfig.json"
  },
  "plugins": [
    "@typescript-eslint", "import"
  ],
  "extends": [
    "next/core-web-vitals",
    "plugin:@typescript-eslint/recommended"
  ],
  "rules": {
    "@typescript-eslint/consistent-type-imports": "warn",
    "@typescript-eslint/no-unused-vars": "off",
    "@typescript-eslint/no-unsafe-return": "off",
    "@typescript-eslint/no-unsafe-member-access": "off",
    "@typescript-eslint/no-unsafe-call": "off",
    "@typescript-eslint/no-unsafe-assignment": "off",
    "@typescript-eslint/no-unsafe-argument": "off",
    "@typescript-eslint/ban-ts-comment": "off",
    "@typescript-eslint/no-restricted-imports": [
      "error",
      {
        "paths": [
          {
            "name": "react-i18next",
            "importNames": [
              "useTranslation"
            ],
            "message": "Import useTranslation from next-i18next instead."
          }
        ]
      }
    ],
    "import/no-unresolved": "error",
       // "import/no-named-as-default-member": "off",
       "import/order": [
         "error",
         {
           "groups": [
             "builtin", // Built-in imports (come from NodeJS native) go first
             "external", // <- External imports
             "internal", // <- Absolute imports
             ["sibling", "parent"], // <- Relative imports, the sibling and parent types they can be mingled together
             "index", // <- index imports
             "unknown" // <- unknown
           ],
           "newlines-between": "always",
           "alphabetize": {
             /* sort in ascending order. Options: ["ignore", "asc", "desc"] */
             "order": "asc",
             /* ignore case. Options: [true, false] */
             "caseInsensitive": true
           }
         }
       ]
  }
}
