import { IRemoteConfig } from '../types/index.js';
/**
 * Request permission to send push notifications.
 *
 * @param pushManager
 * @param publicKey VAPID public key
 */
export declare function subscribeToPushNotifications(pushManager: PushManager, publicKey: string): Promise<PushSubscription>;
/**
 * Request permission to send push notifications and store the subscription in
 * the backend.
 *
 * @param pushManager
 * @param user
 * @param project
 */
export declare function createPushSubscription(pushManager: PushManager, config: IRemoteConfig): Promise<unknown>;
/**
 * Request permission to send push notifications in Safari and store the
 * subscription in the backend.
 *
 * @param authenticationToken A string that helps you identify the user
 * @param webServiceUrl URL of the Safari web push service
 * @param websitePushID Apple identifier of the website push service
 */
export declare function createSafariPushSubscription(authenticationToken: string, webServiceUrl: string, websitePushID?: string): Promise<any>;
