13af6ab5fSopenharmony_ci{
23af6ab5fSopenharmony_ci  "type": "Program",
33af6ab5fSopenharmony_ci  "statements": [
43af6ab5fSopenharmony_ci    {
53af6ab5fSopenharmony_ci      "type": "TSInterfaceDeclaration",
63af6ab5fSopenharmony_ci      "body": {
73af6ab5fSopenharmony_ci        "type": "TSInterfaceBody",
83af6ab5fSopenharmony_ci        "body": [
93af6ab5fSopenharmony_ci          {
103af6ab5fSopenharmony_ci            "type": "TSPropertySignature",
113af6ab5fSopenharmony_ci            "computed": false,
123af6ab5fSopenharmony_ci            "optional": true,
133af6ab5fSopenharmony_ci            "readonly": false,
143af6ab5fSopenharmony_ci            "key": {
153af6ab5fSopenharmony_ci              "type": "Identifier",
163af6ab5fSopenharmony_ci              "name": "a",
173af6ab5fSopenharmony_ci              "decorators": [],
183af6ab5fSopenharmony_ci              "loc": {
193af6ab5fSopenharmony_ci                "start": {
203af6ab5fSopenharmony_ci                  "line": 18,
213af6ab5fSopenharmony_ci                  "column": 5
223af6ab5fSopenharmony_ci                },
233af6ab5fSopenharmony_ci                "end": {
243af6ab5fSopenharmony_ci                  "line": 18,
253af6ab5fSopenharmony_ci                  "column": 6
263af6ab5fSopenharmony_ci                }
273af6ab5fSopenharmony_ci              }
283af6ab5fSopenharmony_ci            },
293af6ab5fSopenharmony_ci            "typeAnnotation": {
303af6ab5fSopenharmony_ci              "type": "TSNumberKeyword",
313af6ab5fSopenharmony_ci              "loc": {
323af6ab5fSopenharmony_ci                "start": {
333af6ab5fSopenharmony_ci                  "line": 18,
343af6ab5fSopenharmony_ci                  "column": 9
353af6ab5fSopenharmony_ci                },
363af6ab5fSopenharmony_ci                "end": {
373af6ab5fSopenharmony_ci                  "line": 18,
383af6ab5fSopenharmony_ci                  "column": 15
393af6ab5fSopenharmony_ci                }
403af6ab5fSopenharmony_ci              }
413af6ab5fSopenharmony_ci            },
423af6ab5fSopenharmony_ci            "loc": {
433af6ab5fSopenharmony_ci              "start": {
443af6ab5fSopenharmony_ci                "line": 18,
453af6ab5fSopenharmony_ci                "column": 5
463af6ab5fSopenharmony_ci              },
473af6ab5fSopenharmony_ci              "end": {
483af6ab5fSopenharmony_ci                "line": 18,
493af6ab5fSopenharmony_ci                "column": 16
503af6ab5fSopenharmony_ci              }
513af6ab5fSopenharmony_ci            }
523af6ab5fSopenharmony_ci          },
533af6ab5fSopenharmony_ci          {
543af6ab5fSopenharmony_ci            "type": "TSPropertySignature",
553af6ab5fSopenharmony_ci            "computed": false,
563af6ab5fSopenharmony_ci            "optional": false,
573af6ab5fSopenharmony_ci            "readonly": false,
583af6ab5fSopenharmony_ci            "key": {
593af6ab5fSopenharmony_ci              "type": "Identifier",
603af6ab5fSopenharmony_ci              "name": "b",
613af6ab5fSopenharmony_ci              "decorators": [],
623af6ab5fSopenharmony_ci              "loc": {
633af6ab5fSopenharmony_ci                "start": {
643af6ab5fSopenharmony_ci                  "line": 19,
653af6ab5fSopenharmony_ci                  "column": 5
663af6ab5fSopenharmony_ci                },
673af6ab5fSopenharmony_ci                "end": {
683af6ab5fSopenharmony_ci                  "line": 19,
693af6ab5fSopenharmony_ci                  "column": 6
703af6ab5fSopenharmony_ci                }
713af6ab5fSopenharmony_ci              }
723af6ab5fSopenharmony_ci            },
733af6ab5fSopenharmony_ci            "typeAnnotation": {
743af6ab5fSopenharmony_ci              "type": "TSUnionType",
753af6ab5fSopenharmony_ci              "types": [
763af6ab5fSopenharmony_ci                {
773af6ab5fSopenharmony_ci                  "type": "TSStringKeyword",
783af6ab5fSopenharmony_ci                  "loc": {
793af6ab5fSopenharmony_ci                    "start": {
803af6ab5fSopenharmony_ci                      "line": 19,
813af6ab5fSopenharmony_ci                      "column": 8
823af6ab5fSopenharmony_ci                    },
833af6ab5fSopenharmony_ci                    "end": {
843af6ab5fSopenharmony_ci                      "line": 19,
853af6ab5fSopenharmony_ci                      "column": 14
863af6ab5fSopenharmony_ci                    }
873af6ab5fSopenharmony_ci                  }
883af6ab5fSopenharmony_ci                },
893af6ab5fSopenharmony_ci                {
903af6ab5fSopenharmony_ci                  "type": "TSBooleanKeyword",
913af6ab5fSopenharmony_ci                  "loc": {
923af6ab5fSopenharmony_ci                    "start": {
933af6ab5fSopenharmony_ci                      "line": 19,
943af6ab5fSopenharmony_ci                      "column": 17
953af6ab5fSopenharmony_ci                    },
963af6ab5fSopenharmony_ci                    "end": {
973af6ab5fSopenharmony_ci                      "line": 19,
983af6ab5fSopenharmony_ci                      "column": 24
993af6ab5fSopenharmony_ci                    }
1003af6ab5fSopenharmony_ci                  }
1013af6ab5fSopenharmony_ci                }
1023af6ab5fSopenharmony_ci              ],
1033af6ab5fSopenharmony_ci              "loc": {
1043af6ab5fSopenharmony_ci                "start": {
1053af6ab5fSopenharmony_ci                  "line": 19,
1063af6ab5fSopenharmony_ci                  "column": 8
1073af6ab5fSopenharmony_ci                },
1083af6ab5fSopenharmony_ci                "end": {
1093af6ab5fSopenharmony_ci                  "line": 19,
1103af6ab5fSopenharmony_ci                  "column": 24
1113af6ab5fSopenharmony_ci                }
1123af6ab5fSopenharmony_ci              }
1133af6ab5fSopenharmony_ci            },
1143af6ab5fSopenharmony_ci            "loc": {
1153af6ab5fSopenharmony_ci              "start": {
1163af6ab5fSopenharmony_ci                "line": 19,
1173af6ab5fSopenharmony_ci                "column": 5
1183af6ab5fSopenharmony_ci              },
1193af6ab5fSopenharmony_ci              "end": {
1203af6ab5fSopenharmony_ci                "line": 19,
1213af6ab5fSopenharmony_ci                "column": 25
1223af6ab5fSopenharmony_ci              }
1233af6ab5fSopenharmony_ci            }
1243af6ab5fSopenharmony_ci          },
1253af6ab5fSopenharmony_ci          {
1263af6ab5fSopenharmony_ci            "type": "TSMethodSignature",
1273af6ab5fSopenharmony_ci            "computed": false,
1283af6ab5fSopenharmony_ci            "optional": false,
1293af6ab5fSopenharmony_ci            "key": {
1303af6ab5fSopenharmony_ci              "type": "Identifier",
1313af6ab5fSopenharmony_ci              "name": "c",
1323af6ab5fSopenharmony_ci              "decorators": [],
1333af6ab5fSopenharmony_ci              "loc": {
1343af6ab5fSopenharmony_ci                "start": {
1353af6ab5fSopenharmony_ci                  "line": 20,
1363af6ab5fSopenharmony_ci                  "column": 5
1373af6ab5fSopenharmony_ci                },
1383af6ab5fSopenharmony_ci                "end": {
1393af6ab5fSopenharmony_ci                  "line": 20,
1403af6ab5fSopenharmony_ci                  "column": 6
1413af6ab5fSopenharmony_ci                }
1423af6ab5fSopenharmony_ci              }
1433af6ab5fSopenharmony_ci            },
1443af6ab5fSopenharmony_ci            "params": [
1453af6ab5fSopenharmony_ci              {
1463af6ab5fSopenharmony_ci                "type": "Identifier",
1473af6ab5fSopenharmony_ci                "name": "a",
1483af6ab5fSopenharmony_ci                "typeAnnotation": {
1493af6ab5fSopenharmony_ci                  "type": "TSFunctionType",
1503af6ab5fSopenharmony_ci                  "params": [
1513af6ab5fSopenharmony_ci                    {
1523af6ab5fSopenharmony_ci                      "type": "Identifier",
1533af6ab5fSopenharmony_ci                      "name": "a",
1543af6ab5fSopenharmony_ci                      "typeAnnotation": {
1553af6ab5fSopenharmony_ci                        "type": "TSNumberKeyword",
1563af6ab5fSopenharmony_ci                        "loc": {
1573af6ab5fSopenharmony_ci                          "start": {
1583af6ab5fSopenharmony_ci                            "line": 20,
1593af6ab5fSopenharmony_ci                            "column": 14
1603af6ab5fSopenharmony_ci                          },
1613af6ab5fSopenharmony_ci                          "end": {
1623af6ab5fSopenharmony_ci                            "line": 20,
1633af6ab5fSopenharmony_ci                            "column": 20
1643af6ab5fSopenharmony_ci                          }
1653af6ab5fSopenharmony_ci                        }
1663af6ab5fSopenharmony_ci                      },
1673af6ab5fSopenharmony_ci                      "decorators": [],
1683af6ab5fSopenharmony_ci                      "loc": {
1693af6ab5fSopenharmony_ci                        "start": {
1703af6ab5fSopenharmony_ci                          "line": 20,
1713af6ab5fSopenharmony_ci                          "column": 11
1723af6ab5fSopenharmony_ci                        },
1733af6ab5fSopenharmony_ci                        "end": {
1743af6ab5fSopenharmony_ci                          "line": 20,
1753af6ab5fSopenharmony_ci                          "column": 12
1763af6ab5fSopenharmony_ci                        }
1773af6ab5fSopenharmony_ci                      }
1783af6ab5fSopenharmony_ci                    },
1793af6ab5fSopenharmony_ci                    {
1803af6ab5fSopenharmony_ci                      "type": "Identifier",
1813af6ab5fSopenharmony_ci                      "name": "b",
1823af6ab5fSopenharmony_ci                      "typeAnnotation": {
1833af6ab5fSopenharmony_ci                        "type": "TSVoidKeyword",
1843af6ab5fSopenharmony_ci                        "loc": {
1853af6ab5fSopenharmony_ci                          "start": {
1863af6ab5fSopenharmony_ci                            "line": 20,
1873af6ab5fSopenharmony_ci                            "column": 25
1883af6ab5fSopenharmony_ci                          },
1893af6ab5fSopenharmony_ci                          "end": {
1903af6ab5fSopenharmony_ci                            "line": 20,
1913af6ab5fSopenharmony_ci                            "column": 29
1923af6ab5fSopenharmony_ci                          }
1933af6ab5fSopenharmony_ci                        }
1943af6ab5fSopenharmony_ci                      },
1953af6ab5fSopenharmony_ci                      "decorators": [],
1963af6ab5fSopenharmony_ci                      "loc": {
1973af6ab5fSopenharmony_ci                        "start": {
1983af6ab5fSopenharmony_ci                          "line": 20,
1993af6ab5fSopenharmony_ci                          "column": 22
2003af6ab5fSopenharmony_ci                        },
2013af6ab5fSopenharmony_ci                        "end": {
2023af6ab5fSopenharmony_ci                          "line": 20,
2033af6ab5fSopenharmony_ci                          "column": 23
2043af6ab5fSopenharmony_ci                        }
2053af6ab5fSopenharmony_ci                      }
2063af6ab5fSopenharmony_ci                    }
2073af6ab5fSopenharmony_ci                  ],
2083af6ab5fSopenharmony_ci                  "returnType": {
2093af6ab5fSopenharmony_ci                    "type": "TSStringKeyword",
2103af6ab5fSopenharmony_ci                    "loc": {
2113af6ab5fSopenharmony_ci                      "start": {
2123af6ab5fSopenharmony_ci                        "line": 20,
2133af6ab5fSopenharmony_ci                        "column": 34
2143af6ab5fSopenharmony_ci                      },
2153af6ab5fSopenharmony_ci                      "end": {
2163af6ab5fSopenharmony_ci                        "line": 20,
2173af6ab5fSopenharmony_ci                        "column": 40
2183af6ab5fSopenharmony_ci                      }
2193af6ab5fSopenharmony_ci                    }
2203af6ab5fSopenharmony_ci                  },
2213af6ab5fSopenharmony_ci                  "loc": {
2223af6ab5fSopenharmony_ci                    "start": {
2233af6ab5fSopenharmony_ci                      "line": 20,
2243af6ab5fSopenharmony_ci                      "column": 10
2253af6ab5fSopenharmony_ci                    },
2263af6ab5fSopenharmony_ci                    "end": {
2273af6ab5fSopenharmony_ci                      "line": 20,
2283af6ab5fSopenharmony_ci                      "column": 40
2293af6ab5fSopenharmony_ci                    }
2303af6ab5fSopenharmony_ci                  }
2313af6ab5fSopenharmony_ci                },
2323af6ab5fSopenharmony_ci                "decorators": [],
2333af6ab5fSopenharmony_ci                "loc": {
2343af6ab5fSopenharmony_ci                  "start": {
2353af6ab5fSopenharmony_ci                    "line": 20,
2363af6ab5fSopenharmony_ci                    "column": 7
2373af6ab5fSopenharmony_ci                  },
2383af6ab5fSopenharmony_ci                  "end": {
2393af6ab5fSopenharmony_ci                    "line": 20,
2403af6ab5fSopenharmony_ci                    "column": 8
2413af6ab5fSopenharmony_ci                  }
2423af6ab5fSopenharmony_ci                }
2433af6ab5fSopenharmony_ci              },
2443af6ab5fSopenharmony_ci              {
2453af6ab5fSopenharmony_ci                "type": "Identifier",
2463af6ab5fSopenharmony_ci                "name": "b",
2473af6ab5fSopenharmony_ci                "typeAnnotation": {
2483af6ab5fSopenharmony_ci                  "type": "TSArrayType",
2493af6ab5fSopenharmony_ci                  "elementType": {
2503af6ab5fSopenharmony_ci                    "type": "TSNumberKeyword",
2513af6ab5fSopenharmony_ci                    "loc": {
2523af6ab5fSopenharmony_ci                      "start": {
2533af6ab5fSopenharmony_ci                        "line": 20,
2543af6ab5fSopenharmony_ci                        "column": 46
2553af6ab5fSopenharmony_ci                      },
2563af6ab5fSopenharmony_ci                      "end": {
2573af6ab5fSopenharmony_ci                        "line": 20,
2583af6ab5fSopenharmony_ci                        "column": 52
2593af6ab5fSopenharmony_ci                      }
2603af6ab5fSopenharmony_ci                    }
2613af6ab5fSopenharmony_ci                  },
2623af6ab5fSopenharmony_ci                  "loc": {
2633af6ab5fSopenharmony_ci                    "start": {
2643af6ab5fSopenharmony_ci                      "line": 20,
2653af6ab5fSopenharmony_ci                      "column": 46
2663af6ab5fSopenharmony_ci                    },
2673af6ab5fSopenharmony_ci                    "end": {
2683af6ab5fSopenharmony_ci                      "line": 20,
2693af6ab5fSopenharmony_ci                      "column": 54
2703af6ab5fSopenharmony_ci                    }
2713af6ab5fSopenharmony_ci                  }
2723af6ab5fSopenharmony_ci                },
2733af6ab5fSopenharmony_ci                "optional": true,
2743af6ab5fSopenharmony_ci                "decorators": [],
2753af6ab5fSopenharmony_ci                "loc": {
2763af6ab5fSopenharmony_ci                  "start": {
2773af6ab5fSopenharmony_ci                    "line": 20,
2783af6ab5fSopenharmony_ci                    "column": 42
2793af6ab5fSopenharmony_ci                  },
2803af6ab5fSopenharmony_ci                  "end": {
2813af6ab5fSopenharmony_ci                    "line": 20,
2823af6ab5fSopenharmony_ci                    "column": 43
2833af6ab5fSopenharmony_ci                  }
2843af6ab5fSopenharmony_ci                }
2853af6ab5fSopenharmony_ci              }
2863af6ab5fSopenharmony_ci            ],
2873af6ab5fSopenharmony_ci            "typeAnnotation": {
2883af6ab5fSopenharmony_ci              "type": "TSUndefinedKeyword",
2893af6ab5fSopenharmony_ci              "loc": {
2903af6ab5fSopenharmony_ci                "start": {
2913af6ab5fSopenharmony_ci                  "line": 20,
2923af6ab5fSopenharmony_ci                  "column": 57
2933af6ab5fSopenharmony_ci                },
2943af6ab5fSopenharmony_ci                "end": {
2953af6ab5fSopenharmony_ci                  "line": 20,
2963af6ab5fSopenharmony_ci                  "column": 66
2973af6ab5fSopenharmony_ci                }
2983af6ab5fSopenharmony_ci              }
2993af6ab5fSopenharmony_ci            },
3003af6ab5fSopenharmony_ci            "loc": {
3013af6ab5fSopenharmony_ci              "start": {
3023af6ab5fSopenharmony_ci                "line": 20,
3033af6ab5fSopenharmony_ci                "column": 5
3043af6ab5fSopenharmony_ci              },
3053af6ab5fSopenharmony_ci              "end": {
3063af6ab5fSopenharmony_ci                "line": 20,
3073af6ab5fSopenharmony_ci                "column": 67
3083af6ab5fSopenharmony_ci              }
3093af6ab5fSopenharmony_ci            }
3103af6ab5fSopenharmony_ci          },
3113af6ab5fSopenharmony_ci          {
3123af6ab5fSopenharmony_ci            "type": "TSCallSignatureDeclaration",
3133af6ab5fSopenharmony_ci            "params": [
3143af6ab5fSopenharmony_ci              {
3153af6ab5fSopenharmony_ci                "type": "Identifier",
3163af6ab5fSopenharmony_ci                "name": "a",
3173af6ab5fSopenharmony_ci                "typeAnnotation": {
3183af6ab5fSopenharmony_ci                  "type": "TSStringKeyword",
3193af6ab5fSopenharmony_ci                  "loc": {
3203af6ab5fSopenharmony_ci                    "start": {
3213af6ab5fSopenharmony_ci                      "line": 21,
3223af6ab5fSopenharmony_ci                      "column": 9
3233af6ab5fSopenharmony_ci                    },
3243af6ab5fSopenharmony_ci                    "end": {
3253af6ab5fSopenharmony_ci                      "line": 21,
3263af6ab5fSopenharmony_ci                      "column": 15
3273af6ab5fSopenharmony_ci                    }
3283af6ab5fSopenharmony_ci                  }
3293af6ab5fSopenharmony_ci                },
3303af6ab5fSopenharmony_ci                "decorators": [],
3313af6ab5fSopenharmony_ci                "loc": {
3323af6ab5fSopenharmony_ci                  "start": {
3333af6ab5fSopenharmony_ci                    "line": 21,
3343af6ab5fSopenharmony_ci                    "column": 6
3353af6ab5fSopenharmony_ci                  },
3363af6ab5fSopenharmony_ci                  "end": {
3373af6ab5fSopenharmony_ci                    "line": 21,
3383af6ab5fSopenharmony_ci                    "column": 7
3393af6ab5fSopenharmony_ci                  }
3403af6ab5fSopenharmony_ci                }
3413af6ab5fSopenharmony_ci              }
3423af6ab5fSopenharmony_ci            ],
3433af6ab5fSopenharmony_ci            "returnType": {
3443af6ab5fSopenharmony_ci              "type": "TSStringKeyword",
3453af6ab5fSopenharmony_ci              "loc": {
3463af6ab5fSopenharmony_ci                "start": {
3473af6ab5fSopenharmony_ci                  "line": 21,
3483af6ab5fSopenharmony_ci                  "column": 18
3493af6ab5fSopenharmony_ci                },
3503af6ab5fSopenharmony_ci                "end": {
3513af6ab5fSopenharmony_ci                  "line": 21,
3523af6ab5fSopenharmony_ci                  "column": 24
3533af6ab5fSopenharmony_ci                }
3543af6ab5fSopenharmony_ci              }
3553af6ab5fSopenharmony_ci            },
3563af6ab5fSopenharmony_ci            "loc": {
3573af6ab5fSopenharmony_ci              "start": {
3583af6ab5fSopenharmony_ci                "line": 21,
3593af6ab5fSopenharmony_ci                "column": 5
3603af6ab5fSopenharmony_ci              },
3613af6ab5fSopenharmony_ci              "end": {
3623af6ab5fSopenharmony_ci                "line": 21,
3633af6ab5fSopenharmony_ci                "column": 25
3643af6ab5fSopenharmony_ci              }
3653af6ab5fSopenharmony_ci            }
3663af6ab5fSopenharmony_ci          },
3673af6ab5fSopenharmony_ci          {
3683af6ab5fSopenharmony_ci            "type": "TSCallSignatureDeclaration",
3693af6ab5fSopenharmony_ci            "params": [
3703af6ab5fSopenharmony_ci              {
3713af6ab5fSopenharmony_ci                "type": "Identifier",
3723af6ab5fSopenharmony_ci                "name": "a",
3733af6ab5fSopenharmony_ci                "typeAnnotation": {
3743af6ab5fSopenharmony_ci                  "type": "TSNumberKeyword",
3753af6ab5fSopenharmony_ci                  "loc": {
3763af6ab5fSopenharmony_ci                    "start": {
3773af6ab5fSopenharmony_ci                      "line": 22,
3783af6ab5fSopenharmony_ci                      "column": 9
3793af6ab5fSopenharmony_ci                    },
3803af6ab5fSopenharmony_ci                    "end": {
3813af6ab5fSopenharmony_ci                      "line": 22,
3823af6ab5fSopenharmony_ci                      "column": 15
3833af6ab5fSopenharmony_ci                    }
3843af6ab5fSopenharmony_ci                  }
3853af6ab5fSopenharmony_ci                },
3863af6ab5fSopenharmony_ci                "decorators": [],
3873af6ab5fSopenharmony_ci                "loc": {
3883af6ab5fSopenharmony_ci                  "start": {
3893af6ab5fSopenharmony_ci                    "line": 22,
3903af6ab5fSopenharmony_ci                    "column": 6
3913af6ab5fSopenharmony_ci                  },
3923af6ab5fSopenharmony_ci                  "end": {
3933af6ab5fSopenharmony_ci                    "line": 22,
3943af6ab5fSopenharmony_ci                    "column": 7
3953af6ab5fSopenharmony_ci                  }
3963af6ab5fSopenharmony_ci                }
3973af6ab5fSopenharmony_ci              }
3983af6ab5fSopenharmony_ci            ],
3993af6ab5fSopenharmony_ci            "returnType": {
4003af6ab5fSopenharmony_ci              "type": "TSNumberKeyword",
4013af6ab5fSopenharmony_ci              "loc": {
4023af6ab5fSopenharmony_ci                "start": {
4033af6ab5fSopenharmony_ci                  "line": 22,
4043af6ab5fSopenharmony_ci                  "column": 18
4053af6ab5fSopenharmony_ci                },
4063af6ab5fSopenharmony_ci                "end": {
4073af6ab5fSopenharmony_ci                  "line": 22,
4083af6ab5fSopenharmony_ci                  "column": 24
4093af6ab5fSopenharmony_ci                }
4103af6ab5fSopenharmony_ci              }
4113af6ab5fSopenharmony_ci            },
4123af6ab5fSopenharmony_ci            "loc": {
4133af6ab5fSopenharmony_ci              "start": {
4143af6ab5fSopenharmony_ci                "line": 22,
4153af6ab5fSopenharmony_ci                "column": 5
4163af6ab5fSopenharmony_ci              },
4173af6ab5fSopenharmony_ci              "end": {
4183af6ab5fSopenharmony_ci                "line": 22,
4193af6ab5fSopenharmony_ci                "column": 25
4203af6ab5fSopenharmony_ci              }
4213af6ab5fSopenharmony_ci            }
4223af6ab5fSopenharmony_ci          },
4233af6ab5fSopenharmony_ci          {
4243af6ab5fSopenharmony_ci            "type": "TSConstructSignatureDeclaration",
4253af6ab5fSopenharmony_ci            "params": [
4263af6ab5fSopenharmony_ci              {
4273af6ab5fSopenharmony_ci                "type": "Identifier",
4283af6ab5fSopenharmony_ci                "name": "a",
4293af6ab5fSopenharmony_ci                "typeAnnotation": {
4303af6ab5fSopenharmony_ci                  "type": "TSNullKeyword",
4313af6ab5fSopenharmony_ci                  "loc": {
4323af6ab5fSopenharmony_ci                    "start": {
4333af6ab5fSopenharmony_ci                      "line": 23,
4343af6ab5fSopenharmony_ci                      "column": 12
4353af6ab5fSopenharmony_ci                    },
4363af6ab5fSopenharmony_ci                    "end": {
4373af6ab5fSopenharmony_ci                      "line": 23,
4383af6ab5fSopenharmony_ci                      "column": 16
4393af6ab5fSopenharmony_ci                    }
4403af6ab5fSopenharmony_ci                  }
4413af6ab5fSopenharmony_ci                },
4423af6ab5fSopenharmony_ci                "decorators": [],
4433af6ab5fSopenharmony_ci                "loc": {
4443af6ab5fSopenharmony_ci                  "start": {
4453af6ab5fSopenharmony_ci                    "line": 23,
4463af6ab5fSopenharmony_ci                    "column": 9
4473af6ab5fSopenharmony_ci                  },
4483af6ab5fSopenharmony_ci                  "end": {
4493af6ab5fSopenharmony_ci                    "line": 23,
4503af6ab5fSopenharmony_ci                    "column": 10
4513af6ab5fSopenharmony_ci                  }
4523af6ab5fSopenharmony_ci                }
4533af6ab5fSopenharmony_ci              },
4543af6ab5fSopenharmony_ci              {
4553af6ab5fSopenharmony_ci                "type": "Identifier",
4563af6ab5fSopenharmony_ci                "name": "b",
4573af6ab5fSopenharmony_ci                "typeAnnotation": {
4583af6ab5fSopenharmony_ci                  "type": "TSStringKeyword",
4593af6ab5fSopenharmony_ci                  "loc": {
4603af6ab5fSopenharmony_ci                    "start": {
4613af6ab5fSopenharmony_ci                      "line": 23,
4623af6ab5fSopenharmony_ci                      "column": 22
4633af6ab5fSopenharmony_ci                    },
4643af6ab5fSopenharmony_ci                    "end": {
4653af6ab5fSopenharmony_ci                      "line": 23,
4663af6ab5fSopenharmony_ci                      "column": 28
4673af6ab5fSopenharmony_ci                    }
4683af6ab5fSopenharmony_ci                  }
4693af6ab5fSopenharmony_ci                },
4703af6ab5fSopenharmony_ci                "optional": true,
4713af6ab5fSopenharmony_ci                "decorators": [],
4723af6ab5fSopenharmony_ci                "loc": {
4733af6ab5fSopenharmony_ci                  "start": {
4743af6ab5fSopenharmony_ci                    "line": 23,
4753af6ab5fSopenharmony_ci                    "column": 18
4763af6ab5fSopenharmony_ci                  },
4773af6ab5fSopenharmony_ci                  "end": {
4783af6ab5fSopenharmony_ci                    "line": 23,
4793af6ab5fSopenharmony_ci                    "column": 19
4803af6ab5fSopenharmony_ci                  }
4813af6ab5fSopenharmony_ci                }
4823af6ab5fSopenharmony_ci              }
4833af6ab5fSopenharmony_ci            ],
4843af6ab5fSopenharmony_ci            "returnType": {
4853af6ab5fSopenharmony_ci              "type": "TSTypeLiteral",
4863af6ab5fSopenharmony_ci              "members": [
4873af6ab5fSopenharmony_ci                {
4883af6ab5fSopenharmony_ci                  "type": "TSPropertySignature",
4893af6ab5fSopenharmony_ci                  "computed": false,
4903af6ab5fSopenharmony_ci                  "optional": false,
4913af6ab5fSopenharmony_ci                  "readonly": false,
4923af6ab5fSopenharmony_ci                  "key": {
4933af6ab5fSopenharmony_ci                    "type": "Identifier",
4943af6ab5fSopenharmony_ci                    "name": "a",
4953af6ab5fSopenharmony_ci                    "decorators": [],
4963af6ab5fSopenharmony_ci                    "loc": {
4973af6ab5fSopenharmony_ci                      "start": {
4983af6ab5fSopenharmony_ci                        "line": 23,
4993af6ab5fSopenharmony_ci                        "column": 33
5003af6ab5fSopenharmony_ci                      },
5013af6ab5fSopenharmony_ci                      "end": {
5023af6ab5fSopenharmony_ci                        "line": 23,
5033af6ab5fSopenharmony_ci                        "column": 34
5043af6ab5fSopenharmony_ci                      }
5053af6ab5fSopenharmony_ci                    }
5063af6ab5fSopenharmony_ci                  },
5073af6ab5fSopenharmony_ci                  "typeAnnotation": {
5083af6ab5fSopenharmony_ci                    "type": "TSNumberKeyword",
5093af6ab5fSopenharmony_ci                    "loc": {
5103af6ab5fSopenharmony_ci                      "start": {
5113af6ab5fSopenharmony_ci                        "line": 23,
5123af6ab5fSopenharmony_ci                        "column": 36
5133af6ab5fSopenharmony_ci                      },
5143af6ab5fSopenharmony_ci                      "end": {
5153af6ab5fSopenharmony_ci                        "line": 23,
5163af6ab5fSopenharmony_ci                        "column": 42
5173af6ab5fSopenharmony_ci                      }
5183af6ab5fSopenharmony_ci                    }
5193af6ab5fSopenharmony_ci                  },
5203af6ab5fSopenharmony_ci                  "loc": {
5213af6ab5fSopenharmony_ci                    "start": {
5223af6ab5fSopenharmony_ci                      "line": 23,
5233af6ab5fSopenharmony_ci                      "column": 33
5243af6ab5fSopenharmony_ci                    },
5253af6ab5fSopenharmony_ci                    "end": {
5263af6ab5fSopenharmony_ci                      "line": 23,
5273af6ab5fSopenharmony_ci                      "column": 43
5283af6ab5fSopenharmony_ci                    }
5293af6ab5fSopenharmony_ci                  }
5303af6ab5fSopenharmony_ci                },
5313af6ab5fSopenharmony_ci                {
5323af6ab5fSopenharmony_ci                  "type": "TSPropertySignature",
5333af6ab5fSopenharmony_ci                  "computed": false,
5343af6ab5fSopenharmony_ci                  "optional": false,
5353af6ab5fSopenharmony_ci                  "readonly": false,
5363af6ab5fSopenharmony_ci                  "key": {
5373af6ab5fSopenharmony_ci                    "type": "Identifier",
5383af6ab5fSopenharmony_ci                    "name": "b",
5393af6ab5fSopenharmony_ci                    "decorators": [],
5403af6ab5fSopenharmony_ci                    "loc": {
5413af6ab5fSopenharmony_ci                      "start": {
5423af6ab5fSopenharmony_ci                        "line": 23,
5433af6ab5fSopenharmony_ci                        "column": 44
5443af6ab5fSopenharmony_ci                      },
5453af6ab5fSopenharmony_ci                      "end": {
5463af6ab5fSopenharmony_ci                        "line": 23,
5473af6ab5fSopenharmony_ci                        "column": 45
5483af6ab5fSopenharmony_ci                      }
5493af6ab5fSopenharmony_ci                    }
5503af6ab5fSopenharmony_ci                  },
5513af6ab5fSopenharmony_ci                  "typeAnnotation": {
5523af6ab5fSopenharmony_ci                    "type": "TSStringKeyword",
5533af6ab5fSopenharmony_ci                    "loc": {
5543af6ab5fSopenharmony_ci                      "start": {
5553af6ab5fSopenharmony_ci                        "line": 23,
5563af6ab5fSopenharmony_ci                        "column": 47
5573af6ab5fSopenharmony_ci                      },
5583af6ab5fSopenharmony_ci                      "end": {
5593af6ab5fSopenharmony_ci                        "line": 23,
5603af6ab5fSopenharmony_ci                        "column": 53
5613af6ab5fSopenharmony_ci                      }
5623af6ab5fSopenharmony_ci                    }
5633af6ab5fSopenharmony_ci                  },
5643af6ab5fSopenharmony_ci                  "loc": {
5653af6ab5fSopenharmony_ci                    "start": {
5663af6ab5fSopenharmony_ci                      "line": 23,
5673af6ab5fSopenharmony_ci                      "column": 44
5683af6ab5fSopenharmony_ci                    },
5693af6ab5fSopenharmony_ci                    "end": {
5703af6ab5fSopenharmony_ci                      "line": 23,
5713af6ab5fSopenharmony_ci                      "column": 54
5723af6ab5fSopenharmony_ci                    }
5733af6ab5fSopenharmony_ci                  }
5743af6ab5fSopenharmony_ci                },
5753af6ab5fSopenharmony_ci                {
5763af6ab5fSopenharmony_ci                  "type": "TSMethodSignature",
5773af6ab5fSopenharmony_ci                  "computed": false,
5783af6ab5fSopenharmony_ci                  "optional": true,
5793af6ab5fSopenharmony_ci                  "key": {
5803af6ab5fSopenharmony_ci                    "type": "Identifier",
5813af6ab5fSopenharmony_ci                    "name": "c",
5823af6ab5fSopenharmony_ci                    "decorators": [],
5833af6ab5fSopenharmony_ci                    "loc": {
5843af6ab5fSopenharmony_ci                      "start": {
5853af6ab5fSopenharmony_ci                        "line": 23,
5863af6ab5fSopenharmony_ci                        "column": 55
5873af6ab5fSopenharmony_ci                      },
5883af6ab5fSopenharmony_ci                      "end": {
5893af6ab5fSopenharmony_ci                        "line": 23,
5903af6ab5fSopenharmony_ci                        "column": 56
5913af6ab5fSopenharmony_ci                      }
5923af6ab5fSopenharmony_ci                    }
5933af6ab5fSopenharmony_ci                  },
5943af6ab5fSopenharmony_ci                  "params": [
5953af6ab5fSopenharmony_ci                    {
5963af6ab5fSopenharmony_ci                      "type": "ArrayPattern",
5973af6ab5fSopenharmony_ci                      "elements": [
5983af6ab5fSopenharmony_ci                        {
5993af6ab5fSopenharmony_ci                          "type": "Identifier",
6003af6ab5fSopenharmony_ci                          "name": "a",
6013af6ab5fSopenharmony_ci                          "decorators": [],
6023af6ab5fSopenharmony_ci                          "loc": {
6033af6ab5fSopenharmony_ci                            "start": {
6043af6ab5fSopenharmony_ci                              "line": 23,
6053af6ab5fSopenharmony_ci                              "column": 59
6063af6ab5fSopenharmony_ci                            },
6073af6ab5fSopenharmony_ci                            "end": {
6083af6ab5fSopenharmony_ci                              "line": 23,
6093af6ab5fSopenharmony_ci                              "column": 60
6103af6ab5fSopenharmony_ci                            }
6113af6ab5fSopenharmony_ci                          }
6123af6ab5fSopenharmony_ci                        },
6133af6ab5fSopenharmony_ci                        {
6143af6ab5fSopenharmony_ci                          "type": "Identifier",
6153af6ab5fSopenharmony_ci                          "name": "b",
6163af6ab5fSopenharmony_ci                          "decorators": [],
6173af6ab5fSopenharmony_ci                          "loc": {
6183af6ab5fSopenharmony_ci                            "start": {
6193af6ab5fSopenharmony_ci                              "line": 23,
6203af6ab5fSopenharmony_ci                              "column": 62
6213af6ab5fSopenharmony_ci                            },
6223af6ab5fSopenharmony_ci                            "end": {
6233af6ab5fSopenharmony_ci                              "line": 23,
6243af6ab5fSopenharmony_ci                              "column": 63
6253af6ab5fSopenharmony_ci                            }
6263af6ab5fSopenharmony_ci                          }
6273af6ab5fSopenharmony_ci                        }
6283af6ab5fSopenharmony_ci                      ],
6293af6ab5fSopenharmony_ci                      "loc": {
6303af6ab5fSopenharmony_ci                        "start": {
6313af6ab5fSopenharmony_ci                          "line": 23,
6323af6ab5fSopenharmony_ci                          "column": 58
6333af6ab5fSopenharmony_ci                        },
6343af6ab5fSopenharmony_ci                        "end": {
6353af6ab5fSopenharmony_ci                          "line": 23,
6363af6ab5fSopenharmony_ci                          "column": 64
6373af6ab5fSopenharmony_ci                        }
6383af6ab5fSopenharmony_ci                      }
6393af6ab5fSopenharmony_ci                    }
6403af6ab5fSopenharmony_ci                  ],
6413af6ab5fSopenharmony_ci                  "typeAnnotation": {
6423af6ab5fSopenharmony_ci                    "type": "TSStringKeyword",
6433af6ab5fSopenharmony_ci                    "loc": {
6443af6ab5fSopenharmony_ci                      "start": {
6453af6ab5fSopenharmony_ci                        "line": 23,
6463af6ab5fSopenharmony_ci                        "column": 67
6473af6ab5fSopenharmony_ci                      },
6483af6ab5fSopenharmony_ci                      "end": {
6493af6ab5fSopenharmony_ci                        "line": 23,
6503af6ab5fSopenharmony_ci                        "column": 73
6513af6ab5fSopenharmony_ci                      }
6523af6ab5fSopenharmony_ci                    }
6533af6ab5fSopenharmony_ci                  },
6543af6ab5fSopenharmony_ci                  "loc": {
6553af6ab5fSopenharmony_ci                    "start": {
6563af6ab5fSopenharmony_ci                      "line": 23,
6573af6ab5fSopenharmony_ci                      "column": 55
6583af6ab5fSopenharmony_ci                    },
6593af6ab5fSopenharmony_ci                    "end": {
6603af6ab5fSopenharmony_ci                      "line": 23,
6613af6ab5fSopenharmony_ci                      "column": 75
6623af6ab5fSopenharmony_ci                    }
6633af6ab5fSopenharmony_ci                  }
6643af6ab5fSopenharmony_ci                }
6653af6ab5fSopenharmony_ci              ],
6663af6ab5fSopenharmony_ci              "loc": {
6673af6ab5fSopenharmony_ci                "start": {
6683af6ab5fSopenharmony_ci                  "line": 23,
6693af6ab5fSopenharmony_ci                  "column": 31
6703af6ab5fSopenharmony_ci                },
6713af6ab5fSopenharmony_ci                "end": {
6723af6ab5fSopenharmony_ci                  "line": 23,
6733af6ab5fSopenharmony_ci                  "column": 75
6743af6ab5fSopenharmony_ci                }
6753af6ab5fSopenharmony_ci              }
6763af6ab5fSopenharmony_ci            },
6773af6ab5fSopenharmony_ci            "loc": {
6783af6ab5fSopenharmony_ci              "start": {
6793af6ab5fSopenharmony_ci                "line": 23,
6803af6ab5fSopenharmony_ci                "column": 5
6813af6ab5fSopenharmony_ci              },
6823af6ab5fSopenharmony_ci              "end": {
6833af6ab5fSopenharmony_ci                "line": 24,
6843af6ab5fSopenharmony_ci                "column": 2
6853af6ab5fSopenharmony_ci              }
6863af6ab5fSopenharmony_ci            }
6873af6ab5fSopenharmony_ci          }
6883af6ab5fSopenharmony_ci        ],
6893af6ab5fSopenharmony_ci        "loc": {
6903af6ab5fSopenharmony_ci          "start": {
6913af6ab5fSopenharmony_ci            "line": 17,
6923af6ab5fSopenharmony_ci            "column": 27
6933af6ab5fSopenharmony_ci          },
6943af6ab5fSopenharmony_ci          "end": {
6953af6ab5fSopenharmony_ci            "line": 24,
6963af6ab5fSopenharmony_ci            "column": 2
6973af6ab5fSopenharmony_ci          }
6983af6ab5fSopenharmony_ci        }
6993af6ab5fSopenharmony_ci      },
7003af6ab5fSopenharmony_ci      "id": {
7013af6ab5fSopenharmony_ci        "type": "Identifier",
7023af6ab5fSopenharmony_ci        "name": "foo",
7033af6ab5fSopenharmony_ci        "decorators": [],
7043af6ab5fSopenharmony_ci        "loc": {
7053af6ab5fSopenharmony_ci          "start": {
7063af6ab5fSopenharmony_ci            "line": 17,
7073af6ab5fSopenharmony_ci            "column": 11
7083af6ab5fSopenharmony_ci          },
7093af6ab5fSopenharmony_ci          "end": {
7103af6ab5fSopenharmony_ci            "line": 17,
7113af6ab5fSopenharmony_ci            "column": 14
7123af6ab5fSopenharmony_ci          }
7133af6ab5fSopenharmony_ci        }
7143af6ab5fSopenharmony_ci      },
7153af6ab5fSopenharmony_ci      "extends": [
7163af6ab5fSopenharmony_ci        {
7173af6ab5fSopenharmony_ci          "type": "TSInterfaceHeritage",
7183af6ab5fSopenharmony_ci          "expression": {
7193af6ab5fSopenharmony_ci            "type": "TSTypeReference",
7203af6ab5fSopenharmony_ci            "typeName": {
7213af6ab5fSopenharmony_ci              "type": "TSQualifiedName",
7223af6ab5fSopenharmony_ci              "left": {
7233af6ab5fSopenharmony_ci                "type": "Identifier",
7243af6ab5fSopenharmony_ci                "name": "a",
7253af6ab5fSopenharmony_ci                "decorators": [],
7263af6ab5fSopenharmony_ci                "loc": {
7273af6ab5fSopenharmony_ci                  "start": {
7283af6ab5fSopenharmony_ci                    "line": 17,
7293af6ab5fSopenharmony_ci                    "column": 23
7303af6ab5fSopenharmony_ci                  },
7313af6ab5fSopenharmony_ci                  "end": {
7323af6ab5fSopenharmony_ci                    "line": 17,
7333af6ab5fSopenharmony_ci                    "column": 24
7343af6ab5fSopenharmony_ci                  }
7353af6ab5fSopenharmony_ci                }
7363af6ab5fSopenharmony_ci              },
7373af6ab5fSopenharmony_ci              "right": {
7383af6ab5fSopenharmony_ci                "type": "Identifier",
7393af6ab5fSopenharmony_ci                "name": "b",
7403af6ab5fSopenharmony_ci                "decorators": [],
7413af6ab5fSopenharmony_ci                "loc": {
7423af6ab5fSopenharmony_ci                  "start": {
7433af6ab5fSopenharmony_ci                    "line": 17,
7443af6ab5fSopenharmony_ci                    "column": 25
7453af6ab5fSopenharmony_ci                  },
7463af6ab5fSopenharmony_ci                  "end": {
7473af6ab5fSopenharmony_ci                    "line": 17,
7483af6ab5fSopenharmony_ci                    "column": 26
7493af6ab5fSopenharmony_ci                  }
7503af6ab5fSopenharmony_ci                }
7513af6ab5fSopenharmony_ci              },
7523af6ab5fSopenharmony_ci              "loc": {
7533af6ab5fSopenharmony_ci                "start": {
7543af6ab5fSopenharmony_ci                  "line": 17,
7553af6ab5fSopenharmony_ci                  "column": 23
7563af6ab5fSopenharmony_ci                },
7573af6ab5fSopenharmony_ci                "end": {
7583af6ab5fSopenharmony_ci                  "line": 17,
7593af6ab5fSopenharmony_ci                  "column": 28
7603af6ab5fSopenharmony_ci                }
7613af6ab5fSopenharmony_ci              }
7623af6ab5fSopenharmony_ci            },
7633af6ab5fSopenharmony_ci            "loc": {
7643af6ab5fSopenharmony_ci              "start": {
7653af6ab5fSopenharmony_ci                "line": 17,
7663af6ab5fSopenharmony_ci                "column": 27
7673af6ab5fSopenharmony_ci              },
7683af6ab5fSopenharmony_ci              "end": {
7693af6ab5fSopenharmony_ci                "line": 17,
7703af6ab5fSopenharmony_ci                "column": 24
7713af6ab5fSopenharmony_ci              }
7723af6ab5fSopenharmony_ci            }
7733af6ab5fSopenharmony_ci          },
7743af6ab5fSopenharmony_ci          "loc": {
7753af6ab5fSopenharmony_ci            "start": {
7763af6ab5fSopenharmony_ci              "line": 17,
7773af6ab5fSopenharmony_ci              "column": 27
7783af6ab5fSopenharmony_ci            },
7793af6ab5fSopenharmony_ci            "end": {
7803af6ab5fSopenharmony_ci              "line": 17,
7813af6ab5fSopenharmony_ci              "column": 24
7823af6ab5fSopenharmony_ci            }
7833af6ab5fSopenharmony_ci          }
7843af6ab5fSopenharmony_ci        }
7853af6ab5fSopenharmony_ci      ],
7863af6ab5fSopenharmony_ci      "loc": {
7873af6ab5fSopenharmony_ci        "start": {
7883af6ab5fSopenharmony_ci          "line": 17,
7893af6ab5fSopenharmony_ci          "column": 1
7903af6ab5fSopenharmony_ci        },
7913af6ab5fSopenharmony_ci        "end": {
7923af6ab5fSopenharmony_ci          "line": 24,
7933af6ab5fSopenharmony_ci          "column": 2
7943af6ab5fSopenharmony_ci        }
7953af6ab5fSopenharmony_ci      }
7963af6ab5fSopenharmony_ci    }
7973af6ab5fSopenharmony_ci  ],
7983af6ab5fSopenharmony_ci  "loc": {
7993af6ab5fSopenharmony_ci    "start": {
8003af6ab5fSopenharmony_ci      "line": 1,
8013af6ab5fSopenharmony_ci      "column": 1
8023af6ab5fSopenharmony_ci    },
8033af6ab5fSopenharmony_ci    "end": {
8043af6ab5fSopenharmony_ci      "line": 24,
8053af6ab5fSopenharmony_ci      "column": 2
8063af6ab5fSopenharmony_ci    }
8073af6ab5fSopenharmony_ci  }
8083af6ab5fSopenharmony_ci}
809