1{ 2 "type": "Program", 3 "statements": [ 4 { 5 "type": "ClassDeclaration", 6 "definition": { 7 "id": { 8 "type": "Identifier", 9 "name": "C", 10 "loc": { 11 "start": { 12 "line": 17, 13 "column": 7 14 }, 15 "end": { 16 "line": 17, 17 "column": 8 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": 1, 31 "column": 1 32 }, 33 "end": { 34 "line": 1, 35 "column": 1 36 } 37 } 38 }, 39 "kind": "constructor", 40 "static": false, 41 "optional": false, 42 "computed": false, 43 "value": { 44 "type": "FunctionExpression", 45 "function": { 46 "type": "ScriptFunction", 47 "id": null, 48 "generator": false, 49 "async": false, 50 "expression": false, 51 "params": [], 52 "body": { 53 "type": "BlockStatement", 54 "statements": [], 55 "loc": { 56 "start": { 57 "line": 1, 58 "column": 1 59 }, 60 "end": { 61 "line": 1, 62 "column": 1 63 } 64 } 65 }, 66 "loc": { 67 "start": { 68 "line": 1, 69 "column": 1 70 }, 71 "end": { 72 "line": 1, 73 "column": 1 74 } 75 } 76 }, 77 "loc": { 78 "start": { 79 "line": 1, 80 "column": 1 81 }, 82 "end": { 83 "line": 1, 84 "column": 1 85 } 86 } 87 }, 88 "overloads": [], 89 "decorators": [], 90 "annotations": [], 91 "loc": { 92 "start": { 93 "line": 17, 94 "column": 1 95 }, 96 "end": { 97 "line": 21, 98 "column": 2 99 } 100 } 101 }, 102 "body": [ 103 { 104 "type": "ClassProperty", 105 "key": { 106 "type": "Identifier", 107 "name": "key", 108 "loc": { 109 "start": { 110 "line": 18, 111 "column": 5 112 }, 113 "end": { 114 "line": 18, 115 "column": 8 116 } 117 } 118 }, 119 "static": false, 120 "readonly": false, 121 "declare": false, 122 "optional": false, 123 "computed": false, 124 "typeAnnotation": { 125 "type": "TSUnionType", 126 "types": [ 127 { 128 "type": "TSStringKeyword", 129 "loc": { 130 "start": { 131 "line": 18, 132 "column": 10 133 }, 134 "end": { 135 "line": 18, 136 "column": 16 137 } 138 } 139 }, 140 { 141 "type": "TSNumberKeyword", 142 "loc": { 143 "start": { 144 "line": 19, 145 "column": 11 146 }, 147 "end": { 148 "line": 19, 149 "column": 17 150 } 151 } 152 } 153 ], 154 "loc": { 155 "start": { 156 "line": 18, 157 "column": 10 158 }, 159 "end": { 160 "line": 19, 161 "column": 17 162 } 163 } 164 }, 165 "decorators": [], 166 "loc": { 167 "start": { 168 "line": 18, 169 "column": 5 170 }, 171 "end": { 172 "line": 18, 173 "column": 8 174 } 175 } 176 }, 177 { 178 "type": "ClassProperty", 179 "key": { 180 "type": "Identifier", 181 "name": "extends", 182 "loc": { 183 "start": { 184 "line": 20, 185 "column": 5 186 }, 187 "end": { 188 "line": 20, 189 "column": 12 190 } 191 } 192 }, 193 "static": false, 194 "readonly": false, 195 "declare": false, 196 "optional": true, 197 "computed": false, 198 "typeAnnotation": { 199 "type": "TSUnionType", 200 "types": [ 201 { 202 "type": "TSStringKeyword", 203 "loc": { 204 "start": { 205 "line": 20, 206 "column": 15 207 }, 208 "end": { 209 "line": 20, 210 "column": 21 211 } 212 } 213 }, 214 { 215 "type": "TSArrayType", 216 "elementType": { 217 "type": "TSStringKeyword", 218 "loc": { 219 "start": { 220 "line": 20, 221 "column": 24 222 }, 223 "end": { 224 "line": 20, 225 "column": 30 226 } 227 } 228 }, 229 "loc": { 230 "start": { 231 "line": 20, 232 "column": 24 233 }, 234 "end": { 235 "line": 20, 236 "column": 32 237 } 238 } 239 } 240 ], 241 "loc": { 242 "start": { 243 "line": 20, 244 "column": 15 245 }, 246 "end": { 247 "line": 20, 248 "column": 32 249 } 250 } 251 }, 252 "decorators": [], 253 "loc": { 254 "start": { 255 "line": 20, 256 "column": 5 257 }, 258 "end": { 259 "line": 20, 260 "column": 12 261 } 262 } 263 } 264 ], 265 "indexSignatures": [], 266 "loc": { 267 "start": { 268 "line": 17, 269 "column": 9 270 }, 271 "end": { 272 "line": 21, 273 "column": 2 274 } 275 } 276 }, 277 "decorators": [], 278 "isAnnotationDeclaration": false, 279 "loc": { 280 "start": { 281 "line": 17, 282 "column": 1 283 }, 284 "end": { 285 "line": 21, 286 "column": 2 287 } 288 } 289 } 290 ], 291 "loc": { 292 "start": { 293 "line": 1, 294 "column": 1 295 }, 296 "end": { 297 "line": 21, 298 "column": 2 299 } 300 } 301} 302