var types = require("./lib/types"); // This core module of AST types captures ES5 as it is parsed today by // git://github.com/ariya/esprima.git#master. require("./def/core"); // Feel free to add to or remove from this list of extension modules to // configure the precise type hierarchy that you need. require("./def/es6"); require("./def/es7"); require("./def/mozilla"); require("./def/e4x"); require("./def/jsx"); require("./def/flow"); require("./def/esprima"); require("./def/babel"); types.finalize(); exports.Type = types.Type; exports.builtInTypes = types.builtInTypes; exports.namedTypes = types.namedTypes; exports.builders = types.builders; exports.defineMethod = types.defineMethod; exports.getFieldNames = types.getFieldNames; exports.getFieldValue = types.getFieldValue; exports.eachField = types.eachField; exports.someField = types.someField; exports.getSupertypeNames = types.getSupertypeNames; exports.astNodesAreEquivalent = require("./lib/equiv"); exports.finalize = types.finalize; exports.NodePath = require("./lib/node-path"); exports.PathVisitor = require("./lib/path-visitor"); exports.visit = exports.PathVisitor.visit;