{
	"$schema": "./node_modules/oxlint/configuration_schema.json",
	"plugins": ["unicorn", "typescript", "oxc", "import", "node"],
	"jsPlugins": ["./rules/plugin.js"],
	"categories": {
		"correctness": "error",
		"suspicious": "warn"
	},
	"rules": {
		"no-restricted-imports": [
			"error",
			{
				"paths": [
					{
						"name": "node:path",
						"message": "Use File URLs (new URL()) instead. Only use fileURLToPath() at third-party module boundaries."
					},
					{
						"name": "path",
						"message": "Use File URLs (new URL()) instead. Only use fileURLToPath() at third-party module boundaries."
					},
					{
						"name": "node:path/posix",
						"message": "Use File URLs (new URL()) instead."
					},
					{
						"name": "node:path/win32",
						"message": "Use File URLs (new URL()) instead."
					}
				]
			}
		],
		"import/no-commonjs": "error",
		"node/no-path-concat": "error",

		"unicorn/prefer-node-protocol": "error",
		"typescript/consistent-type-imports": "error",
		"no-console": ["warn", { "allow": ["info", "warn", "error", "debug"] }],
		"prefer-const": "error",
		"no-var": "error",
		"max-params": ["error", { "max": 2 }],
		"typescript/explicit-function-return-type": ["warn", { "allowExpressions": true }],

		"import/no-default-export": "error",
		"bombshell-dev/no-generic-error": "error",
		"bombshell-dev/require-export-jsdoc": "warn",
		"bombshell-dev/exported-function-async": "warn"
	}
}
