sinch-rtc
Version:
RTC JavaScript/Web SDK
26 lines (25 loc) • 1.3 kB
TypeScript
import { PushService } from "./PushService";
import { Instance } from "../instance/UserInstance";
export interface PushWorker {
showNotification(title: string, options: NotificationOptions): void;
register(): Promise<void>;
unregister(): Promise<void>;
addEventListener(action: (evt: any) => void): void;
start(applicationServerKey: string, instance: Instance): Promise<void>;
assertPushEnvironment(): Promise<void>;
}
export declare class W3CPushWorker implements PushWorker {
private pushService;
static readonly ERROR_MANAGER_NOT_AVAILABLE = "PushManager not available. Make sure you're using properly configured application on browser that supports push notifications.";
static readonly ERROR_PERMISSIONS_DENIED = "Push notifications permissions denied. Make sure you allow push notifications.";
private pushEvent;
private settings;
private pushServiceWorker;
constructor(serviceWorkerName: string, pushService: PushService);
showNotification(title: string, options: NotificationOptions): void;
register(): Promise<void>;
unregister(): Promise<void>;
addEventListener(action: (evt: any) => void): void;
start(applicationServerKey: string, instance: Instance): Promise<void>;
assertPushEnvironment(): Promise<void>;
}