{
	"$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
	"vcs": {
		"enabled": true,
		"clientKind": "git",
		"useIgnoreFile": true
	},
	"files": {
		"ignoreUnknown": true,
		"includes": [
			"**",
			"!**/.turbo",
			"!**/.output",
			"!**/dist",
			"!**/.vercel",
			"!**/.wrangler",
			"!**/coverage",
			"!**/reports",
			"!**/routeTree.gen.ts"
		]
	},
	"plugins": ["./tooling/grit/workspace-boundaries.grit"],
	"formatter": {
		"enabled": true,
		"lineWidth": 120,
		"indentStyle": "tab"
	},
	"assist": {
		"actions": {
			"source": {
				"organizeImports": {
					"level": "on",
					"options": {
						"groups": [
							{ "type": true },
							["!:BUN:", ":NODE:"],
							["vitest", "vitest/**", "@testing-library", "@testing-library/**"],
							[":PACKAGE:", "!@reactive-resume/**"],
							"@reactive-resume/**",
							[":ALIAS:", ":PATH:"]
						]
					}
				}
			}
		}
	},
	"linter": {
		"enabled": true,
		"rules": {
			"preset": "recommended",
			"correctness": {
				"useExhaustiveDependencies": "info"
			},
			"suspicious": {
				"noArrayIndexKey": "off",
				"noExplicitAny": "error"
			},
			"nursery": {
				"useSortedClasses": {
					"level": "warn",
					"fix": "safe",
					"options": {
						"functions": ["clsx", "cva", "cn"]
					}
				}
			},
			"style": {
				"useImportType": {
					"level": "on",
					"options": {
						"style": "separatedType"
					}
				},
				"noRestrictedImports": {
					"level": "error",
					"options": {
						"patterns": [
							{
								"group": ["@reactive-resume/*/src/**"],
								"message": "Import through the package export map instead of another workspace's private src path."
							},
							{
								"group": ["apps/**", "packages/**"],
								"message": "Do not import another workspace by repository path; use an explicit package export."
							}
						]
					}
				},
				"noParameterAssign": "error",
				"useAsConstAssertion": "error",
				"useDefaultParameterLast": "error",
				"useEnumInitializers": "error",
				"useSelfClosingElements": "error",
				"useSingleVarDeclarator": "error",
				"noUnusedTemplateLiteral": "error",
				"useNumberNamespace": "error",
				"noInferrableTypes": "error",
				"noUselessElse": "error"
			}
		}
	},
	"javascript": {
		"formatter": {
			"quoteStyle": "double"
		}
	},
	"css": {
		"parser": {
			"tailwindDirectives": true
		}
	}
}
