Похоже, что типы ваших обещаний теряются после того, как вы поместили sh их в массив promises
, который по существу не типизирован (ни один тип не означает any
в TypeScript).
В вашем В данном случае, даже неважно, что это за обещания, потому что вы ничего не делаете с ними, кроме как возвращаете их вызывающей стороне. Вызываемая функция автоматически сериализует их и отправляет обратно клиенту. Я предлагаю просто отказаться от типов и написать следующее:
return Promise.all(promises)
Обратите внимание, что на самом деле вы должны return
обещание. Вы не можете просто await
это. В противном случае клиент не получит никаких значений.
Если вы хотите сохранить типы, вам не следует помещать их в нетипизированный массив, например:
const p1 = admin.auth().updateUser(userID, {displayName:userInfo.displayName, photoURL:userInfo.photoURL}));
const p2 = userReference.update(userInfo));
return Promise.all<admin.auth.UserRecord, FirebaseFirestore.WriteResult>([p1, p2]);