Typescript не поддерживает аннотации к переменной catch.Есть предложение разрешить это, но оно все еще обсуждается (см. здесь )
Ваше единственное решение - использовать утверждение типа или дополнительную переменную
catch(_e){
let e:Error= _e;
result = e.message;
}
catch(e){
result = (e as Error).message;
}
К сожалению, это также будет работать и совершенно не проверено:
catch(e){
result = e.MessageUps;
}
Примечание
Как вы можете прочитать в обсуждении предложения, в JS не все, чтоБрошенный должен быть Error
экземпляр, поэтому остерегайтесь этого предположения
Может быть, tslint с no-unsafe-any
поможет поймать это.