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