Problem위 Animal 의 type 처럼 union type 을 지정할 때, 캐스팅이 가능한 primitive types 를 같이 넣으면type property 의 type hint 가 string 으로 합쳐져 Cat 이나 Dog 에 대한 hint 를 받을 수 없음 Resolvedinterface Animal { type: Cat | Dog | (string & {});}위처럼 primitive type 을 {} 와 함께 intersection type 으로 만들면 된다
서론 함수 선언문(Function Declarations)과 함수 표현식(Function Expressions) 에 대한 내용이 아닙니다.관련 내용은 검색 해보시면 많이 나와있다보니 이 글에서는 다루지 않습니다. 함수(Function) 와 메서드(Method) 의 차이점을 알고 있다는 점을 전제로 둡니다. 함수 타입 표현 (Function Type Expressions)(...args: ArgTypes[]) => ReturnType위와 같은 형태로 Call Signature 를 정의하는 데 사용. 주로 함수를 변수에 할당하거나, 다른 함수의 매개변수로 전달할 때 사용됨. [예시]interface 인터페이스_예시 { foo: () => void;}type 타입_예시 = { foo: () => ..