/**
 * Methods for configuring and managing push notifications from Firebase Cloud
 * Messaging in a ToDesktop application.
 *
 * @remarks
 * This package exposes a number of methods for configuring and managing push
 * notifications from Firebase Cloud Messaging.
 *
 * @experimental
 * @public
 * @packageDocumentation
 */
/**
 * @public
 */
export declare type PushNotificationStartOptions = {
    showNotifications?: boolean;
};
/**
 * @public
 */
export declare type PushNotificationsEvent = "start" | "error" | "tokenUpdate" | "receive";
/**
 * Starts the push notification service.
 *
 * @param sender - Firebase Sender ID (legacy) or Firebase Sender Object (new)
 * @public
 */
export declare function start(sender: string | {
    appID: string;
    projectID: string;
    apiKey: string;
    vapidKey: string;
}, options?: PushNotificationStartOptions): Promise<void>;
/**
 * Checks if the new push notifications API (using the firebase sender object) is
 * supported.
 *
 * @public
 */
export declare function supportsNewFCMService(): boolean;
/**
 * @public
 */
export declare const on: (event: "*" | PushNotificationsEvent, callback: (...any: any[]) => void) => Promise<() => Promise<void>>;
