1{
2  "type": "Program",
3  "statements": [
4    {
5      "type": "ClassDeclaration",
6      "definition": {
7        "id": {
8          "type": "Identifier",
9          "name": "ExampleClass1",
10          "loc": {
11            "start": {
12              "line": 17,
13              "column": 7
14            },
15            "end": {
16              "line": 17,
17              "column": 20
18            }
19          }
20        },
21        "superClass": null,
22        "implements": [],
23        "constructor": {
24          "type": "MethodDefinition",
25          "key": {
26            "type": "Identifier",
27            "name": "constructor",
28            "loc": {
29              "start": {
30                "line": 18,
31                "column": 12
32              },
33              "end": {
34                "line": 18,
35                "column": 23
36              }
37            }
38          },
39          "kind": "constructor",
40          "accessibility": "public",
41          "static": false,
42          "optional": false,
43          "computed": false,
44          "value": {
45            "type": "FunctionExpression",
46            "function": {
47              "type": "ScriptFunction",
48              "id": null,
49              "generator": false,
50              "async": false,
51              "expression": false,
52              "params": [
53                {
54                  "type": "AssignmentPattern",
55                  "left": {
56                    "type": "Identifier",
57                    "name": "declare",
58                    "loc": {
59                      "start": {
60                        "line": 19,
61                        "column": 9
62                      },
63                      "end": {
64                        "line": 19,
65                        "column": 16
66                      }
67                    }
68                  },
69                  "right": {
70                    "type": "NumberLiteral",
71                    "value": 5,
72                    "loc": {
73                      "start": {
74                        "line": 19,
75                        "column": 19
76                      },
77                      "end": {
78                        "line": 19,
79                        "column": 20
80                      }
81                    }
82                  },
83                  "loc": {
84                    "start": {
85                      "line": 19,
86                      "column": 9
87                    },
88                    "end": {
89                      "line": 19,
90                      "column": 20
91                    }
92                  }
93                },
94                {
95                  "type": "AssignmentPattern",
96                  "left": {
97                    "type": "Identifier",
98                    "name": "async",
99                    "typeAnnotation": {
100                      "type": "TSStringKeyword",
101                      "loc": {
102                        "start": {
103                          "line": 20,
104                          "column": 16
105                        },
106                        "end": {
107                          "line": 20,
108                          "column": 22
109                        }
110                      }
111                    },
112                    "loc": {
113                      "start": {
114                        "line": 20,
115                        "column": 9
116                      },
117                      "end": {
118                        "line": 20,
119                        "column": 14
120                      }
121                    }
122                  },
123                  "right": {
124                    "type": "StringLiteral",
125                    "value": "async",
126                    "loc": {
127                      "start": {
128                        "line": 20,
129                        "column": 25
130                      },
131                      "end": {
132                        "line": 20,
133                        "column": 32
134                      }
135                    }
136                  },
137                  "loc": {
138                    "start": {
139                      "line": 20,
140                      "column": 9
141                    },
142                    "end": {
143                      "line": 20,
144                      "column": 32
145                    }
146                  }
147                },
148                {
149                  "type": "TSParameterProperty",
150                  "accessibility": "public",
151                  "readonly": false,
152                  "override": false,
153                  "static": false,
154                  "export": false,
155                  "parameter": {
156                    "type": "Identifier",
157                    "name": "a",
158                    "loc": {
159                      "start": {
160                        "line": 21,
161                        "column": 16
162                      },
163                      "end": {
164                        "line": 21,
165                        "column": 17
166                      }
167                    }
168                  },
169                  "loc": {
170                    "start": {
171                      "line": 21,
172                      "column": 9
173                    },
174                    "end": {
175                      "line": 21,
176                      "column": 17
177                    }
178                  }
179                },
180                {
181                  "type": "TSParameterProperty",
182                  "accessibility": "private",
183                  "readonly": false,
184                  "override": false,
185                  "static": false,
186                  "export": false,
187                  "parameter": {
188                    "type": "Identifier",
189                    "name": "b",
190                    "loc": {
191                      "start": {
192                        "line": 22,
193                        "column": 17
194                      },
195                      "end": {
196                        "line": 22,
197                        "column": 18
198                      }
199                    }
200                  },
201                  "loc": {
202                    "start": {
203                      "line": 22,
204                      "column": 9
205                    },
206                    "end": {
207                      "line": 22,
208                      "column": 18
209                    }
210                  }
211                },
212                {
213                  "type": "TSParameterProperty",
214                  "accessibility": "protected",
215                  "readonly": false,
216                  "override": false,
217                  "static": false,
218                  "export": false,
219                  "parameter": {
220                    "type": "Identifier",
221                    "name": "c",
222                    "loc": {
223                      "start": {
224                        "line": 23,
225                        "column": 19
226                      },
227                      "end": {
228                        "line": 23,
229                        "column": 20
230                      }
231                    }
232                  },
233                  "loc": {
234                    "start": {
235                      "line": 23,
236                      "column": 9
237                    },
238                    "end": {
239                      "line": 23,
240                      "column": 20
241                    }
242                  }
243                },
244                {
245                  "type": "TSParameterProperty",
246                  "accessibility": "undefined",
247                  "readonly": true,
248                  "override": false,
249                  "static": false,
250                  "export": false,
251                  "parameter": {
252                    "type": "Identifier",
253                    "name": "d",
254                    "loc": {
255                      "start": {
256                        "line": 24,
257                        "column": 18
258                      },
259                      "end": {
260                        "line": 24,
261                        "column": 19
262                      }
263                    }
264                  },
265                  "loc": {
266                    "start": {
267                      "line": 24,
268                      "column": 9
269                    },
270                    "end": {
271                      "line": 24,
272                      "column": 19
273                    }
274                  }
275                },
276                {
277                  "type": "TSParameterProperty",
278                  "accessibility": "public",
279                  "readonly": true,
280                  "override": false,
281                  "static": false,
282                  "export": false,
283                  "parameter": {
284                    "type": "Identifier",
285                    "name": "e",
286                    "loc": {
287                      "start": {
288                        "line": 25,
289                        "column": 25
290                      },
291                      "end": {
292                        "line": 25,
293                        "column": 26
294                      }
295                    }
296                  },
297                  "loc": {
298                    "start": {
299                      "line": 25,
300                      "column": 9
301                    },
302                    "end": {
303                      "line": 25,
304                      "column": 26
305                    }
306                  }
307                },
308                {
309                  "type": "TSParameterProperty",
310                  "accessibility": "private",
311                  "readonly": true,
312                  "override": false,
313                  "static": false,
314                  "export": false,
315                  "parameter": {
316                    "type": "Identifier",
317                    "name": "f",
318                    "loc": {
319                      "start": {
320                        "line": 26,
321                        "column": 26
322                      },
323                      "end": {
324                        "line": 26,
325                        "column": 27
326                      }
327                    }
328                  },
329                  "loc": {
330                    "start": {
331                      "line": 26,
332                      "column": 9
333                    },
334                    "end": {
335                      "line": 26,
336                      "column": 27
337                    }
338                  }
339                },
340                {
341                  "type": "TSParameterProperty",
342                  "accessibility": "protected",
343                  "readonly": true,
344                  "override": false,
345                  "static": false,
346                  "export": false,
347                  "parameter": {
348                    "type": "Identifier",
349                    "name": "g",
350                    "loc": {
351                      "start": {
352                        "line": 27,
353                        "column": 28
354                      },
355                      "end": {
356                        "line": 27,
357                        "column": 29
358                      }
359                    }
360                  },
361                  "loc": {
362                    "start": {
363                      "line": 27,
364                      "column": 9
365                    },
366                    "end": {
367                      "line": 27,
368                      "column": 29
369                    }
370                  }
371                },
372                {
373                  "type": "TSParameterProperty",
374                  "accessibility": "public",
375                  "readonly": true,
376                  "override": false,
377                  "static": false,
378                  "export": false,
379                  "parameter": {
380                    "type": "AssignmentPattern",
381                    "left": {
382                      "type": "Identifier",
383                      "name": "readonly",
384                      "typeAnnotation": {
385                        "type": "TSBooleanKeyword",
386                        "loc": {
387                          "start": {
388                            "line": 28,
389                            "column": 35
390                          },
391                          "end": {
392                            "line": 28,
393                            "column": 42
394                          }
395                        }
396                      },
397                      "loc": {
398                        "start": {
399                          "line": 28,
400                          "column": 25
401                        },
402                        "end": {
403                          "line": 28,
404                          "column": 33
405                        }
406                      }
407                    },
408                    "right": {
409                      "type": "BooleanLiteral",
410                      "value": false,
411                      "loc": {
412                        "start": {
413                          "line": 28,
414                          "column": 45
415                        },
416                        "end": {
417                          "line": 28,
418                          "column": 50
419                        }
420                      }
421                    },
422                    "loc": {
423                      "start": {
424                        "line": 28,
425                        "column": 25
426                      },
427                      "end": {
428                        "line": 28,
429                        "column": 50
430                      }
431                    }
432                  },
433                  "loc": {
434                    "start": {
435                      "line": 28,
436                      "column": 9
437                    },
438                    "end": {
439                      "line": 28,
440                      "column": 50
441                    }
442                  }
443                },
444                {
445                  "type": "ArrayPattern",
446                  "elements": [
447                    {
448                      "type": "Identifier",
449                      "name": "h",
450                      "loc": {
451                        "start": {
452                          "line": 29,
453                          "column": 10
454                        },
455                        "end": {
456                          "line": 29,
457                          "column": 11
458                        }
459                      }
460                    }
461                  ],
462                  "loc": {
463                    "start": {
464                      "line": 29,
465                      "column": 9
466                    },
467                    "end": {
468                      "line": 29,
469                      "column": 12
470                    }
471                  }
472                },
473                {
474                  "type": "ObjectPattern",
475                  "properties": [
476                    {
477                      "type": "Property",
478                      "method": false,
479                      "shorthand": true,
480                      "computed": false,
481                      "key": {
482                        "type": "Identifier",
483                        "name": "i",
484                        "loc": {
485                          "start": {
486                            "line": 30,
487                            "column": 11
488                          },
489                          "end": {
490                            "line": 30,
491                            "column": 12
492                          }
493                        }
494                      },
495                      "value": {
496                        "type": "Identifier",
497                        "name": "i",
498                        "loc": {
499                          "start": {
500                            "line": 30,
501                            "column": 11
502                          },
503                          "end": {
504                            "line": 30,
505                            "column": 12
506                          }
507                        }
508                      },
509                      "kind": "init",
510                      "loc": {
511                        "start": {
512                          "line": 30,
513                          "column": 11
514                        },
515                        "end": {
516                          "line": 30,
517                          "column": 12
518                        }
519                      }
520                    }
521                  ],
522                  "loc": {
523                    "start": {
524                      "line": 30,
525                      "column": 9
526                    },
527                    "end": {
528                      "line": 30,
529                      "column": 14
530                    }
531                  }
532                },
533                {
534                  "type": "AssignmentPattern",
535                  "left": {
536                    "type": "ArrayPattern",
537                    "elements": [
538                      {
539                        "type": "Identifier",
540                        "name": "j",
541                        "loc": {
542                          "start": {
543                            "line": 31,
544                            "column": 10
545                          },
546                          "end": {
547                            "line": 31,
548                            "column": 11
549                          }
550                        }
551                      }
552                    ],
553                    "loc": {
554                      "start": {
555                        "line": 31,
556                        "column": 9
557                      },
558                      "end": {
559                        "line": 31,
560                        "column": 12
561                      }
562                    }
563                  },
564                  "right": {
565                    "type": "ArrayExpression",
566                    "elements": [
567                      {
568                        "type": "StringLiteral",
569                        "value": "foo",
570                        "loc": {
571                          "start": {
572                            "line": 31,
573                            "column": 16
574                          },
575                          "end": {
576                            "line": 31,
577                            "column": 21
578                          }
579                        }
580                      }
581                    ],
582                    "loc": {
583                      "start": {
584                        "line": 31,
585                        "column": 15
586                      },
587                      "end": {
588                        "line": 31,
589                        "column": 22
590                      }
591                    }
592                  },
593                  "loc": {
594                    "start": {
595                      "line": 31,
596                      "column": 9
597                    },
598                    "end": {
599                      "line": 31,
600                      "column": 22
601                    }
602                  }
603                },
604                {
605                  "type": "AssignmentPattern",
606                  "left": {
607                    "type": "ObjectPattern",
608                    "properties": [
609                      {
610                        "type": "Property",
611                        "method": false,
612                        "shorthand": true,
613                        "computed": false,
614                        "key": {
615                          "type": "Identifier",
616                          "name": "k",
617                          "loc": {
618                            "start": {
619                              "line": 32,
620                              "column": 11
621                            },
622                            "end": {
623                              "line": 32,
624                              "column": 12
625                            }
626                          }
627                        },
628                        "value": {
629                          "type": "Identifier",
630                          "name": "k",
631                          "loc": {
632                            "start": {
633                              "line": 32,
634                              "column": 11
635                            },
636                            "end": {
637                              "line": 32,
638                              "column": 12
639                            }
640                          }
641                        },
642                        "kind": "init",
643                        "loc": {
644                          "start": {
645                            "line": 32,
646                            "column": 11
647                          },
648                          "end": {
649                            "line": 32,
650                            "column": 12
651                          }
652                        }
653                      }
654                    ],
655                    "loc": {
656                      "start": {
657                        "line": 32,
658                        "column": 9
659                      },
660                      "end": {
661                        "line": 32,
662                        "column": 14
663                      }
664                    }
665                  },
666                  "right": {
667                    "type": "ObjectExpression",
668                    "properties": [
669                      {
670                        "type": "Property",
671                        "method": false,
672                        "shorthand": false,
673                        "computed": false,
674                        "key": {
675                          "type": "Identifier",
676                          "name": "k",
677                          "loc": {
678                            "start": {
679                              "line": 32,
680                              "column": 19
681                            },
682                            "end": {
683                              "line": 32,
684                              "column": 20
685                            }
686                          }
687                        },
688                        "value": {
689                          "type": "NumberLiteral",
690                          "value": 5,
691                          "loc": {
692                            "start": {
693                              "line": 32,
694                              "column": 22
695                            },
696                            "end": {
697                              "line": 32,
698                              "column": 23
699                            }
700                          }
701                        },
702                        "kind": "init",
703                        "loc": {
704                          "start": {
705                            "line": 32,
706                            "column": 19
707                          },
708                          "end": {
709                            "line": 32,
710                            "column": 23
711                          }
712                        }
713                      }
714                    ],
715                    "loc": {
716                      "start": {
717                        "line": 32,
718                        "column": 17
719                      },
720                      "end": {
721                        "line": 32,
722                        "column": 25
723                      }
724                    }
725                  },
726                  "loc": {
727                    "start": {
728                      "line": 32,
729                      "column": 9
730                    },
731                    "end": {
732                      "line": 32,
733                      "column": 25
734                    }
735                  }
736                },
737                {
738                  "type": "RestElement",
739                  "argument": {
740                    "type": "Identifier",
741                    "name": "rest",
742                    "loc": {
743                      "start": {
744                        "line": 33,
745                        "column": 12
746                      },
747                      "end": {
748                        "line": 33,
749                        "column": 16
750                      }
751                    }
752                  },
753                  "loc": {
754                    "start": {
755                      "line": 33,
756                      "column": 9
757                    },
758                    "end": {
759                      "line": 33,
760                      "column": 16
761                    }
762                  }
763                }
764              ],
765              "body": {
766                "type": "BlockStatement",
767                "statements": [],
768                "loc": {
769                  "start": {
770                    "line": 33,
771                    "column": 18
772                  },
773                  "end": {
774                    "line": 33,
775                    "column": 21
776                  }
777                }
778              },
779              "loc": {
780                "start": {
781                  "line": 18,
782                  "column": 23
783                },
784                "end": {
785                  "line": 33,
786                  "column": 21
787                }
788              }
789            },
790            "loc": {
791              "start": {
792                "line": 18,
793                "column": 23
794              },
795              "end": {
796                "line": 33,
797                "column": 21
798              }
799            }
800          },
801          "overloads": [],
802          "decorators": [],
803          "annotations": [],
804          "loc": {
805            "start": {
806              "line": 18,
807              "column": 5
808            },
809            "end": {
810              "line": 33,
811              "column": 21
812            }
813          }
814        },
815        "body": [],
816        "indexSignatures": [],
817        "loc": {
818          "start": {
819            "line": 17,
820            "column": 21
821          },
822          "end": {
823            "line": 34,
824            "column": 2
825          }
826        }
827      },
828      "decorators": [],
829      "isAnnotationDeclaration": false,
830      "loc": {
831        "start": {
832          "line": 17,
833          "column": 1
834        },
835        "end": {
836          "line": 34,
837          "column": 2
838        }
839      }
840    },
841    {
842      "type": "ClassDeclaration",
843      "definition": {
844        "id": {
845          "type": "Identifier",
846          "name": "ExampleClass2",
847          "loc": {
848            "start": {
849              "line": 36,
850              "column": 7
851            },
852            "end": {
853              "line": 36,
854              "column": 20
855            }
856          }
857        },
858        "superClass": null,
859        "implements": [],
860        "constructor": {
861          "type": "MethodDefinition",
862          "key": {
863            "type": "Identifier",
864            "name": "constructor",
865            "loc": {
866              "start": {
867                "line": 37,
868                "column": 12
869              },
870              "end": {
871                "line": 37,
872                "column": 23
873              }
874            }
875          },
876          "kind": "constructor",
877          "accessibility": "public",
878          "static": false,
879          "optional": false,
880          "computed": false,
881          "value": {
882            "type": "FunctionExpression",
883            "function": {
884              "type": "ScriptFunction",
885              "id": null,
886              "generator": false,
887              "async": false,
888              "expression": false,
889              "params": [
890                {
891                  "type": "Identifier",
892                  "name": "readonly",
893                  "loc": {
894                    "start": {
895                      "line": 37,
896                      "column": 24
897                    },
898                    "end": {
899                      "line": 37,
900                      "column": 32
901                    }
902                  }
903                }
904              ],
905              "body": {
906                "type": "BlockStatement",
907                "statements": [],
908                "loc": {
909                  "start": {
910                    "line": 37,
911                    "column": 34
912                  },
913                  "end": {
914                    "line": 37,
915                    "column": 37
916                  }
917                }
918              },
919              "loc": {
920                "start": {
921                  "line": 37,
922                  "column": 23
923                },
924                "end": {
925                  "line": 37,
926                  "column": 37
927                }
928              }
929            },
930            "loc": {
931              "start": {
932                "line": 37,
933                "column": 23
934              },
935              "end": {
936                "line": 37,
937                "column": 37
938              }
939            }
940          },
941          "overloads": [],
942          "decorators": [],
943          "annotations": [],
944          "loc": {
945            "start": {
946              "line": 37,
947              "column": 5
948            },
949            "end": {
950              "line": 37,
951              "column": 37
952            }
953          }
954        },
955        "body": [],
956        "indexSignatures": [],
957        "loc": {
958          "start": {
959            "line": 36,
960            "column": 21
961          },
962          "end": {
963            "line": 38,
964            "column": 2
965          }
966        }
967      },
968      "decorators": [],
969      "isAnnotationDeclaration": false,
970      "loc": {
971        "start": {
972          "line": 36,
973          "column": 1
974        },
975        "end": {
976          "line": 38,
977          "column": 2
978        }
979      }
980    },
981    {
982      "type": "ClassDeclaration",
983      "definition": {
984        "id": {
985          "type": "Identifier",
986          "name": "ExampleClass3",
987          "loc": {
988            "start": {
989              "line": 40,
990              "column": 7
991            },
992            "end": {
993              "line": 40,
994              "column": 20
995            }
996          }
997        },
998        "superClass": null,
999        "implements": [],
1000        "constructor": {
1001          "type": "MethodDefinition",
1002          "key": {
1003            "type": "Identifier",
1004            "name": "constructor",
1005            "loc": {
1006              "start": {
1007                "line": 41,
1008                "column": 12
1009              },
1010              "end": {
1011                "line": 41,
1012                "column": 23
1013              }
1014            }
1015          },
1016          "kind": "constructor",
1017          "accessibility": "public",
1018          "static": false,
1019          "optional": false,
1020          "computed": false,
1021          "value": {
1022            "type": "FunctionExpression",
1023            "function": {
1024              "type": "ScriptFunction",
1025              "id": null,
1026              "generator": false,
1027              "async": false,
1028              "expression": false,
1029              "params": [
1030                {
1031                  "type": "TSParameterProperty",
1032                  "accessibility": "public",
1033                  "readonly": false,
1034                  "override": false,
1035                  "static": false,
1036                  "export": false,
1037                  "parameter": {
1038                    "type": "Identifier",
1039                    "name": "readonly",
1040                    "loc": {
1041                      "start": {
1042                        "line": 41,
1043                        "column": 31
1044                      },
1045                      "end": {
1046                        "line": 41,
1047                        "column": 39
1048                      }
1049                    }
1050                  },
1051                  "loc": {
1052                    "start": {
1053                      "line": 41,
1054                      "column": 24
1055                    },
1056                    "end": {
1057                      "line": 41,
1058                      "column": 39
1059                    }
1060                  }
1061                }
1062              ],
1063              "body": {
1064                "type": "BlockStatement",
1065                "statements": [],
1066                "loc": {
1067                  "start": {
1068                    "line": 41,
1069                    "column": 41
1070                  },
1071                  "end": {
1072                    "line": 41,
1073                    "column": 44
1074                  }
1075                }
1076              },
1077              "loc": {
1078                "start": {
1079                  "line": 41,
1080                  "column": 23
1081                },
1082                "end": {
1083                  "line": 41,
1084                  "column": 44
1085                }
1086              }
1087            },
1088            "loc": {
1089              "start": {
1090                "line": 41,
1091                "column": 23
1092              },
1093              "end": {
1094                "line": 41,
1095                "column": 44
1096              }
1097            }
1098          },
1099          "overloads": [],
1100          "decorators": [],
1101          "annotations": [],
1102          "loc": {
1103            "start": {
1104              "line": 41,
1105              "column": 5
1106            },
1107            "end": {
1108              "line": 41,
1109              "column": 44
1110            }
1111          }
1112        },
1113        "body": [],
1114        "indexSignatures": [],
1115        "loc": {
1116          "start": {
1117            "line": 40,
1118            "column": 21
1119          },
1120          "end": {
1121            "line": 42,
1122            "column": 2
1123          }
1124        }
1125      },
1126      "decorators": [],
1127      "isAnnotationDeclaration": false,
1128      "loc": {
1129        "start": {
1130          "line": 40,
1131          "column": 1
1132        },
1133        "end": {
1134          "line": 42,
1135          "column": 2
1136        }
1137      }
1138    },
1139    {
1140      "type": "ClassDeclaration",
1141      "definition": {
1142        "id": {
1143          "type": "Identifier",
1144          "name": "ExampleClass4",
1145          "loc": {
1146            "start": {
1147              "line": 44,
1148              "column": 7
1149            },
1150            "end": {
1151              "line": 44,
1152              "column": 20
1153            }
1154          }
1155        },
1156        "superClass": null,
1157        "implements": [],
1158        "constructor": {
1159          "type": "MethodDefinition",
1160          "key": {
1161            "type": "Identifier",
1162            "name": "constructor",
1163            "loc": {
1164              "start": {
1165                "line": 45,
1166                "column": 12
1167              },
1168              "end": {
1169                "line": 45,
1170                "column": 23
1171              }
1172            }
1173          },
1174          "kind": "constructor",
1175          "accessibility": "public",
1176          "static": false,
1177          "optional": false,
1178          "computed": false,
1179          "value": {
1180            "type": "FunctionExpression",
1181            "function": {
1182              "type": "ScriptFunction",
1183              "id": null,
1184              "generator": false,
1185              "async": false,
1186              "expression": false,
1187              "params": [
1188                {
1189                  "type": "TSParameterProperty",
1190                  "accessibility": "undefined",
1191                  "readonly": true,
1192                  "override": false,
1193                  "static": false,
1194                  "export": false,
1195                  "parameter": {
1196                    "type": "Identifier",
1197                    "name": "readonly",
1198                    "loc": {
1199                      "start": {
1200                        "line": 45,
1201                        "column": 33
1202                      },
1203                      "end": {
1204                        "line": 45,
1205                        "column": 41
1206                      }
1207                    }
1208                  },
1209                  "loc": {
1210                    "start": {
1211                      "line": 45,
1212                      "column": 24
1213                    },
1214                    "end": {
1215                      "line": 45,
1216                      "column": 41
1217                    }
1218                  }
1219                }
1220              ],
1221              "body": {
1222                "type": "BlockStatement",
1223                "statements": [],
1224                "loc": {
1225                  "start": {
1226                    "line": 45,
1227                    "column": 43
1228                  },
1229                  "end": {
1230                    "line": 45,
1231                    "column": 46
1232                  }
1233                }
1234              },
1235              "loc": {
1236                "start": {
1237                  "line": 45,
1238                  "column": 23
1239                },
1240                "end": {
1241                  "line": 45,
1242                  "column": 46
1243                }
1244              }
1245            },
1246            "loc": {
1247              "start": {
1248                "line": 45,
1249                "column": 23
1250              },
1251              "end": {
1252                "line": 45,
1253                "column": 46
1254              }
1255            }
1256          },
1257          "overloads": [],
1258          "decorators": [],
1259          "annotations": [],
1260          "loc": {
1261            "start": {
1262              "line": 45,
1263              "column": 5
1264            },
1265            "end": {
1266              "line": 45,
1267              "column": 46
1268            }
1269          }
1270        },
1271        "body": [],
1272        "indexSignatures": [],
1273        "loc": {
1274          "start": {
1275            "line": 44,
1276            "column": 21
1277          },
1278          "end": {
1279            "line": 46,
1280            "column": 2
1281          }
1282        }
1283      },
1284      "decorators": [],
1285      "isAnnotationDeclaration": false,
1286      "loc": {
1287        "start": {
1288          "line": 44,
1289          "column": 1
1290        },
1291        "end": {
1292          "line": 46,
1293          "column": 2
1294        }
1295      }
1296    }
1297  ],
1298  "loc": {
1299    "start": {
1300      "line": 1,
1301      "column": 1
1302    },
1303    "end": {
1304      "line": 46,
1305      "column": 2
1306    }
1307  }
1308}
1309