close

no-dynamic-delete

Configuration

rslint.config.ts
import { defineConfig, ts } from '@rslint/core';

export default defineConfig([
  ts.configs.recommended,
  {
    rules: {
      '@typescript-eslint/no-dynamic-delete': 'error',
    },
  },
]);

Rule Details

Disallow the delete operator on computed property keys unless the key is a literal.

Examples of incorrect code for this rule:

const container: { [i: string]: 0 } = {};
delete container[name];
delete container['aa' + 'b'];
delete container[`name`];

Examples of correct code for this rule:

const container: { [i: string]: 0 } = {};
delete container['name'];
delete container[7];

Original Documentation

https://typescript-eslint.io/rules/no-dynamic-delete