import { NotificationIntent } from '../../../Notification';
import { NotificationProps } from '../../../../shared/types/message';
import type * as React from 'react';
/** Props de la vista apilada: capas bajo la frontal + frontal y pie del mazo. */
export interface NotificationItemStackDeckProps {
    /** Notificaciones que se pintan como capas absolutas bajo la frontal. */
    stackUnderLayers: NotificationProps[];
    /** Tarjeta visible al frente del stack. */
    frontNotification: NotificationProps;
    /** Clave estable de React para la frontal (id preferido). */
    frontNotificationKey: number | undefined;
    /** Píxeles de separación vertical entre capas (colapsado vs expandido). */
    perLayerBottomPx: number;
    /** Si el hover expande el stack a ancho completo. */
    isStackExpanded: boolean;
    /** Intención del mazo. */
    intent: NotificationIntent;
    /** Animación de salida del grupo. */
    isLeaving: boolean;
    /** Clases aplicadas al `Alert` del deck (p. ej. anular transiciones en multilayer). */
    stackDeckAlertClassName: string;
    /** Duración efectiva de barra solo para la id de la notificación más reciente del mazo. */
    timerDurationInStack: (id: number | undefined) => number | undefined;
    /** Wrapper de clases para la barra según hover y duración. */
    progressBarClassWhenStackHover: (durationMs: number | undefined) => string | undefined;
    /** Cierre por tarjeta. */
    handleDismissOne: (n: NotificationProps) => (e: React.MouseEvent<HTMLButtonElement>) => void;
    /** Pie del stack (“N notificaciones más”) u otro chrome. */
    stackListFooter: React.ReactNode;
}
/**
 * Vista apilada: capas inferiores absolutas + frontal relativa.
 *
 * @example
 * // Compuesto por `NotificationItem`; referencia de integración:
 * <NotificationItemStackDeck
 *   stackUnderLayers={tail}
 *   frontNotification={head}
 *   frontNotificationKey={head.id}
 *   perLayerBottomPx={8}
 *   isStackExpanded={false}
 *   intent="informativa"
 *   isLeaving={false}
 *   stackDeckAlertClassName="ui-w-full"
 *   timerDurationInStack={() => undefined}
 *   progressBarClassWhenStackHover={() => undefined}
 *   handleDismissOne={(n) => (e) => { e.stopPropagation(); }}
 *   stackListFooter={null}
 * />
 */
export declare function NotificationItemStackDeck({ stackUnderLayers, frontNotification, frontNotificationKey, perLayerBottomPx, isStackExpanded, intent, isLeaving, stackDeckAlertClassName, timerDurationInStack, progressBarClassWhenStackHover, handleDismissOne, stackListFooter, }: NotificationItemStackDeckProps): import("react/jsx-runtime").JSX.Element;
export declare namespace NotificationItemStackDeck {
    var displayName: string;
}
//# sourceMappingURL=NotificationItemStackDeck.d.ts.map