UNPKG

web-push-notifications

Version:
92 lines (91 loc) 2.26 kB
import { type TBellConfig } from './subscribe_widget.types'; import { type Pushwoosh } from '../../core/Pushwoosh'; export declare class PWSubscriptionButtonWidget { widget: HTMLElement; tooltip: HTMLElement; popover: HTMLElement; style: HTMLElement; pw: Pushwoosh; config: TBellConfig; constructor(pw: Pushwoosh); run(): Promise<void>; /** * Apply styles to element * @param styles * @param {HTMLElement} element */ private addStylesToElement; /** * Create container element * @returns {HTMLElement} */ private createContainer; /** * Create styles element * @returns {HTMLElement} */ private createStyle; /** * Create cell button element * @returns {HTMLElement} */ private createBell; /** * Create tooltip element * @returns {Promise<HTMLElement>} */ private createTooltip; /** * Create tooltip content element * @returns {Promise<HTMLElement>} */ private createTooltipContent; /** * Tooltip text content depending of the permissions * @returns {Promise<string>} */ private tooltipTextFactory; /** * Create permission denied popover element * @returns {HTMLElement} */ private createPopover; private getBrowserName; /** * Create permission denied popover content element * @returns {HTMLElement} */ private createPopoverContent; /** * Return source of help images depending of the browser * @returns {string} */ getImageSrc(img: string): string; private render; addEventListeners(): void; /** * Toggle visibility of popover */ toggleHelpPopover(): void; /** * Click bell button event callback * @returns {Promise<void>} */ private clickBell; /** * On subscribe event callback * @returns {Promise<void>} */ private onSubscribeEvent; /** * On permission denied event * @returns {Promise<void>} */ private onPermissionDeniedEvent; /** * Out of popover click event * @param {MessageEvent} ev */ clickOutOfPopover(ev: MessageEvent): void; private onUnsubscribeEvent; }