UNPKG

@masknet/eslint-plugin

Version:
36 lines 1.16 kB
import { createRule } from "../../rule.js"; const PRIMITIVE_TYPES = new Set(['BigInt', 'Boolean', 'Number', 'String', 'Symbol']); export default createRule({ name: 'type/no-wrapper-type-reference', meta: { type: 'problem', fixable: 'code', docs: { description: 'Disallow wrapper type for type reference', recommended: 'recommended', }, schema: [], messages: { instead: 'Use {{name}} instead', }, }, defaultOptions: [], create(context) { return { TSTypeReference(node) { if (node.typeName.type !== 'Identifier') return; if (!PRIMITIVE_TYPES.has(node.typeName.name)) return; const name = node.typeName.name.toLowerCase(); context.report({ node, messageId: 'instead', data: { name }, fix: (fixer) => fixer.replaceText(node.typeName, name), }); }, }; }, }); //# sourceMappingURL=no-wrapper-type-reference.js.map