ESLint plugin for TypeScript with custom linting rules.
npm install --save-dev @luma-dev/eslint-plugin-luma-ts
Add to your ESLint configuration:
export default [
{
plugins: {
"luma-ts": require("@luma-dev/eslint-plugin-luma-ts"),
},
rules: {
"luma-ts/require-satisfies-in-tls": "error",
},
},
];
Or use the recommended configuration:
export default [require("@luma-dev/eslint-plugin-luma-ts").configs.recommended];
Requires satisfies in Template-Literal-Strings.
Template literal expressions must use the satisfies
operator with allowed types.
Valid:
`Hello ${name satisfies string}`;
`Count: ${count satisfies number}`;
`BigInt: ${value satisfies bigint}`;
Invalid:
`Hello ${name}`; // Missing satisfies
`Count: ${count}`; // Missing satisfies
Options:
types
: Array of allowed type names (default:['string', 'number', 'bigint']
)
Example configuration:
{
'luma-ts/require-satisfies-in-tls': ['error', { types: ['string', 'CustomType'] }]
}