configuration-oxlint/rules/promise.ts
2026-04-07 11:55:09 +02:00

64 lines
1.3 KiB
TypeScript

import type { DummyRuleMap } from "oxlint";
const promiseRules: DummyRuleMap = {
"promise/always-return": [
"deny",
{
ignoreAssignmentVariable: ["globalThis"],
ignoreLastCallback: false,
},
],
"promise/avoid-new": "deny",
"promise/catch-or-return": [
"deny",
{
allowFinally: false,
allowThen: false,
terminationMethod: ["catch"],
},
],
"promise/no-callback-in-promise": [
"deny",
{
callbacks: ["callback", "cb", "done", "next"],
exceptions: [],
timeoutsErr: false,
},
],
"promise/no-multiple-resolved": "deny",
"promise/no-nesting": "deny",
"promise/no-new-statics": "deny",
"promise/no-promise-in-callback": "deny",
"promise/no-return-in-finally": "deny",
"promise/no-return-wrap": [
"deny",
{
allowReject: false,
},
],
"promise/param-names": [
"deny",
{
rejectPattern: "^_?reject$",
resolvePattern: "^_?resolve$",
},
],
// Émet de faux positifs avec Effect.
"promise/prefer-await-to-callbacks": "allow",
"promise/prefer-await-to-then": [
"deny",
{
strict: true,
},
],
"promise/prefer-catch": "deny",
"promise/spec-only": [
"deny",
{
allowedMethods: [],
},
],
"promise/valid-params": "deny",
};
export default promiseRules;