@intuitionrobotics/push-pub-sub
Version:
43 lines (42 loc) • 1.44 kB
TypeScript
import { Module } from "@intuitionrobotics/ts-common";
import { BaseSubscriptionData, SubscriptionDataRegistration } from "../../index";
export declare const Command_SwToApp = "SwToApp";
type FirebaseConfig = {
apiKey: string;
authDomain: string;
projectId: string;
messagingSenderId: string;
databaseURL?: string;
};
export type PushPubSubConfig = {
config?: FirebaseConfig;
publicKeyBase64: string;
swFileName?: string;
registerOnInit?: boolean;
};
export declare const pushSessionIdKey = "x-push-session-id";
export declare class PushPubSubModule_Class extends Module<PushPubSubConfig> {
private subscriptions;
private firebaseToken?;
private messaging?;
private readonly pushSessionId;
protected timeout: number;
constructor();
init(): void;
getPushSessionId(): string;
private registerServiceWorker;
initApp: () => void;
getToken: (options?: {
vapidKey?: string;
serviceWorkerRegistration?: ServiceWorkerRegistration;
}) => Promise<void>;
private processMessageFromSw;
private processMessage;
subscribe: (subscription: SubscriptionDataRegistration) => void;
private subscribeImpl;
subscribeMulti: (subscriptions: SubscriptionDataRegistration[]) => void;
unsubscribe: (subscription: BaseSubscriptionData) => void;
private register;
}
export declare const PushPubSubModule: PushPubSubModule_Class;
export {};