{
  "$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
  "assist": {
    "actions": {
      "source": {
        "organizeImports": {
          "level": "on",
          "options": {
            "groups": [
              ":ALIAS:",
              ":BUN:",
              ":NODE:",
              ":PACKAGE:",
              ":PACKAGE_WITH_PROTOCOL:",
              ":PATH:",
              ":URL:"
            ]
          }
        },
        "useSortedAttributes": "on",
        "useSortedKeys": "off",
        "useSortedProperties": "on"
      }
    }
  },
  "css": {},
  "files": {
    "includes": ["src/**/*.ts", "biome.json", "package.json", "tsconfig.json"]
  },
  "formatter": {
    "attributePosition": "multiline",
    "bracketSameLine": true,
    "indentStyle": "space"
  },
  "html": {},
  "javascript": {
    "globals": ["Bun"]
  },
  "json": {
    "parser": {
      "allowComments": true
    }
  },
  "linter": {
    "rules": {
      "complexity": {
        "noForEach": "error",
        "noUselessStringConcat": "error",
        "noVoid": "error",
        "recommended": true,
        "useDateNow": "error",
        "useSimplifiedLogicExpression": "error",
        "useWhile": "error"
      },
      "correctness": {
        "noPrivateImports": "error",
        "noRenderReturnValue": "error",
        "noUndeclaredDependencies": "error",
        "noUndeclaredVariables": "error",
        "recommended": true,
        "useHookAtTopLevel": "error",
        "useImportExtensions": "error",
        "useJsxKeyInIterable": "error"
      },
      "nursery": {
        "noBitwiseOperators": "error",
        "noConstantBinaryExpression": "error",
        "noDestructuredProps": "error",
        "noFloatingPromises": "error",
        "noGlobalDirnameFilename": "error",
        "noImportCycles": "error",
        "noNoninteractiveElementInteractions": "error",
        "noProcessGlobal": "error",
        "noShadow": "error",
        "noUnwantedPolyfillio": "error",
        "noUselessBackrefInRegex": "error",
        "noUselessEscapeInString": "error",
        "noUselessUndefined": "error",
        "useConsistentObjectDefinition": "error",
        "useExhaustiveSwitchCases": "error",
        "useForComponent": "error",
        "useGoogleFontPreconnect": "error",
        "useIterableCallbackReturn": "error",
        "useNumericSeparators": "error",
        "useParseIntRadix": "error",
        "useSingleJsDocAsterisk": "error",
        "useSortedClasses": "error",
        "useSymbolDescription": "error"
      },
      "performance": {
        "noBarrelFile": "error",
        "noDelete": "error",
        "noImgElement": "error",
        "noReExportAll": "error",
        "recommended": true,
        "useTopLevelRegex": "error"
      },
      "recommended": true,
      "security": {
        "recommended": true
      },
      "style": {
        "noCommonJs": "error",
        "noDefaultExport": "error",
        "noDoneCallback": "error",
        "noExportedImports": "error",
        "noHeadElement": "error",
        "noImplicitBoolean": "error",
        "noInferrableTypes": "error",
        "noNamespace": "error",
        "noNamespaceImport": "error",
        "noNegationElse": "error",
        "noNestedTernary": "error",
        "noNonNullAssertion": "error",
        "noParameterAssign": "error",
        "noParameterProperties": "error",
        "noProcessEnv": "info",
        "noRestrictedGlobals": "error",
        "noShoutyConstants": "error",
        "noSubstr": "error",
        "noUnusedTemplateLiteral": "error",
        "noUselessElse": "error",
        "noYodaExpression": "error",
        "recommended": true,
        "useAsConstAssertion": "error",
        "useAtIndex": "error",
        "useBlockStatements": "error",
        "useCollapsedElseIf": "error",
        "useCollapsedIf": "error",
        "useComponentExportOnlyModules": "error",
        "useConsistentArrayType": "error",
        "useConsistentBuiltinInstantiation": "error",
        "useConsistentCurlyBraces": "error",
        "useConst": "error",
        "useDefaultParameterLast": "error",
        "useDefaultSwitchClause": "error",
        "useEnumInitializers": "error",
        "useExplicitLengthCheck": "error",
        "useForOf": "error",
        "useFragmentSyntax": "error",
        "useImportType": {
          "level": "error",
          "options": {
            "style": "separatedType"
          }
        },
        "useNodeAssertStrict": "error",
        "useNumberNamespace": "error",
        "useSelfClosingElements": "error",
        "useShorthandAssign": "error",
        "useSingleVarDeclarator": "error",
        "useThrowNewError": "error",
        "useThrowOnlyError": "error",
        "useTrimStartEnd": "error"
      },
      "suspicious": {
        "noConsole": "info",
        "noDocumentImportInPage": "error",
        "noDuplicateTestHooks": "error",
        "noEmptyBlockStatements": "error",
        "noEvolvingTypes": "error",
        "noExportsInTest": "error",
        "noFocusedTests": "error",
        "noHeadImportInDocument": "error",
        "noMisplacedAssertion": "error",
        "noSkippedTests": "warn",
        "noVar": "error",
        "useAwait": "error",
        "useErrorMessage": "error",
        "useGuardForIn": "error",
        "useNumberToFixedDigitsArgument": "error",
        "useStrictMode": "error"
      }
    }
  }
}
