{
  "$schema": "../node_modules/@biomejs/biome/configuration_schema.json",
  "assist": {
    "actions": {
      "recommended": true,
      "source": {
        "organizeImports": {
          "level": "on",
          "options": {
            "groups": [
              // TODO: Make sure to not enforce type for import/exports
              // { "type": false },
              [
                // Bun modules
                ":BUN:",
                // Node.js modules
                ":NODE:"
              ],
              ":BLANK_LINE:",
              [
                // Modules imported with the `npm:` protocol
                "npm:*",
                "npm:*/**",
                // Modules imported with another protocol. e.g. `jsr:`
                ":PACKAGE_WITH_PROTOCOL:"
              ],
              ":BLANK_LINE:",
              ["@chainsafe/**", "@lodestar/**"],
              ":BLANK_LINE:",
              [
                // URLs
                ":URL:",
                // Libraries
                ":PACKAGE:"
              ],
              ":BLANK_LINE:",
              // Sharp aliases
              [":ALIAS:"],
              ":BLANK_LINE:",
              // Absolute paths
              ["/**"],
              ":BLANK_LINE:",
              // All other paths
              ":PATH:"
            ]
          }
        }
      }
    }
  },
  "files": {
    "includes": ["!**/.nyc_output", "!**/node_modules", "!**/coverage/**/*"]
  },
  "formatter": {
    "attributePosition": "auto",
    "bracketSpacing": false,
    "enabled": true,
    "formatWithErrors": true,
    "indentStyle": "space",
    "indentWidth": 2,
    "lineEnding": "lf",
    "lineWidth": 120,
    "useEditorconfig": true
  },
  "javascript": {
    "formatter": {
      "arrowParentheses": "always",
      "attributePosition": "auto",
      "bracketSameLine": false,
      "bracketSpacing": false,
      "enabled": true,
      "jsxQuoteStyle": "double",
      "quoteProperties": "asNeeded",
      "quoteStyle": "double",
      "semicolons": "always",
      "trailingCommas": "es5"
    },
    "globals": ["BigInt"]
  },
  "json": {
    "formatter": {
      "bracketSpacing": true,
      "expand": "auto",
      "trailingCommas": "none"
    }
  },
  "linter": {
    "enabled": true,
    "rules": {
      "recommended": true
    }
  },
  "root": false,
  "vcs": {
    "clientKind": "git",
    "enabled": true,
    "useIgnoreFile": true
  }
}
