**TypeScript Version:** 2.4.0 The following things work as expected ```ts export class Test { async LoadSomething() { const something = await import("./something"); } } export async function LoadSomething() { const something = await import("./something"); } ``` which will generate ```js new Promise(function (resolve_1, reject_1) { require(["./something"], resolve_1, reject_1); })]; ``` whereas ```ts export = async function() { const something = await import("./something"); } ``` ```ts // A *self-contained* demonstration of the problem follows... ``` will generate ```js import("./something") ``` **Expected behavior:** Code which is emitted should be ```js new Promise(function (resolve_1, reject_1) { require(["./something"], resolve_1, reject_1); })]; ```