Skip to content
← Back to rules

typescript/no-empty-interface 스타일

An auto-fix is available for this rule.

작동 방식

빈 인터페이스의 선언을 허용하지 않습니다.

왜 문제가 되는가?

타입스크립트에서 빈 인터페이스는 거의 아무런 의미가 없습니다: 어떤 비-널 값도 {}에 할당할 수 있습니다.
빈 인터페이스를 사용하는 것은 종종 프로그래머의 실수를 나타내며, 예를 들어 {}의 개념을 잘못 이해했거나 필드를 채우지 않은 경우입니다.
이 규칙은 코드 내에서 의미 있는 인터페이스만 선언되도록 보장하기 위해 존재합니다.

예시

이 규칙에 적합하지 않은 예시:

ts
interface Foo {}
interface Bar extends Foo {}

이 규칙에 적합한 예시:

ts
interface Foo {
  member: string;
}
interface Bar extends Foo {
  member: string;
}

구성

이 규칙은 다음 속성을 가진 구성 객체를 수용합니다.

allowSingleExtends

type: boolean

기본값: false

true로 설정되면 단일 인터페이스를 상속하는 빈 인터페이스를 허용합니다.

사용 방법

이 규칙을 설정 파일 또는 명령줄 인터페이스에서 활성화하려면 다음을 사용할 수 있습니다:

json
{
  "rules": {
    "typescript/no-empty-interface": "error"
  }
}
bash
oxlint --deny typescript/no-empty-interface

참고 자료