type ExtendedPushSubscription = PushSubscription & { keys: { auth: string; p256dh: string; }; }; declare global { namespace BGA { interface AjaxActions { "/player/profile/savePushSubscription.html": { isnewbrowser: boolean; browser: string; endpoint: ExtendedPushSubscription['endpoint']; auth: string; p256dh: string; }; } } } declare class WebPush_Template { ajaxcall_callback: InstanceType["ajaxcall"]; serviceWorkerRegistered: boolean; permissionAlreadyGranted: boolean; permissionGranted: boolean; pushSubscription: ExtendedPushSubscription | null; l_serviceworker_url: string; browser: string; constructor(callback: InstanceType["ajaxcall"]); init(): Promise; refresh(): Promise | void; revoke(): void; isSupported(): boolean; isAuthorized(): boolean; registerServiceWorker(): Promise; askPermission(): Promise; subscribeUserToPush(): Promise; savePushSubscription(e: any): void; } declare let WebPush: DojoJS.DojoClass(url: Action, args: NoInfer & BGA.AjaxAdditionalArgs>, scope: Scope, onSuccess?: NoInfer> | undefined, callback?: NoInfer> | undefined, ajax_method?: "get" | "post" | "iframe" | undefined) => void]>; export = WebPush; declare global { namespace BGA { type WebPush = typeof WebPush; interface EBG { webpush: WebPush; } } var ebg: BGA.EBG; } //# sourceMappingURL=webpush.d.ts.map