/** * Watch Tower request types * * Parameters for Watch Tower service calls * * @module features/watch-tower/types/WatchTowerRequest */ /** * Web Push subscription keys (from `PushSubscription.getKey()`) */ export interface WatchTowerWebPushKeys { /** Base64 URL-safe P-256 ECDH public key */ p256dh: string; /** Base64 URL-safe authentication secret */ auth: string; } /** * Web Push subscription payload for the Watch Tower service */ export interface WatchTowerWebPushSubscription { /** Push service endpoint URL */ endpoint: string; /** Encryption keys from the browser push subscription */ keys: WatchTowerWebPushKeys; } /** Parameters for WatchTowerModule.addToWatchTower */ export interface AddToWatchTowerParams { /** RGB invoice string to monitor */ invoice: string; /** * FCM device token for mobile push notifications. * If omitted, the default from WatchTowerModule.setFcmToken is used when set. */ fcmToken?: string; /** Email address for notifications */ email?: string; /** Web Push subscription for browser notifications */ webPushNotification?: WatchTowerWebPushSubscription; }