{
	"$schema": "https://biomejs.dev/schemas/2.1.1/schema.json",
	"vcs": { "enabled": false, "clientKind": "git", "useIgnoreFile": false },
	"files": { "ignoreUnknown": false },
	"formatter": { "enabled": true, "indentStyle": "tab" },
	"linter": {
		"enabled": true,
		"rules": { "recommended": false },
		"includes": ["**", "!dist", "!build", "!.cache"]
	},
	"javascript": { "formatter": { "quoteStyle": "double" } },
	"overrides": [
		{
			"includes": ["**/*.{ts,tsx}"],
			"linter": {
				"rules": {
					"complexity": {
						"noAdjacentSpacesInRegex": "error",
						"noExtraBooleanCast": "error",
						"noUselessCatch": "error",
						"noUselessEscapeInRegex": "error"
					},
					"correctness": {
						"noConstAssign": "error",
						"noConstantCondition": "error",
						"noEmptyCharacterClassInRegex": "error",
						"noEmptyPattern": "error",
						"noGlobalObjectCalls": "error",
						"noInvalidBuiltinInstantiation": "error",
						"noInvalidConstructorSuper": "error",
						"noNonoctalDecimalEscape": "error",
						"noPrecisionLoss": "error",
						"noSelfAssign": "error",
						"noSetterReturn": "error",
						"noSwitchDeclarations": "error",
						"noUndeclaredVariables": "error",
						"noUnreachable": "error",
						"noUnreachableSuper": "error",
						"noUnsafeFinally": "error",
						"noUnsafeOptionalChaining": "error",
						"noUnusedLabels": "error",
						"noUnusedPrivateClassMembers": "error",
						"noUnusedVariables": "error",
						"useIsNan": "error",
						"useValidForDirection": "error",
						"useValidTypeof": "error",
						"useYield": "error"
					},
					"suspicious": {
						"noAsyncPromiseExecutor": "error",
						"noCatchAssign": "error",
						"noClassAssign": "error",
						"noCompareNegZero": "error",
						"noControlCharactersInRegex": "error",
						"noDebugger": "error",
						"noDuplicateCase": "error",
						"noDuplicateClassMembers": "error",
						"noDuplicateElseIf": "error",
						"noDuplicateObjectKeys": "error",
						"noDuplicateParameters": "error",
						"noEmptyBlockStatements": "error",
						"noFallthroughSwitchClause": "error",
						"noFunctionAssign": "error",
						"noGlobalAssign": "error",
						"noImportAssign": "error",
						"noIrregularWhitespace": "error",
						"noMisleadingCharacterClass": "error",
						"noPrototypeBuiltins": "error",
						"noRedeclare": "error",
						"noShadowRestrictedNames": "error",
						"noSparseArray": "error",
						"noUnsafeNegation": "error",
						"noWith": "error",
						"useGetterReturn": "error"
					}
				}
			}
		},
		{ "includes": ["**/*.{ts,tsx}"], "javascript": { "globals": [] } },
		{
			"includes": ["**/*.{ts,tsx}"],
			"linter": {
				"rules": {
					"complexity": { "noArguments": "error" },
					"correctness": {
						"noConstAssign": "off",
						"noGlobalObjectCalls": "off",
						"noInvalidBuiltinInstantiation": "off",
						"noInvalidConstructorSuper": "off",
						"noSetterReturn": "off",
						"noUndeclaredVariables": "off",
						"noUnreachable": "off",
						"noUnreachableSuper": "off"
					},
					"style": { "useConst": "error" },
					"suspicious": {
						"noClassAssign": "off",
						"noDuplicateClassMembers": "off",
						"noDuplicateObjectKeys": "off",
						"noDuplicateParameters": "off",
						"noFunctionAssign": "off",
						"noImportAssign": "off",
						"noRedeclare": "off",
						"noUnsafeNegation": "off",
						"noVar": "error",
						"noWith": "off",
						"useGetterReturn": "off"
					}
				}
			}
		},
		{
			"includes": ["**/*.{ts,tsx}"],
			"linter": {
				"rules": {
					"complexity": { "noUselessTypeConstraint": "error" },
					"correctness": { "noUnusedVariables": "error" },
					"style": {
						"noCommonJs": "error",
						"noNamespace": "error",
						"useArrayLiterals": "error",
						"useAsConstAssertion": "error"
					},
					"suspicious": {
						"noExplicitAny": "error",
						"noExtraNonNullAssertion": "error",
						"noMisleadingInstantiator": "error",
						"noUnsafeDeclarationMerging": "error",
						"useNamespaceKeyword": "error"
					}
				}
			}
		},
		{
			"includes": ["**/*.{ts,tsx}"],
			"linter": {
				"rules": {
					"correctness": {
						"useExhaustiveDependencies": "warn",
						"useHookAtTopLevel": "error"
					}
				}
			}
		},
		{ "includes": ["**/*.{ts,tsx}"], "linter": { "rules": {} } },
		{
			"includes": ["**/*.{ts,tsx}"],
			"javascript": {
				"globals": [
					"onanimationend",
					"ongamepadconnected",
					"onlostpointercapture",
					"onanimationiteration",
					"onkeyup",
					"onmousedown",
					"onanimationstart",
					"onslotchange",
					"onprogress",
					"ontransitionstart",
					"onpause",
					"onended",
					"onpointerover",
					"onscrollend",
					"onformdata",
					"ontransitionrun",
					"onanimationcancel",
					"ondrag",
					"onchange",
					"onbeforeinstallprompt",
					"onbeforexrselect",
					"onmessage",
					"ontransitioncancel",
					"onpointerdown",
					"onabort",
					"onpointerout",
					"oncuechange",
					"ongotpointercapture",
					"onscrollsnapchanging",
					"onsearch",
					"onsubmit",
					"onstalled",
					"onsuspend",
					"onreset",
					"onerror",
					"onresize",
					"onmouseenter",
					"ongamepaddisconnected",
					"ondragover",
					"onbeforetoggle",
					"onmouseover",
					"onpagehide",
					"onmousemove",
					"onratechange",
					"oncommand",
					"onmessageerror",
					"onwheel",
					"ondevicemotion",
					"onauxclick",
					"ontransitionend",
					"onpaste",
					"onpageswap",
					"ononline",
					"ondeviceorientationabsolute",
					"onkeydown",
					"onclose",
					"onselect",
					"onpageshow",
					"onpointercancel",
					"onbeforematch",
					"onpointerrawupdate",
					"ondragleave",
					"onscrollsnapchange",
					"onseeked",
					"onwaiting",
					"onbeforeunload",
					"onplaying",
					"onvolumechange",
					"ondragend",
					"onstorage",
					"onloadeddata",
					"onfocus",
					"onoffline",
					"onplay",
					"onafterprint",
					"onclick",
					"oncut",
					"onmouseout",
					"ondblclick",
					"oncanplay",
					"onloadstart",
					"onappinstalled",
					"onpointermove",
					"ontoggle",
					"oncontextmenu",
					"onblur",
					"oncancel",
					"onbeforeprint",
					"oncontextrestored",
					"onloadedmetadata",
					"onpointerup",
					"onlanguagechange",
					"oncopy",
					"onselectstart",
					"onscroll",
					"onload",
					"ondragstart",
					"onbeforeinput",
					"oncanplaythrough",
					"oninput",
					"oninvalid",
					"ontimeupdate",
					"ondurationchange",
					"onselectionchange",
					"onmouseup",
					"location",
					"onkeypress",
					"onpointerleave",
					"oncontextlost",
					"ondrop",
					"onsecuritypolicyviolation",
					"oncontentvisibilityautostatechange",
					"ondeviceorientation",
					"onseeking",
					"onrejectionhandled",
					"onunload",
					"onmouseleave",
					"onhashchange",
					"onpointerenter",
					"onmousewheel",
					"onunhandledrejection",
					"ondragenter",
					"onpopstate",
					"onpagereveal",
					"onemptied"
				]
			}
		}
	],
	"assist": {
		"enabled": true,
		"actions": { "source": { "organizeImports": "on" } }
	}
}
