2
1

More than 1 year has passed since last update.

ESLintなどの設定ファイルに型をつける方法

Last updated at Posted at 2023-05-05

ESLintなどのフロントエンドまわりのツールでは、設定ファイルのフォーマットとして、JSON、YAML、JavaScript、TypeScriptなど、様々なフォーマットがサポートされています。

TypeScriptがサポートされていれば設定に対して型をつけられるので、間違いをある程度防ぐことができるでしょう。
ここでは、ESLintのようにTypeScriptがサポートされていない設定ファイルに対して、型をつける方法を紹介します。

TypeScriptがサポートされている場合

JestのようにTypeScriptがサポートされていれば、普通にTypeScriptで書くだけです。

import type { Config } from 'jest'

const config: Config = {
  verbose: true
}

export default config

TypeScriptがサポートされていない場合

ESLintのようにTypeScriptがサポートされていない場合でも、型定義さえあればJSDocコメントで型をつけることができます。

たとえば、ESLintの場合は次のように書くことができます。

// @ts-check

/** @typedef {import('eslint').ESLint.ConfigData} ConfigData */

/** @type {ConfigData} */
const config = {
  extends: [
    '@munierujp/eslint-config-typescript'
  ],
  parserOptions: {
    project: './tsconfig.json'
  }
}

module.exports = config

ただし、型定義の場所がドキュメントに記載されていない場合は、自分で探し出す必要があります。
もっとも、著名なツールならGitHubを@ts-check path:<設定ファイル名>のようなクエリで検索すれば使用例が見つかるでしょう。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1