타입 인터페이스 A, B를 정의하고 사용중인데


A는 { a: string, b: string }

B는 { a: string }


함수 내부에서 인자에 b가 있냐 없냐에 따라 A인지 B인지 체크하는 조건문을 만들었는데


function test(arg: A | B) {

  ...

  if(arg.b) {

     // type error

  }

}


이렇게 작성하면 B 안에 b가 없다고 에러가 뜨더라구

뭔가 B에 b가 없는걸 체크 해주면 된다 라고 알고있었는데 어떻게 해야 할까?

타입XX 같은 관련 용어 있었던거 같은데 기억이 안나네