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