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