/ typescript

Resolve TypeScript Circular Dependency

Issue

TS 3.4+ 부터 좀더 타이트하게 잡는거 같아요.
이전에 class가 type으로 사용되는 경우 따로 잡지 않았는데 좀더 깐깐해졌네요.
일단 원칙상 당연히 서로를 사용하는 코드의 경우는 정말 순환참조라서 안되고요^^;
우리 처럼 코드를 사용하는게 아니라 type으로 사용되는 경우는 아래 방법으로 우회가 됩니다.

Resolve

export class State {
...
}

export type StateType = State;

위 처럼 정의를 하고 State를 타입으로 사용하는 곳에서 StateType을 사용하면 됩니다^^/