import * as t from "babel-types"; export default function () { return { visitor: { ObjectMethod(path) { let { node } = path; if (node.kind === "method") { const func = t.functionExpression(null, node.params, node.body, node.generator, node.async); func.returnType = node.returnType; path.replaceWith(t.objectProperty( node.key, func, node.computed )); } }, ObjectProperty({ node }) { if (node.shorthand) { node.shorthand = false; } } } }; }