How to return the result of this function

Create a formal type for it. There are a lot of issues in your code, but you can fix a lot of them if you step back and define a type for every variable. Also, don’t use var. Use let. Only use var if you understand the difference and are in a special situation where var is better. Then


test(value: TypeOfValue): Promise<number> {
   let currencies = this.storage.get('age');
   let betterVariableNameThanVal = this.getCurrentCurrency();
   return Promise.all(currencies, betterVariableNameThanVal)
                 .then(resultArray => value * resultArray[0][resultArray[1]]['rate']);
}