=== tests/cases/conformance/types/typeAliases/circularTypeAliasForUnionWithInterface.ts === var v0: T0; >v0 : string | I0 >T0 : string | I0 type T0 = string | I0; >T0 : string | I0 >I0 : I0 interface I0 { >I0 : I0 x: T0; >x : string | I0 >T0 : string | I0 } var v1: T1; >v1 : string | I1 >T1 : string | I1 type T1 = string | I1; >T1 : string | I1 >I1 : I1 interface I1 { >I1 : I1 (): T1; >T1 : string | I1 } var v2: T2; >v2 : string | I2 >T2 : string | I2 type T2 = string | I2; >T2 : string | I2 >I2 : I2 interface I2 { >I2 : I2 new (): T2; >T2 : string | I2 } var v3: T3; >v3 : string | I3 >T3 : string | I3 type T3 = string | I3; >T3 : string | I3 >I3 : I3 interface I3 { >I3 : I3 [x: number]: T3; >x : number >T3 : string | I3 } var v4: T4; >v4 : string | I4 >T4 : string | I4 type T4 = string | I4; >T4 : string | I4 >I4 : I4 interface I4 { >I4 : I4 [x: string]: T4; >x : string >T4 : string | I4 }