import { NotificationProps } from '../../../../shared/types/message';
import { NotificationCardProps, NotificationIntent } from '../../../Notification';
import { AnimationAlert } from '../../../../shared/types/alert';
import type * as React from 'react';
/**
 * Mapea una notificación del servicio agrupado al componente **Notification** del design system.
 *
 * @param n - Entrada de la cola del servicio agrupado.
 * @param intent - Intención visual compartida del mazo (`brand`, `neutral`, …).
 * @param options - Overrides de presentación para esta capa (animación, timer, footer, botones).
 * @returns Props listas para `<_notification.Notification />` (`NotificationCardProps`).
 */
export declare function messageQueueEntryToNotification(n: NotificationProps, intent: NotificationIntent, options: {
    /** Clases Tailwind en el contenedor de la tarjeta (ancho, anulación de transición en capas, …). */
    className?: string;
    /** Indica fase de salida para animación de cierre. */
    isLeaving: boolean;
    /** Duración en ms para la barra de progreso; `undefined` oculta la barra en esa capa. */
    duration?: number;
    /** Atenúa la barra sin desmontarla (p. ej. hover en el mazo). */
    progressBarClassName?: string;
    /** Animación del `Alert` interno (`none` en capas inferiores del stack). */
    animation: AnimationAlert;
    /** Si es true, propaga textos y callbacks de botones primario/secundario desde `n`. */
    showActionButtons: boolean;
    /** Si se define, sustituye `n.showCloseButton` (p. ej. capas traseras del mazo). */
    showCloseButton?: boolean;
    /** Pie opcional reemplazando el slot `footer` de la tarjeta. */
    footer?: React.ReactNode | null;
    /** Cerrar desde el botón X (o overlay) con evento de botón. */
    onClose?: (e: React.MouseEvent<HTMLButtonElement>) => void;
    /** Click en la superficie de la tarjeta cuando aplique. */
    onClick?: () => void;
}): NotificationCardProps;
/**
 * Fusiona overrides parciales sobre una tarjeta de notificación ya construida.
 *
 * @param base - Props completas de `Notification` (con `open`).
 * @param over - Parcial por bloques (`content`, `appearance`, `meta`, `events`, `footer`) sin obligar `open`.
 * @returns Nueva tarjeta con bloques fusionados superficialmente.
 */
export declare function mergeNotificationCard(base: NotificationCardProps, over?: Partial<Omit<NotificationCardProps, 'open'>>): NotificationCardProps;
//# sourceMappingURL=notificationItemCardMapping.d.ts.map