Returning a promise in an async function in TypeScript : <p>It's my understanding that these two functions will have the same behavior in JavaScript:</p>

<pre><code>const whatever1 = (): Promise&lt;number&gt; =&gt; {
    return new Promise((resolve) =&gt; {
        resolve(4);
    });
};

const whatever2 = async (): Promise&lt;number&gt; =&gt; {
    return new Promise((resolve) =&gt; {
        resolve(4);
    });
};
</code></pre>

<p>But TypeScript seems to not like the second one, it says:</p>

<pre><code>Type '{}' is not assignable to type 'number'.
</code></pre>

<p>Is this a bug in TypeScript, or am I misunderstanding something about async functions?</p>
