1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 | import {
|
19 | Observer,
|
20 | Unsubscribe,
|
21 | NextFn,
|
22 | ErrorFn,
|
23 | CompleteFn
|
24 | } from '@firebase/util';
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 | export interface NotificationPayload {
|
31 | title?: string;
|
32 | body?: string;
|
33 | image?: string;
|
34 | }
|
35 |
|
36 | export interface FcmOptions {
|
37 | link?: string;
|
38 | analyticsLabel?: string;
|
39 | }
|
40 |
|
41 | export interface MessagePayload {
|
42 | notification?: NotificationPayload;
|
43 | data?: { [key: string]: string };
|
44 | fcmOptions?: FcmOptions;
|
45 | from: string;
|
46 | collapseKey: string;
|
47 | }
|
48 |
|
49 | export interface FirebaseMessaging {
|
50 |
|
51 | deleteToken(): Promise<boolean>;
|
52 | getToken(options?: {
|
53 | vapidKey?: string;
|
54 | serviceWorkerRegistration?: ServiceWorkerRegistration;
|
55 | }): Promise<string>;
|
56 | onMessage(
|
57 | nextOrObserver: NextFn<any> | Observer<any>,
|
58 | error?: ErrorFn,
|
59 | completed?: CompleteFn
|
60 | ): Unsubscribe;
|
61 |
|
62 |
|
63 | onBackgroundMessage(
|
64 | nextOrObserver: NextFn<MessagePayload> | Observer<MessagePayload>,
|
65 | error?: ErrorFn,
|
66 | completed?: CompleteFn
|
67 | ): Unsubscribe;
|
68 |
|
69 |
|
70 | deleteToken(token: string): Promise<boolean>;
|
71 | onTokenRefresh(
|
72 | nextOrObserver: NextFn<any> | Observer<any>,
|
73 | error?: ErrorFn,
|
74 | completed?: CompleteFn
|
75 | ): Unsubscribe;
|
76 | |
77 |
|
78 |
|
79 |
|
80 | requestPermission(): Promise<void>;
|
81 | setBackgroundMessageHandler(
|
82 | callback: (payload: any) => Promise<any> | void
|
83 | ): void;
|
84 | useServiceWorker(registration: ServiceWorkerRegistration): void;
|
85 | usePublicVapidKey(b64PublicKey: string): void;
|
86 | }
|
87 |
|
88 | export type FirebaseMessagingName = 'messaging';
|
89 |
|
90 | declare module '@firebase/component' {
|
91 | interface NameServiceMapping {
|
92 | 'messaging': FirebaseMessaging;
|
93 | }
|
94 | }
|