eslint-plugin-typescript-enum
Version:
ESLint rules for TypeScript enums.
30 lines (29 loc) • 911 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const util_1 = require("../util");
const noConstEnum = (0, util_1.createRule)({
name: "no-const-enum",
meta: {
type: "problem",
docs: {
description: "Disallow TypeScript `const` enums",
recommended: false,
},
messages: {
noConstEnum: "Unexpected `const` enum, use regular enum instead. As a side note, in modern TypeScript, you may not need an enum when an object with `as const` could suffice.",
},
schema: [],
},
defaultOptions: [],
create: (context) => ({
TSEnumDeclaration: (node) => {
if (node.const === true) {
context.report({
node,
messageId: "noConstEnum",
});
}
},
}),
});
exports.default = noConstEnum;
;