import type { NotificationDisplayRequest, NotificationPresenter, NetworkClient, PushNotificationAction, PushNotificationPayload, UserInfo } from "../../types"; import type { Logger } from "../../utils/logger"; interface PushManagerConfig { apiKey: string; fetcher?: NetworkClient; getJwt?: () => string | null | undefined; onJwtRefresh?: () => Promise; onReinit?: () => Promise; notificationUrl?: string; notificationPresenter?: NotificationPresenter; organisationId?: string; getUserInfo?: () => UserInfo | null; } export declare class PushManager { private readonly config; private readonly logger; constructor(config: PushManagerConfig, logger: Logger); handleNotificationReceived(payload: PushNotificationPayload): Promise; handleNotificationOpened(payload: PushNotificationPayload): Promise; handleNotificationActionClicked(payload: PushNotificationPayload, action?: PushNotificationAction): Promise; showNotification(payload: PushNotificationPayload, source?: NotificationDisplayRequest["source"]): Promise; private sendNotificationEvent; private dispatchNotificationEvent; private recoverAuthAndRetryIfNeeded; private isJwtExpiredResponse; private buildNotificationEventHeaders; private redactHeaders; private buildNotificationEventPayload; private buildNotificationEventMetadata; private jsonObjectValue; private firstRawString; private assignValue; } export {};