✏️

eslintでTypeScriptの型定義をtypeからinterfaceに書き変える

に公開

https://zenn.dev/bmth/articles/interface-props-extends

を見て明日からinterfaceに変えたくなっただろうひと向け。

@typescript-eslint/consistent-type-definitionsを有効にする。

ESLint Flat Configの設定例

import tseslint from 'typescript-eslint';
import { defineConfig } from 'eslint/config';

export default defineConfig([
  {
    extends: tseslint.configs.recommended,
    rules: {
      // recommendedはデフォルトで有効ではない
      '@typescript-eslint/consistent-type-definitions': ['error', 'interface'],
    },
  },
]);

fixコマンドで書き換えてくれます。

eslint . --fix

その他

Discussion