Я использую Firebase Admin SDK. Он также предлагает использовать База данных Firebase в качестве администратора.
Определение типа для созданного приложения администратора Firebase выглядит следующим образом:
import * as firebaseAdmin from 'firebase-admin';
export type FirebaseContext = {
firebaseAdmin: firebaseAdmin.app.App;
};
Пока все работает хорошо. Однако, если я использую функцию TIMESTAMP
в Firebase, она выдает ошибку типа:
firebaseAdmin.database.ServerValue.TIMESTAMP
// Property 'ServerValue' does not exist on type '(url?: string | undefined) => Database'.ts(2339)
Следует сказать, что экземпляр firebaseAdmin
приходит в качестве аргумента функции и поэтому определяется как FirebaseContext.firebaseAdmin
из более раннего.
Итак, я что-то не так сделал с более ранним определением типа? Потому что, если я не передам экземпляр firebase через аргументы функции, а импортирую его непосредственно из модуля, он не будет жаловаться на определение типа. Так что должно быть что-то не так с type FirebaseContext
.
Спасибо за ваше время и помощь.