javascript - Intellisense visar fel egenskaper för ett Promise inne i en `async`-metod


Jag har märkt att när ett Promise används inuti en async-metod, finns många egenskaper som borde finnas i IntelliSense faktiskt där.
Ta till exempel denna enkla kod (jag använder REACT och jag befinner mig i en Hook-komponent, bara för att ge dig en kontext).

const notAsyncMethod = () => {
    let a : Promise<string> = new Promise(null);
}

const asyncMethod = async () => {
    let a : Promise<string> = new Promise(null);
}

Nu, i det första fallet, är detta IntelliSense-förslagen:

Vilket är precis vad jag förväntar mig.

Sedan, i det andra fallet, är detta vad IntelliSense föreslår mig:

Varför händer detta? Är det normalt, eller kan det finnas något problem med min kod? Och, om det är så det ska fungera.. Varför händer detta, och varifrån kommer de egenskaperna?