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