TS interface keyword


### 성능을 위해서는 원시 자료형 조합을 제외하곤 interface를 사용하는 것이 좋다
`&`하거나 `extends`할 때 interface는 속성간 충돌을 해결하기 위해 단순한 객체 타입을 만든다
interface는 객체의 타입을 만들기 위한 것


### type 과의 차이점
- interface는 항상 선언적 확장이 가능
```typeinterface Window {  title: string}interface Window {  ts: TypeScriptAPI}```
- computed value 사용 불가능
```typeinterface NameInterface {  // error  [key in names]: string}```
- interface는 객체에만 사용이 가능 - type은 아니라는 게 중요
- = 필요없음 (no alias)


인터페이스는 extends 또는 implements될 수 있다


> [타입스크립트 type과 interface의 공통점과 차이점](https://yceffort.kr/2021/03/typescript-interface-vs-type)





