{
	"plugins": [
		"eslint",
		"import",
		"jsdoc",
		"oxc",
		"promise",
		"typescript",
		"unicorn"
	],
	"categories": {
		"correctness": "error",
		"pedantic": "error",
		"restriction": "error",
		"suspicious": "error",
		"perf": "error",
		"nursery": "error"
	},
	"rules": {
		"no-use-before-define": [
			"error",
			{
				"functions": false
			}
		],
		"import/max-dependencies": "off",
		"import/no-relative-parent-imports": "off",
		"import/no-default-export": "off",
		"oxc/no-async-await": "off",
		"oxc/no-optional-chaining": "off",
		"oxc/no-rest-spread-properties": "off"
	},
	"overrides": [
		{
			"files": [
				"**/*.d.ts",
			],
			"rules": {
				"import/unambiguous": "off",
			},
		},
		{
			"files": [
				"test/**/*.{js,ts}",
				"**/*.{spec,test}.{js,ts}"
			],
			"rules": {
				"max-lines": "off",
				"max-lines-per-function": "off"
			}
		}
	]
}
