message: Use printStatementSequence to print TSModuleBlock.
diff: @@ -2052,9 +2052,6 @@ function genericPrintNoParens(path, options, print) {
  "\n}",
  ]);
  - case "TSModuleBlock":
  - return fromString("\n").join(path.map(print, "body"));
  -
  case "TSImportEqualsDeclaration":
  parts.push(
  "import ",
  @@ -2069,14 +2066,29 @@ function genericPrintNoParens(path, options, print) {
  return concat(["require(", path.call(print, "expression"), ")"]);
  case "TSModuleDeclaration":
  - return concat([
  + parts.push(
  n.declare ? "declare " : "",
  "namespace ",
  - path.call(print, "id"),
  + path.call(print, "id")
  + );
  +
  + var bodyLines = path.call(print, "body");
  + if (bodyLines.isEmpty()) {
  + parts.push(" {}");
  + } else {
  + parts.push(
  " {\n",
  - path.call(print, "body").indent(options.tabWidth),
  + bodyLines.indent(options.tabWidth),
  "\n}"
  - ]);
  + );
  + }
  +
  + return concat(parts);
  +
  + case "TSModuleBlock":
  + return path.call(function (bodyPath) {
  + return printStatementSequence(bodyPath, options, print);
  + }, "body");
  // Unhandled types below. If encountered, nodes of these types should
  // be either left alone or desugared into AST types that are fully
  