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": 17, 14 "column": 7, 15 "program": "test-class-method-overload3.ts" 16 }, 17 "end": { 18 "line": 17, 19 "column": 10, 20 "program": "test-class-method-overload3.ts" 21 } 22 } 23 }, 24 "superClass": null, 25 "implements": [], 26 "constructor": { 27 "type": "MethodDefinition", 28 "key": { 29 "type": "Identifier", 30 "name": "constructor", 31 "decorators": [], 32 "loc": { 33 "start": { 34 "line": 17, 35 "column": 12, 36 "program": "test-class-method-overload3.ts" 37 }, 38 "end": { 39 "line": 17, 40 "column": 12, 41 "program": "test-class-method-overload3.ts" 42 } 43 } 44 }, 45 "kind": "constructor", 46 "static": false, 47 "optional": false, 48 "computed": false, 49 "value": { 50 "type": "FunctionExpression", 51 "function": { 52 "type": "ScriptFunction", 53 "id": null, 54 "generator": false, 55 "async": false, 56 "expression": false, 57 "params": [], 58 "body": { 59 "type": "BlockStatement", 60 "statements": [], 61 "loc": { 62 "start": { 63 "line": 17, 64 "column": 12, 65 "program": "test-class-method-overload3.ts" 66 }, 67 "end": { 68 "line": 17, 69 "column": 12, 70 "program": "test-class-method-overload3.ts" 71 } 72 } 73 }, 74 "loc": { 75 "start": { 76 "line": 17, 77 "column": 12, 78 "program": "test-class-method-overload3.ts" 79 }, 80 "end": { 81 "line": 17, 82 "column": 12, 83 "program": "test-class-method-overload3.ts" 84 } 85 } 86 }, 87 "loc": { 88 "start": { 89 "line": 17, 90 "column": 12, 91 "program": "test-class-method-overload3.ts" 92 }, 93 "end": { 94 "line": 17, 95 "column": 12, 96 "program": "test-class-method-overload3.ts" 97 } 98 } 99 }, 100 "overloads": [], 101 "decorators": [], 102 "loc": { 103 "start": { 104 "line": 1, 105 "column": 1, 106 "program": null 107 }, 108 "end": { 109 "line": 1, 110 "column": 1, 111 "program": null 112 } 113 } 114 }, 115 "body": [ 116 { 117 "type": "MethodDefinition", 118 "key": { 119 "type": "Identifier", 120 "name": "bar", 121 "decorators": [], 122 "loc": { 123 "start": { 124 "line": 18, 125 "column": 5, 126 "program": "test-class-method-overload3.ts" 127 }, 128 "end": { 129 "line": 18, 130 "column": 8, 131 "program": "test-class-method-overload3.ts" 132 } 133 } 134 }, 135 "kind": "method", 136 "static": false, 137 "optional": false, 138 "computed": false, 139 "value": { 140 "type": "FunctionExpression", 141 "function": { 142 "type": "ScriptFunction", 143 "id": null, 144 "generator": false, 145 "async": false, 146 "expression": false, 147 "params": [], 148 "loc": { 149 "start": { 150 "line": 18, 151 "column": 8, 152 "program": "test-class-method-overload3.ts" 153 }, 154 "end": { 155 "line": 18, 156 "column": 11, 157 "program": "test-class-method-overload3.ts" 158 } 159 } 160 }, 161 "loc": { 162 "start": { 163 "line": 18, 164 "column": 8, 165 "program": "test-class-method-overload3.ts" 166 }, 167 "end": { 168 "line": 18, 169 "column": 11, 170 "program": "test-class-method-overload3.ts" 171 } 172 } 173 }, 174 "overloads": [], 175 "decorators": [], 176 "loc": { 177 "start": { 178 "line": 18, 179 "column": 5, 180 "program": "test-class-method-overload3.ts" 181 }, 182 "end": { 183 "line": 18, 184 "column": 11, 185 "program": "test-class-method-overload3.ts" 186 } 187 } 188 }, 189 { 190 "type": "MethodDefinition", 191 "key": { 192 "type": "Identifier", 193 "name": "bar", 194 "decorators": [], 195 "loc": { 196 "start": { 197 "line": 19, 198 "column": 5, 199 "program": "test-class-method-overload3.ts" 200 }, 201 "end": { 202 "line": 19, 203 "column": 8, 204 "program": "test-class-method-overload3.ts" 205 } 206 } 207 }, 208 "kind": "method", 209 "static": false, 210 "optional": false, 211 "computed": false, 212 "value": { 213 "type": "FunctionExpression", 214 "function": { 215 "type": "ScriptFunction", 216 "id": null, 217 "generator": false, 218 "async": false, 219 "expression": false, 220 "params": [], 221 "loc": { 222 "start": { 223 "line": 19, 224 "column": 8, 225 "program": "test-class-method-overload3.ts" 226 }, 227 "end": { 228 "line": 19, 229 "column": 11, 230 "program": "test-class-method-overload3.ts" 231 } 232 } 233 }, 234 "loc": { 235 "start": { 236 "line": 19, 237 "column": 8, 238 "program": "test-class-method-overload3.ts" 239 }, 240 "end": { 241 "line": 19, 242 "column": 11, 243 "program": "test-class-method-overload3.ts" 244 } 245 } 246 }, 247 "overloads": [], 248 "decorators": [], 249 "loc": { 250 "start": { 251 "line": 19, 252 "column": 5, 253 "program": "test-class-method-overload3.ts" 254 }, 255 "end": { 256 "line": 19, 257 "column": 11, 258 "program": "test-class-method-overload3.ts" 259 } 260 } 261 }, 262 { 263 "type": "MethodDefinition", 264 "key": { 265 "type": "Identifier", 266 "name": "bar", 267 "decorators": [], 268 "loc": { 269 "start": { 270 "line": 20, 271 "column": 5, 272 "program": "test-class-method-overload3.ts" 273 }, 274 "end": { 275 "line": 20, 276 "column": 8, 277 "program": "test-class-method-overload3.ts" 278 } 279 } 280 }, 281 "kind": "method", 282 "static": false, 283 "optional": true, 284 "computed": false, 285 "value": { 286 "type": "FunctionExpression", 287 "function": { 288 "type": "ScriptFunction", 289 "id": null, 290 "generator": false, 291 "async": false, 292 "expression": false, 293 "params": [], 294 "body": { 295 "type": "BlockStatement", 296 "statements": [], 297 "loc": { 298 "start": { 299 "line": 20, 300 "column": 12, 301 "program": "test-class-method-overload3.ts" 302 }, 303 "end": { 304 "line": 20, 305 "column": 15, 306 "program": "test-class-method-overload3.ts" 307 } 308 } 309 }, 310 "loc": { 311 "start": { 312 "line": 20, 313 "column": 9, 314 "program": "test-class-method-overload3.ts" 315 }, 316 "end": { 317 "line": 20, 318 "column": 15, 319 "program": "test-class-method-overload3.ts" 320 } 321 } 322 }, 323 "loc": { 324 "start": { 325 "line": 20, 326 "column": 9, 327 "program": "test-class-method-overload3.ts" 328 }, 329 "end": { 330 "line": 20, 331 "column": 15, 332 "program": "test-class-method-overload3.ts" 333 } 334 } 335 }, 336 "overloads": [], 337 "decorators": [], 338 "loc": { 339 "start": { 340 "line": 20, 341 "column": 5, 342 "program": "test-class-method-overload3.ts" 343 }, 344 "end": { 345 "line": 20, 346 "column": 15, 347 "program": "test-class-method-overload3.ts" 348 } 349 } 350 } 351 ], 352 "loc": { 353 "start": { 354 "line": 17, 355 "column": 11, 356 "program": "test-class-method-overload3.ts" 357 }, 358 "end": { 359 "line": 21, 360 "column": 2, 361 "program": "test-class-method-overload3.ts" 362 } 363 } 364 }, 365 "loc": { 366 "start": { 367 "line": 17, 368 "column": 1, 369 "program": "test-class-method-overload3.ts" 370 }, 371 "end": { 372 "line": 21, 373 "column": 2, 374 "program": "test-class-method-overload3.ts" 375 } 376 } 377 } 378 ], 379 "loc": { 380 "start": { 381 "line": 1, 382 "column": 1, 383 "program": "test-class-method-overload3.ts" 384 }, 385 "end": { 386 "line": 21, 387 "column": 2, 388 "program": "test-class-method-overload3.ts" 389 } 390 } 391} 392