• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "A",
10          "loc": {
11            "start": {
12              "line": 16,
13              "column": 7
14            },
15            "end": {
16              "line": 16,
17              "column": 8
18            }
19          }
20        },
21        "typeParameters": {
22          "type": "TSTypeParameterDeclaration",
23          "params": [
24            {
25              "type": "TSTypeParameter",
26              "name": {
27                "type": "Identifier",
28                "name": "T",
29                "loc": {
30                  "start": {
31                    "line": 16,
32                    "column": 10
33                  },
34                  "end": {
35                    "line": 16,
36                    "column": 11
37                  }
38                }
39              },
40              "loc": {
41                "start": {
42                  "line": 16,
43                  "column": 10
44                },
45                "end": {
46                  "line": 16,
47                  "column": 12
48                }
49              }
50            }
51          ],
52          "loc": {
53            "start": {
54              "line": 16,
55              "column": 9
56            },
57            "end": {
58              "line": 16,
59              "column": 12
60            }
61          }
62        },
63        "superClass": null,
64        "implements": [],
65        "constructor": {
66          "type": "MethodDefinition",
67          "key": {
68            "type": "Identifier",
69            "name": "constructor",
70            "loc": {
71              "start": {
72                "line": 1,
73                "column": 1
74              },
75              "end": {
76                "line": 1,
77                "column": 1
78              }
79            }
80          },
81          "kind": "constructor",
82          "static": false,
83          "optional": false,
84          "computed": false,
85          "value": {
86            "type": "FunctionExpression",
87            "function": {
88              "type": "ScriptFunction",
89              "id": null,
90              "generator": false,
91              "async": false,
92              "expression": false,
93              "params": [],
94              "body": {
95                "type": "BlockStatement",
96                "statements": [],
97                "loc": {
98                  "start": {
99                    "line": 1,
100                    "column": 1
101                  },
102                  "end": {
103                    "line": 1,
104                    "column": 1
105                  }
106                }
107              },
108              "loc": {
109                "start": {
110                  "line": 1,
111                  "column": 1
112                },
113                "end": {
114                  "line": 1,
115                  "column": 1
116                }
117              }
118            },
119            "loc": {
120              "start": {
121                "line": 1,
122                "column": 1
123              },
124              "end": {
125                "line": 1,
126                "column": 1
127              }
128            }
129          },
130          "overloads": [],
131          "decorators": [],
132          "loc": {
133            "start": {
134              "line": 16,
135              "column": 1
136            },
137            "end": {
138              "line": 17,
139              "column": 2
140            }
141          }
142        },
143        "body": [],
144        "indexSignatures": [],
145        "loc": {
146          "start": {
147            "line": 16,
148            "column": 13
149          },
150          "end": {
151            "line": 17,
152            "column": 2
153          }
154        }
155      },
156      "decorators": [],
157      "loc": {
158        "start": {
159          "line": 16,
160          "column": 1
161        },
162        "end": {
163          "line": 17,
164          "column": 2
165        }
166      }
167    },
168    {
169      "type": "VariableDeclaration",
170      "declarations": [
171        {
172          "type": "VariableDeclarator",
173          "id": {
174            "type": "Identifier",
175            "name": "a",
176            "typeAnnotation": {
177              "type": "TSTypeReference",
178              "typeName": {
179                "type": "Identifier",
180                "name": "A",
181                "loc": {
182                  "start": {
183                    "line": 19,
184                    "column": 8
185                  },
186                  "end": {
187                    "line": 19,
188                    "column": 9
189                  }
190                }
191              },
192              "typeParameters": {
193                "type": "TSTypeParameterInstantiation",
194                "params": [
195                  {
196                    "type": "TSFunctionType",
197                    "params": [],
198                    "typeParameters": {
199                      "type": "TSTypeParameterDeclaration",
200                      "params": [
201                        {
202                          "type": "TSTypeParameter",
203                          "name": {
204                            "type": "Identifier",
205                            "name": "T",
206                            "loc": {
207                              "start": {
208                                "line": 19,
209                                "column": 11
210                              },
211                              "end": {
212                                "line": 19,
213                                "column": 12
214                              }
215                            }
216                          },
217                          "loc": {
218                            "start": {
219                              "line": 19,
220                              "column": 11
221                            },
222                            "end": {
223                              "line": 19,
224                              "column": 13
225                            }
226                          }
227                        }
228                      ],
229                      "loc": {
230                        "start": {
231                          "line": 19,
232                          "column": 10
233                        },
234                        "end": {
235                          "line": 19,
236                          "column": 13
237                        }
238                      }
239                    },
240                    "returnType": {
241                      "type": "TSTypeLiteral",
242                      "members": [],
243                      "loc": {
244                        "start": {
245                          "line": 19,
246                          "column": 19
247                        },
248                        "end": {
249                          "line": 19,
250                          "column": 21
251                        }
252                      }
253                    },
254                    "loc": {
255                      "start": {
256                        "line": 19,
257                        "column": 10
258                      },
259                      "end": {
260                        "line": 19,
261                        "column": 21
262                      }
263                    }
264                  }
265                ],
266                "loc": {
267                  "start": {
268                    "line": 19,
269                    "column": 8
270                  },
271                  "end": {
272                    "line": 19,
273                    "column": 22
274                  }
275                }
276              },
277              "loc": {
278                "start": {
279                  "line": 19,
280                  "column": 8
281                },
282                "end": {
283                  "line": 19,
284                  "column": 9
285                }
286              }
287            },
288            "loc": {
289              "start": {
290                "line": 19,
291                "column": 5
292              },
293              "end": {
294                "line": 19,
295                "column": 6
296              }
297            }
298          },
299          "init": {
300            "type": "NewExpression",
301            "callee": {
302              "type": "Identifier",
303              "name": "A",
304              "loc": {
305                "start": {
306                  "line": 19,
307                  "column": 29
308                },
309                "end": {
310                  "line": 19,
311                  "column": 30
312                }
313              }
314            },
315            "typeParameters": {
316              "type": "TSTypeParameterInstantiation",
317              "params": [
318                {
319                  "type": "TSFunctionType",
320                  "params": [],
321                  "typeParameters": {
322                    "type": "TSTypeParameterDeclaration",
323                    "params": [
324                      {
325                        "type": "TSTypeParameter",
326                        "name": {
327                          "type": "Identifier",
328                          "name": "T",
329                          "loc": {
330                            "start": {
331                              "line": 19,
332                              "column": 32
333                            },
334                            "end": {
335                              "line": 19,
336                              "column": 33
337                            }
338                          }
339                        },
340                        "loc": {
341                          "start": {
342                            "line": 19,
343                            "column": 32
344                          },
345                          "end": {
346                            "line": 19,
347                            "column": 34
348                          }
349                        }
350                      }
351                    ],
352                    "loc": {
353                      "start": {
354                        "line": 19,
355                        "column": 31
356                      },
357                      "end": {
358                        "line": 19,
359                        "column": 34
360                      }
361                    }
362                  },
363                  "returnType": {
364                    "type": "TSTypeLiteral",
365                    "members": [],
366                    "loc": {
367                      "start": {
368                        "line": 19,
369                        "column": 40
370                      },
371                      "end": {
372                        "line": 19,
373                        "column": 42
374                      }
375                    }
376                  },
377                  "loc": {
378                    "start": {
379                      "line": 19,
380                      "column": 31
381                    },
382                    "end": {
383                      "line": 19,
384                      "column": 42
385                    }
386                  }
387                }
388              ],
389              "loc": {
390                "start": {
391                  "line": 19,
392                  "column": 30
393                },
394                "end": {
395                  "line": 19,
396                  "column": 43
397                }
398              }
399            },
400            "arguments": [],
401            "loc": {
402              "start": {
403                "line": 19,
404                "column": 25
405              },
406              "end": {
407                "line": 19,
408                "column": 45
409              }
410            }
411          },
412          "loc": {
413            "start": {
414              "line": 19,
415              "column": 5
416            },
417            "end": {
418              "line": 19,
419              "column": 45
420            }
421          }
422        }
423      ],
424      "kind": "var",
425      "loc": {
426        "start": {
427          "line": 19,
428          "column": 1
429        },
430        "end": {
431          "line": 19,
432          "column": 45
433        }
434      }
435    }
436  ],
437  "loc": {
438    "start": {
439      "line": 1,
440      "column": 1
441    },
442    "end": {
443      "line": 21,
444      "column": 1
445    }
446  }
447}
448