• 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": 12
13          },
14          "end": {
15            "line": 17,
16            "column": 14
17          }
18        }
19      },
20      "id": {
21        "type": "Identifier",
22        "name": "I",
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      "loc": {
37        "start": {
38          "line": 17,
39          "column": 1
40        },
41        "end": {
42          "line": 17,
43          "column": 14
44        }
45      }
46    },
47    {
48      "type": "ClassDeclaration",
49      "definition": {
50        "id": {
51          "type": "Identifier",
52          "name": "C",
53          "decorators": [],
54          "loc": {
55            "start": {
56              "line": 18,
57              "column": 7
58            },
59            "end": {
60              "line": 18,
61              "column": 8
62            }
63          }
64        },
65        "typeParameters": {
66          "type": "TSTypeParameterDeclaration",
67          "params": [
68            {
69              "type": "TSTypeParameter",
70              "name": {
71                "type": "Identifier",
72                "name": "T",
73                "decorators": [],
74                "loc": {
75                  "start": {
76                    "line": 18,
77                    "column": 9
78                  },
79                  "end": {
80                    "line": 18,
81                    "column": 10
82                  }
83                }
84              },
85              "loc": {
86                "start": {
87                  "line": 18,
88                  "column": 9
89                },
90                "end": {
91                  "line": 18,
92                  "column": 11
93                }
94              }
95            }
96          ],
97          "loc": {
98            "start": {
99              "line": 18,
100              "column": 8
101            },
102            "end": {
103              "line": 18,
104              "column": 11
105            }
106          }
107        },
108        "superClass": null,
109        "implements": [
110          {
111            "type": "TSClassImplements",
112            "expression": {
113              "type": "Identifier",
114              "name": "I",
115              "decorators": [],
116              "loc": {
117                "start": {
118                  "line": 18,
119                  "column": 23
120                },
121                "end": {
122                  "line": 18,
123                  "column": 24
124                }
125              }
126            },
127            "loc": {
128              "start": {
129                "line": 18,
130                "column": 23
131              },
132              "end": {
133                "line": 18,
134                "column": 26
135              }
136            }
137          }
138        ],
139        "constructor": {
140          "type": "MethodDefinition",
141          "key": {
142            "type": "Identifier",
143            "name": "constructor",
144            "decorators": [],
145            "loc": {
146              "start": {
147                "line": 1,
148                "column": 1
149              },
150              "end": {
151                "line": 1,
152                "column": 1
153              }
154            }
155          },
156          "kind": "constructor",
157          "static": false,
158          "optional": false,
159          "computed": false,
160          "value": {
161            "type": "FunctionExpression",
162            "function": {
163              "type": "ScriptFunction",
164              "id": null,
165              "generator": false,
166              "async": false,
167              "expression": false,
168              "params": [],
169              "body": {
170                "type": "BlockStatement",
171                "statements": [],
172                "loc": {
173                  "start": {
174                    "line": 1,
175                    "column": 1
176                  },
177                  "end": {
178                    "line": 1,
179                    "column": 1
180                  }
181                }
182              },
183              "loc": {
184                "start": {
185                  "line": 1,
186                  "column": 1
187                },
188                "end": {
189                  "line": 1,
190                  "column": 1
191                }
192              }
193            },
194            "loc": {
195              "start": {
196                "line": 1,
197                "column": 1
198              },
199              "end": {
200                "line": 1,
201                "column": 1
202              }
203            }
204          },
205          "overloads": [],
206          "decorators": [],
207          "loc": {
208            "start": {
209              "line": 18,
210              "column": 1
211            },
212            "end": {
213              "line": 20,
214              "column": 2
215            }
216          }
217        },
218        "body": [],
219        "indexSignatures": [
220          {
221            "type": "TSIndexSignature",
222            "parameters": {
223              "type": "Identifier",
224              "name": "a",
225              "typeAnnotation": {
226                "type": "TSNumberKeyword",
227                "loc": {
228                  "start": {
229                    "line": 19,
230                    "column": 6
231                  },
232                  "end": {
233                    "line": 19,
234                    "column": 12
235                  }
236                }
237              },
238              "decorators": [],
239              "loc": {
240                "start": {
241                  "line": 19,
242                  "column": 4
243                },
244                "end": {
245                  "line": 19,
246                  "column": 5
247                }
248              }
249            },
250            "typeAnnotation": {
251              "type": "TSTypeReference",
252              "typeName": {
253                "type": "Identifier",
254                "name": "T",
255                "decorators": [],
256                "loc": {
257                  "start": {
258                    "line": 19,
259                    "column": 14
260                  },
261                  "end": {
262                    "line": 19,
263                    "column": 15
264                  }
265                }
266              },
267              "loc": {
268                "start": {
269                  "line": 19,
270                  "column": 14
271                },
272                "end": {
273                  "line": 19,
274                  "column": 15
275                }
276              }
277            },
278            "readonly": false,
279            "loc": {
280              "start": {
281                "line": 19,
282                "column": 4
283              },
284              "end": {
285                "line": 19,
286                "column": 15
287              }
288            }
289          }
290        ],
291        "loc": {
292          "start": {
293            "line": 18,
294            "column": 25
295          },
296          "end": {
297            "line": 20,
298            "column": 2
299          }
300        }
301      },
302      "decorators": [],
303      "loc": {
304        "start": {
305          "line": 18,
306          "column": 1
307        },
308        "end": {
309          "line": 20,
310          "column": 2
311        }
312      }
313    },
314    {
315      "type": "ClassDeclaration",
316      "definition": {
317        "id": {
318          "type": "Identifier",
319          "name": "D",
320          "decorators": [],
321          "loc": {
322            "start": {
323              "line": 21,
324              "column": 7
325            },
326            "end": {
327              "line": 21,
328              "column": 8
329            }
330          }
331        },
332        "typeParameters": {
333          "type": "TSTypeParameterDeclaration",
334          "params": [
335            {
336              "type": "TSTypeParameter",
337              "name": {
338                "type": "Identifier",
339                "name": "T",
340                "decorators": [],
341                "loc": {
342                  "start": {
343                    "line": 21,
344                    "column": 9
345                  },
346                  "end": {
347                    "line": 21,
348                    "column": 10
349                  }
350                }
351              },
352              "loc": {
353                "start": {
354                  "line": 21,
355                  "column": 9
356                },
357                "end": {
358                  "line": 21,
359                  "column": 11
360                }
361              }
362            }
363          ],
364          "loc": {
365            "start": {
366              "line": 21,
367              "column": 8
368            },
369            "end": {
370              "line": 21,
371              "column": 11
372            }
373          }
374        },
375        "superClass": {
376          "type": "Identifier",
377          "name": "C",
378          "decorators": [],
379          "loc": {
380            "start": {
381              "line": 21,
382              "column": 20
383            },
384            "end": {
385              "line": 21,
386              "column": 21
387            }
388          }
389        },
390        "superTypeParameters": {
391          "type": "TSTypeParameterInstantiation",
392          "params": [
393            {
394              "type": "TSTypeReference",
395              "typeName": {
396                "type": "Identifier",
397                "name": "T",
398                "decorators": [],
399                "loc": {
400                  "start": {
401                    "line": 21,
402                    "column": 22
403                  },
404                  "end": {
405                    "line": 21,
406                    "column": 23
407                  }
408                }
409              },
410              "loc": {
411                "start": {
412                  "line": 21,
413                  "column": 22
414                },
415                "end": {
416                  "line": 21,
417                  "column": 23
418                }
419              }
420            }
421          ],
422          "loc": {
423            "start": {
424              "line": 21,
425              "column": 21
426            },
427            "end": {
428              "line": 21,
429              "column": 24
430            }
431          }
432        },
433        "implements": [],
434        "constructor": {
435          "type": "MethodDefinition",
436          "key": {
437            "type": "Identifier",
438            "name": "constructor",
439            "decorators": [],
440            "loc": {
441              "start": {
442                "line": 1,
443                "column": 1
444              },
445              "end": {
446                "line": 1,
447                "column": 1
448              }
449            }
450          },
451          "kind": "constructor",
452          "static": false,
453          "optional": false,
454          "computed": false,
455          "value": {
456            "type": "FunctionExpression",
457            "function": {
458              "type": "ScriptFunction",
459              "id": null,
460              "generator": false,
461              "async": false,
462              "expression": false,
463              "params": [
464                {
465                  "type": "RestElement",
466                  "argument": {
467                    "type": "Identifier",
468                    "name": "args",
469                    "decorators": [],
470                    "loc": {
471                      "start": {
472                        "line": 1,
473                        "column": 1
474                      },
475                      "end": {
476                        "line": 1,
477                        "column": 1
478                      }
479                    }
480                  },
481                  "loc": {
482                    "start": {
483                      "line": 1,
484                      "column": 1
485                    },
486                    "end": {
487                      "line": 1,
488                      "column": 1
489                    }
490                  }
491                }
492              ],
493              "body": {
494                "type": "BlockStatement",
495                "statements": [
496                  {
497                    "type": "ExpressionStatement",
498                    "expression": {
499                      "type": "CallExpression",
500                      "callee": {
501                        "type": "Super",
502                        "loc": {
503                          "start": {
504                            "line": 1,
505                            "column": 1
506                          },
507                          "end": {
508                            "line": 1,
509                            "column": 1
510                          }
511                        }
512                      },
513                      "arguments": [
514                        {
515                          "type": "SpreadElement",
516                          "argument": {
517                            "type": "Identifier",
518                            "name": "args",
519                            "decorators": [],
520                            "loc": {
521                              "start": {
522                                "line": 1,
523                                "column": 1
524                              },
525                              "end": {
526                                "line": 1,
527                                "column": 1
528                              }
529                            }
530                          },
531                          "loc": {
532                            "start": {
533                              "line": 1,
534                              "column": 1
535                            },
536                            "end": {
537                              "line": 1,
538                              "column": 1
539                            }
540                          }
541                        }
542                      ],
543                      "optional": false,
544                      "loc": {
545                        "start": {
546                          "line": 1,
547                          "column": 1
548                        },
549                        "end": {
550                          "line": 1,
551                          "column": 1
552                        }
553                      }
554                    },
555                    "loc": {
556                      "start": {
557                        "line": 1,
558                        "column": 1
559                      },
560                      "end": {
561                        "line": 1,
562                        "column": 1
563                      }
564                    }
565                  }
566                ],
567                "loc": {
568                  "start": {
569                    "line": 1,
570                    "column": 1
571                  },
572                  "end": {
573                    "line": 1,
574                    "column": 1
575                  }
576                }
577              },
578              "loc": {
579                "start": {
580                  "line": 1,
581                  "column": 1
582                },
583                "end": {
584                  "line": 1,
585                  "column": 1
586                }
587              }
588            },
589            "loc": {
590              "start": {
591                "line": 1,
592                "column": 1
593              },
594              "end": {
595                "line": 1,
596                "column": 1
597              }
598            }
599          },
600          "overloads": [],
601          "decorators": [],
602          "loc": {
603            "start": {
604              "line": 21,
605              "column": 1
606            },
607            "end": {
608              "line": 22,
609              "column": 2
610            }
611          }
612        },
613        "body": [],
614        "indexSignatures": [],
615        "loc": {
616          "start": {
617            "line": 21,
618            "column": 25
619          },
620          "end": {
621            "line": 22,
622            "column": 2
623          }
624        }
625      },
626      "decorators": [],
627      "loc": {
628        "start": {
629          "line": 21,
630          "column": 1
631        },
632        "end": {
633          "line": 22,
634          "column": 2
635        }
636      }
637    }
638  ],
639  "loc": {
640    "start": {
641      "line": 1,
642      "column": 1
643    },
644    "end": {
645      "line": 23,
646      "column": 1
647    }
648  }
649}
650