typescript 핸드북을 보다보면 정체를 알 수 없는 코드가 나온다.
type GetReturnType<Type> = Type extends (...args: never[]) => infer Return
? Return
: never;
바로 저
...args: never[]
부분인데... 이 내용에 대한 reddit 글이 있다. (링크)
이것에 대한 결론은 아래와 같다.
모든 인자(인자가 없는 경우, 인자가 여러개인 경우, never 타입의 인자를 갖는 경우)를 커버하는 함수라고 보면 되겠다.
왜 그런건진 정확히는 모르겠다.