• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "TSInterfaceDeclaration",
6      "body": {
7        "type": "TSInterfaceBody",
8        "body": [],
9        "loc": {
10          "start": {
11            "line": 17,
12            "column": 23
13          },
14          "end": {
15            "line": 19,
16            "column": 2
17          }
18        }
19      },
20      "id": {
21        "type": "Identifier",
22        "name": "A",
23        "decorators": [],
24        "loc": {
25          "start": {
26            "line": 17,
27            "column": 11
28          },
29          "end": {
30            "line": 17,
31            "column": 12
32          }
33        }
34      },
35      "extends": [
36        {
37          "type": "TSInterfaceHeritage",
38          "expression": {
39            "type": "TSTypeReference",
40            "typeName": {
41              "type": "Identifier",
42              "name": "C",
43              "decorators": [],
44              "loc": {
45                "start": {
46                  "line": 17,
47                  "column": 21
48                },
49                "end": {
50                  "line": 17,
51                  "column": 22
52                }
53              }
54            },
55            "loc": {
56              "start": {
57                "line": 17,
58                "column": 23
59              },
60              "end": {
61                "line": 17,
62                "column": 22
63              }
64            }
65          },
66          "loc": {
67            "start": {
68              "line": 17,
69              "column": 23
70            },
71            "end": {
72              "line": 17,
73              "column": 22
74            }
75          }
76        }
77      ],
78      "loc": {
79        "start": {
80          "line": 17,
81          "column": 1
82        },
83        "end": {
84          "line": 19,
85          "column": 2
86        }
87      }
88    },
89    {
90      "type": "TSInterfaceDeclaration",
91      "body": {
92        "type": "TSInterfaceBody",
93        "body": [],
94        "loc": {
95          "start": {
96            "line": 21,
97            "column": 23
98          },
99          "end": {
100            "line": 23,
101            "column": 2
102          }
103        }
104      },
105      "id": {
106        "type": "Identifier",
107        "name": "B",
108        "decorators": [],
109        "loc": {
110          "start": {
111            "line": 21,
112            "column": 11
113          },
114          "end": {
115            "line": 21,
116            "column": 12
117          }
118        }
119      },
120      "extends": [
121        {
122          "type": "TSInterfaceHeritage",
123          "expression": {
124            "type": "TSTypeReference",
125            "typeName": {
126              "type": "Identifier",
127              "name": "A",
128              "decorators": [],
129              "loc": {
130                "start": {
131                  "line": 21,
132                  "column": 21
133                },
134                "end": {
135                  "line": 21,
136                  "column": 22
137                }
138              }
139            },
140            "loc": {
141              "start": {
142                "line": 21,
143                "column": 23
144              },
145              "end": {
146                "line": 21,
147                "column": 22
148              }
149            }
150          },
151          "loc": {
152            "start": {
153              "line": 21,
154              "column": 23
155            },
156            "end": {
157              "line": 21,
158              "column": 22
159            }
160          }
161        }
162      ],
163      "loc": {
164        "start": {
165          "line": 21,
166          "column": 1
167        },
168        "end": {
169          "line": 23,
170          "column": 2
171        }
172      }
173    },
174    {
175      "type": "TSInterfaceDeclaration",
176      "body": {
177        "type": "TSInterfaceBody",
178        "body": [],
179        "loc": {
180          "start": {
181            "line": 25,
182            "column": 23
183          },
184          "end": {
185            "line": 27,
186            "column": 2
187          }
188        }
189      },
190      "id": {
191        "type": "Identifier",
192        "name": "C",
193        "decorators": [],
194        "loc": {
195          "start": {
196            "line": 25,
197            "column": 11
198          },
199          "end": {
200            "line": 25,
201            "column": 12
202          }
203        }
204      },
205      "extends": [
206        {
207          "type": "TSInterfaceHeritage",
208          "expression": {
209            "type": "TSTypeReference",
210            "typeName": {
211              "type": "Identifier",
212              "name": "B",
213              "decorators": [],
214              "loc": {
215                "start": {
216                  "line": 25,
217                  "column": 21
218                },
219                "end": {
220                  "line": 25,
221                  "column": 22
222                }
223              }
224            },
225            "loc": {
226              "start": {
227                "line": 25,
228                "column": 23
229              },
230              "end": {
231                "line": 25,
232                "column": 22
233              }
234            }
235          },
236          "loc": {
237            "start": {
238              "line": 25,
239              "column": 23
240            },
241            "end": {
242              "line": 25,
243              "column": 22
244            }
245          }
246        }
247      ],
248      "loc": {
249        "start": {
250          "line": 25,
251          "column": 1
252        },
253        "end": {
254          "line": 27,
255          "column": 2
256        }
257      }
258    }
259  ],
260  "loc": {
261    "start": {
262      "line": 1,
263      "column": 1
264    },
265    "end": {
266      "line": 27,
267      "column": 2
268    }
269  }
270}
271TypeError: Type A recursively references itself as a base type. [interfaceInheritance1.ts:17:11]
272