{
  "root": true,
  "$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
  "formatter": {
    "enabled": true,
    "indentStyle": "tab"
  },
  "css": {
    "parser": {
      "tailwindDirectives": true
    }
  },
  "assist": { "actions": { "source": { "organizeImports": "on" } } },
  "linter": {
    "enabled": true,
    "rules": {
      "style": {
        "noRestrictedImports": {
          "options": {
            "paths": {
              "zod": {
                "importNames": ["z"],
                "message": "Use `import * as z from \"zod\"` instead of `import { z }`."
              }
            }
          },
          "level": "error"
        },
        "useImportType": {
          "level": "error",
          "options": {
            "style": "separatedType"
          }
        },
        "useNodejsImportProtocol": "error",
        "useConst": "error",
        "noRestrictedTypes": "off",
        "noRestrictedGlobals": "off"
      },
      "recommended": false,
      "suspicious": {
        "noImplicitAnyLet": "warn",
        "noDuplicateObjectKeys": "warn",
        "noTsIgnore": "error",
        "noDebugger": "error"
      },
      "performance": {
        "noDelete": "error"
      },
      "complexity": {
        "useDateNow": "error",
        "noUselessSwitchCase": "warn",
        "noUselessTypeConstraint": "warn"
      },
      "correctness": {
        "noUnusedImports": "warn",
        "noUnusedVariables": "warn"
      },
      "nursery": {
        "noMisusedPromises": "error",
        "noFloatingPromises": "error"
      }
    }
  },
  "overrides": [
    {
      "includes": ["**/examples/svelte-kit-example/**"],
      "linter": {
        "rules": {
          "correctness": {
            "noUnusedImports": "off"
          }
        }
      }
    },
    {
      "includes": ["**/*.json"],
      "formatter": {
        "indentStyle": "space",
        "indentWidth": 2
      }
    },
    {
      "includes": ["packages/**/src/**"],
      "linter": {
        "rules": {
          "style": {
            "noRestrictedTypes": {
              "level": "error",
              "options": {
                "types": {
                  "Buffer": {
                    "message": "Buffer is deprecated. Use `Uint8Array` instead.",
                    "use": "Uint8Array"
                  }
                }
              }
            },
            "noRestrictedGlobals": {
              "level": "error",
              "options": {
                "deniedGlobals": {
                  "Buffer": "Buffer is deprecated. Use `Uint8Array` instead."
                }
              }
            }
          }
        }
      }
    },
    {
      "includes": [
        "**/*.test.*",
        "**/*.spec.*",
        "**/test/**",
        "**/__tests__/**",
        "packages/sso/**"
      ],
      "linter": {
        "rules": {
          "style": {
            "noRestrictedTypes": "off",
            "noRestrictedGlobals": "off"
          }
        }
      }
    }
  ],
  "files": {
    "includes": [
      "**",
      "!**/dist",
      "!**/coverage",
      "!**/build",
      "!**/demo/electron/out",
      "!**/.next",
      "!**/.svelte-kit",
      "!**/.contentlayer",
      "!**/.turbo",
      "!**/.nuxt",
      "!**/.source",
      "!**/.expo",
      "!**/.cache",
      "!**/dev/cloudflare/drizzle",
      "!**/playwright-report",
      "!**/.output",
      "!**/.tmp",
      "!**/tmp-docs-fetch",
      "!**/.claude/worktrees/**"
    ]
  }
}
