{ "type": "Script", "span": { "start": 115, "end": 277, "ctxt": 0 }, "body": [ { "type": "ExpressionStatement", "span": { "start": 115, "end": 128, "ctxt": 0 }, "expression": { "type": "StringLiteral", "span": { "start": 115, "end": 127, "ctxt": 0 }, "value": "use strict", "raw": "'use strict'" } }, { "type": "ClassDeclaration", "identifier": { "type": "Identifier", "span": { "start": 135, "end": 140, "ctxt": 0 }, "value": "Thing", "optional": false }, "declare": false, "span": { "start": 129, "end": 143, "ctxt": 0 }, "decorators": [], "body": [], "superClass": null, "isAbstract": false, "typeParams": null, "superTypeParams": null, "implements": [] }, { "type": "ExpressionStatement", "span": { "start": 144, "end": 170, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 144, "end": 170, "ctxt": 0 }, "operator": "=", "left": { "type": "MemberExpression", "span": { "start": 144, "end": 158, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 144, "end": 150, "ctxt": 0 }, "value": "module", "optional": false }, "property": { "type": "Identifier", "span": { "start": 151, "end": 158, "ctxt": 0 }, "value": "exports", "optional": false } }, "right": { "type": "ObjectExpression", "span": { "start": 161, "end": 170, "ctxt": 0 }, "properties": [ { "type": "Identifier", "span": { "start": 163, "end": 168, "ctxt": 0 }, "value": "Thing", "optional": false } ] } } }, { "type": "ExpressionStatement", "span": { "start": 198, "end": 211, "ctxt": 0 }, "expression": { "type": "StringLiteral", "span": { "start": 198, "end": 210, "ctxt": 0 }, "value": "use strict", "raw": "'use strict'" } }, { "type": "VariableDeclaration", "span": { "start": 212, "end": 250, "ctxt": 0 }, "kind": "const", "declare": false, "declarations": [ { "type": "VariableDeclarator", "span": { "start": 218, "end": 250, "ctxt": 0 }, "id": { "type": "Identifier", "span": { "start": 218, "end": 223, "ctxt": 0 }, "value": "Thing", "optional": false, "typeAnnotation": null }, "init": { "type": "MemberExpression", "span": { "start": 226, "end": 250, "ctxt": 0 }, "object": { "type": "CallExpression", "span": { "start": 226, "end": 244, "ctxt": 0 }, "callee": { "type": "Identifier", "span": { "start": 226, "end": 233, "ctxt": 0 }, "value": "require", "optional": false }, "arguments": [ { "spread": null, "expression": { "type": "StringLiteral", "span": { "start": 234, "end": 243, "ctxt": 0 }, "value": "./thing", "raw": "'./thing'" } } ], "typeArguments": null }, "property": { "type": "Identifier", "span": { "start": 245, "end": 250, "ctxt": 0 }, "value": "Thing", "optional": false } }, "definite": false } ] }, { "type": "ExpressionStatement", "span": { "start": 251, "end": 277, "ctxt": 0 }, "expression": { "type": "AssignmentExpression", "span": { "start": 251, "end": 277, "ctxt": 0 }, "operator": "=", "left": { "type": "MemberExpression", "span": { "start": 251, "end": 265, "ctxt": 0 }, "object": { "type": "Identifier", "span": { "start": 251, "end": 257, "ctxt": 0 }, "value": "module", "optional": false }, "property": { "type": "Identifier", "span": { "start": 258, "end": 265, "ctxt": 0 }, "value": "exports", "optional": false } }, "right": { "type": "ObjectExpression", "span": { "start": 268, "end": 277, "ctxt": 0 }, "properties": [ { "type": "Identifier", "span": { "start": 270, "end": 275, "ctxt": 0 }, "value": "Thing", "optional": false } ] } } } ], "interpreter": null }