import { EmitterSubscription } from 'react-native';
import type { NotificareNotification, NotificareNotificationAction } from 'react-native-notificare';
export declare class NotificarePushUI {
    private static readonly eventEmitter;
    static presentNotification(notification: NotificareNotification): Promise<void>;
    static presentAction(notification: NotificareNotification, action: NotificareNotificationAction): Promise<void>;
    static onNotificationWillPresent(callback: (notification: NotificareNotification) => void): EmitterSubscription;
    static onNotificationPresented(callback: (notification: NotificareNotification) => void): EmitterSubscription;
    static onNotificationFinishedPresenting(callback: (notification: NotificareNotification) => void): EmitterSubscription;
    static onNotificationFailedToPresent(callback: (notification: NotificareNotification) => void): EmitterSubscription;
    static onNotificationUrlClicked(callback: (data: {
        notification: NotificareNotification;
        url: string;
    }) => void): EmitterSubscription;
    static onActionWillExecute(callback: (data: {
        notification: NotificareNotification;
        action: NotificareNotificationAction;
    }) => void): EmitterSubscription;
    static onActionExecuted(callback: (data: {
        notification: NotificareNotification;
        action: NotificareNotificationAction;
    }) => void): EmitterSubscription;
    static onActionNotExecuted(callback: (data: {
        notification: NotificareNotification;
        action: NotificareNotificationAction;
    }) => void): EmitterSubscription;
    static onActionFailedToExecute(callback: (data: {
        notification: NotificareNotification;
        action: NotificareNotificationAction;
        error?: string;
    }) => void): EmitterSubscription;
    static onCustomActionReceived(callback: (data: {
        notification: NotificareNotification;
        action: NotificareNotificationAction;
        url: string;
    }) => void): EmitterSubscription;
}
