如何从 Admin SDK 从 Firebase Messaging 导入接口?

how to import interface from Firebase Messaging from Admin SDK?

抱歉,我是 Typescript 和 Node 的新手。

使用Admin SDK在Typescript中发送FCM消息时,可以使用此方法

sendToDevice(registrationToken: string | string[], payload: MessagingPayload, options?: MessagingOptions): Promise<MessagingDevicesResponse>;

该代码取自 index.d.ts 来自 firebase admin

当我想使用那个方法时,我想像这样限制我创建的变量

const myPayload : MessagingPayload = {
    data: notification.toObject(),
    notification: {
        title: notification.title,
        body: notification.body,
        image: notification.imagePath,
    },
};

await admin.messaging().sendToDevice(tokens, myPayload, options);

但我需要先导入 MessagingPayload

但现在我很困惑如何获取/导入 MessagingPayload 接口

我尝试使用下面的代码导入,但出现错误:

import { MessagingPayload } from "firebase-admin";

每个产品的类型都在主导出项下命名空间。你可以这样写:

import * as admin from 'firebase-admin'
const myPayload : admin.messaging.MessagingPayload = { ... }

或者如果你想自己缩写它,或者完全改变它:

type MessagingPayload = admin.messaging.MessagingPayload
const myPayload : MessagingPayload = { ... }