text: module.exports = {
    env: {
      es2021: true,
      node: true,
      jest: true,
    },
    extends: [
      "eslint:recommended",
      "plugin:@typescript-eslint/eslint-recommended",
      "plugin:@typescript-eslint/recommended",
      "plugin:prettier/recommended",
      "plugin:import/recommended",
      "plugin:import/typescript",
    ],
    globals: {
      Atomics: "readonly",
      SharedArrayBuffer: "readonly",
    },
    parser: "@typescript-eslint/parser",
    parserOptions: {
      ecmaVersion: 12,
      sourceType: "module",
    },
    plugins: ["@typescript-eslint", "prettier", "import"],
    ignorePatterns: ["node_modules", "/*.js", "dist"],
    rules: {
      camelcase: "error",
      "prettier/prettier": "error",
      "no-console": "error",
      "import/no-unresolved": "error",
      "class-methods-use-this": "off",
      "import/prefer-default-export": "off",
      "no-useless-constructor": "off",
      "no-empty-function": "off",
      "lines-between-class-members": "off",
      "import/no-named-as-default-member": "off",
      "import/no-named-as-default": "off",
      "import/order": [
        "error",
        {
          "newlines-between": "always",
          groups: ["external", ["parent", "sibling", "index"]],
          pathGroups: [
            {
              pattern: "/^@/",
              group: "external",
            },
          ],
          alphabetize: { order: "asc", caseInsensitive: true },
        },
      ],
    },
    settings: {
      "import/parsers": {
        "@typescript-eslint/parser": [".ts", ".tsx"],
      },
      "import/resolver": {
        typescript: {
          alwaysTryTypes: true,
        },
      },
    },
  };
  