code: function ExportNamedDeclaration(node) {
      var declar = node.declaration;
  
      if (t.isClassDeclaration(declar)) {
        // export class Foo {}
        node.specifiers = [buildExportSpecifier(declar.id)];
  
        var nodes = [getDeclar(node), node];
        node.declaration = null;
        return nodes;
      } else if (t.isFunctionDeclaration(declar)) {
        // export function Foo() {}
        var newExport = t.exportNamedDeclaration(null, [buildExportSpecifier(declar.id)]);
        newExport._blockHoist = 2;
        return [getDeclar(node), newExport];
      } else if (t.isVariableDeclaration(declar)) {
        // export var foo = "bar";
        var specifiers = [];
        var bindings = this.get("declaration").getBindingIdentifiers();
        for (var key in bindings) {
          specifiers.push(buildExportSpecifier(bindings[key]));
        }
        return [declar, t.exportNamedDeclaration(null, specifiers)];
      }
    }
docs: [Please add a description.]