Skip to content
← Back to rules

import/consistent-type-specifier-style 스타일

🛠️ An auto-fix is available for this rule for some violations.

작동 방식

이 규칙은 이름이 지정된 내보내기에서 인라인 타입 전용 표시자 사용 여부를 강제하거나 금지합니다.

왜 문제가 되나요?

상위 레벨의 import type { Foo } from 'foo'와 인라인 { type Bar }를 혼합하면, 코드를 스캔할 때 읽는 사람이 맥락을 정신적으로 전환해야 합니다. 하나의 스타일을 강제하면 어떤 가져오기가 타입인지, 어떤 것이 값인지 즉시 알 수 있습니다.

예시

기본값인 prefer-top-level 옵션에서 잘못된 코드 예시:

typescript
import { type Foo } from "Foo";
import Foo, { type Bar } from "Foo";

기본값 옵션에서 올바른 코드 예시:

typescript
import type { Foo } from "Foo";
import type Foo, { Bar } from "Foo";

prefer-inline 옵션에서 잘못된 코드 예시:

typescript
import type { Foo } from "Foo";
import type Foo, { Bar } from "Foo";

prefer-inline 옵션에서 올바른 코드 예시:

typescript
import { type Foo } from "Foo";
import Foo, { type Bar } from "Foo";

구성

이 규칙은 다음 중 하나의 문자열 값을 받습니다.

"prefer-top-level"

타입 가져오기에 대해 import type { Foo } from 'foo'를 선호합니다.

"prefer-inline"

타입 가져오기에 대해 import { type Foo } from 'foo'를 선호합니다.

사용 방법

구성 파일 또는 명령줄에서 이 규칙을 활성화하려면 다음과 같이 사용할 수 있습니다:

json
{
  "plugins": ["import"],
  "rules": {
    "import/consistent-type-specifier-style": "error"
  }
}
bash
oxlint --deny import/consistent-type-specifier-style --import-plugin

참고 자료