{
  "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json",
  "extends": ["ultracite"],
  "javascript": {
    "globals": ["Liveblocks"]
  },
  "linter": {
    "rules": {
      "nursery": {
        "noEnum": "off"
      },
      "style": {
        "noParameterProperties": "off",
        "noNonNullAssertion": "off"
      },
      "security": {
        "noDangerouslySetInnerHtml": "off"
      },
      "suspicious": {
        "noEmptyBlockStatements": "off",
        "noExplicitAny": "off",
        "noConsole": "off",
        "noConsoleLog": "off"
      },
      "a11y": {
        "noSvgWithoutTitle": "off"
      },
      "complexity": {
        "noBannedTypes": "off"
      },
      "correctness": {
        "noUnusedImports": {
          "fix": "none",
          "level": "warn"
        }
      }
    }
  },
  "overrides": [
    {
      "include": ["apps/webui/src/infra/graphql/gql/**/*"],
      "linter": {
        "rules": {
          "style": {
            "useShorthandArrayType": "off",
            "useConsistentArrayType": "off",
            "useImportType": "off"
          }
        }
      }
    },
    {
      "include": ["apps/webui/src/components/ui/**/*"],
      "javascript": {
        "formatter": {
          "quoteStyle": "double"
        }
      },
      "linter": {
        "rules": {
          "style": {
            "useBlockStatements": "off",
            "useImportType": "off"
          },
          "nursery": {
            "noNestedTernary": "off",
            "useSortedClasses": "off"
          },
          "a11y": {
            "noRedundantRoles": "off",
            "useFocusableInteractive": "off",
            "useSemanticElements": "off"
          },
          "complexity": {
            "noExcessiveCognitiveComplexity": "off"
          }
        }
      }
    }
  ],
  "files": {
    "ignore": [".vscode/*.json"]
  }
}
