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