typescript/no-invalid-void-type 제한
작동 방식
반환 타입과 구성된 제네릭 컨텍스트 외부에서 void 타입 사용을 금지합니다.
왜 문제가 되는가?
타입스크립트에서 void는 주로 반환 위치에서 의미가 있습니다. 다른 타입 위치(매개변수, 속성, 별칭, 대부분의 합집합 등)에서 void를 사용하는 것은 보통 혼란스럽고, 일반적으로 잘못된 타입 설계를 시사합니다.
예시
이 규칙에 대한 잘못된 코드 예시:
ts
function takeVoid(arg: void) {}
type Alias = void;
type Union = string | void;이 규칙에 대한 올바른 코드 예시:
ts
function f(): void {}
type P = Promise<void>;
type U = void | never;구성
이 규칙은 다음 속성을 가진 구성 객체를 수용합니다:
allowAsThisParameter
type: boolean
기본값: false
함수의 this 매개변수가 void일 수 있는지 여부.
allowInGenericTypeArguments
type: array | boolean
allowInGenericTypeArguments[n]
type: string
사용 방법
이 규칙을 구성 파일 또는 명령줄 인터페이스에서 활성화하려면 다음과 같이 사용할 수 있습니다:
json
{
"rules": {
"typescript/no-invalid-void-type": "error"
}
}bash
oxlint --deny typescript/no-invalid-void-type