diff --git a/src/compiler/emitter.ts b/src/compiler/emitter.ts index 387a57fa7f4..e8f7ef77e52 100644 --- a/src/compiler/emitter.ts +++ b/src/compiler/emitter.ts @@ -756,8 +756,13 @@ module ts { } else { write(": "); - writer.getSymbolAccessibilityDiagnostic = getDefaultExportAccessibilityDiagnostic; - resolver.writeTypeOfExpression(node.expression, enclosingDeclaration, TypeFormatFlags.UseTypeOfFunction, writer); + if (node.type) { + emitType(node.type); + } + else { + writer.getSymbolAccessibilityDiagnostic = getDefaultExportAccessibilityDiagnostic; + resolver.writeTypeOfExpression(node.expression, enclosingDeclaration, TypeFormatFlags.UseTypeOfFunction, writer); + } } write(";"); writeLine();