UNPKG

web-push-notifications

Version:
65 lines (64 loc) 1.7 kB
export interface IPushServiceSubscriptionKeys { pushToken?: string; publicKey?: string; authToken?: string; endpoint?: string; } export declare abstract class IPushService { /** * Get current status of permission for send notifications. * * @return { NotificationPermission } */ abstract getPermission(): NotificationPermission; /** * Check is permission granted. * * @return { boolean } */ abstract checkIsPermissionGranted(): boolean; /** * Check is permission default. * * @return { boolean } */ abstract checkIsPermissionDefault(): boolean; /** * Check is manual unsubscribed for push notifications. */ abstract checkIsManualUnsubscribed(): Promise<boolean>; /** * Request permission for send notifications. * * @return { Promise<void> } */ abstract askPermission(): Promise<void>; /** * Get subscription keys for send push notifications. * * @return { Promise<IPushServiceSubscriptionKeys> } */ abstract getTokens(): Promise<IPushServiceSubscriptionKeys>; /** * Subscribe for push notifications. * * @return { Promise<void> } */ abstract subscribe(): Promise<void>; /** * Unsubscribe for push notifications. * * @return { Promise<void> } */ abstract unsubscribe(): Promise<void>; /** * Check can receive notifications from Pushwoosh. * * @return { Promise<boolean> } */ abstract checkIsRegister(): Promise<boolean>; /** * Check is change sender configuration */ abstract checkIsNeedResubscribe(): Promise<boolean>; }