export type AlertColor = 'danger' | 'success' | 'info' | 'warning' | 'neutral' | 'brand'; export type VariantAlert = 'contained' | 'outlined' | 'accent' | 'minimal'; export type AnimationAlert = 'none' | 'fade' | 'slide' | 'zoom' | 'flip' | 'bounce' | 'slide-up'; export type SizeAlert = 'sm' | 'md'; export interface AlertProps { open: boolean; message?: string; description?: string; color?: AlertColor; isLeaving?: boolean; title?: string; showCloseButton?: boolean; variant?: VariantAlert; onClick?: () => void; onClose?: (e: React.MouseEvent) => void; onPrimaryClick?: () => void; onSecondaryClick?: () => void; primaryButtonText?: string; secondaryButtonText?: string; animation?: AnimationAlert; className?: string; size?: SizeAlert; /** * Duración en milisegundos antes del auto-cierre vía barra de progreso. * - `undefined`: sin barra ni cierre automático por tiempo. * - `0`: sin barra ni cierre automático (equivalente práctico a omitir; útil con APIs que envían `0` explícito). * - Valor **> 0**: barra de cuenta atrás y cierre al completar. */ duration?: number; /** * Clases en el contenedor de la barra de progreso (p. ej. `ui-hidden`) para ocultarla sin desmontarla. * Útil si un temporizador externo sigue activo y no debe reiniciarse la cuenta atrás visual. */ progressBarClassName?: string; /** * Contenido adicional que se renderiza antes de la barra de progreso. * Útil para mostrar contadores u otros elementos personalizados. */ children?: React.ReactNode; /** * URL de una imagen de avatar para mostrar en lugar del icono por defecto. * Cuando se proporciona, muestra un avatar circular con la imagen. */ avatar?: string; /** * Contenido al final de la fila de cabecera (p. ej. hora y estado leído). * Solo tiene efecto si {@link showCloseButton} es `false`; sustituye el hueco del botón cerrar. */ endAdornment?: React.ReactNode; /** * Con `avatar`, muestra un badge circular con el icono de intención superpuesto * (esquina inferior derecha), como en Notification (Figma). */ avatarIntentBadge?: boolean; /** * Si es true, el título y el mensaje (p. ej. subtítulo) muestran elipsis en una sola línea * cuando no caben en el ancho disponible (requiere `min-w-0` en ancestros flex). */ truncateHeaderText?: boolean; /** * Bloque bajo título/mensaje/descripción en la columna derecha de la cabecera * (p. ej. CTA o panel de {@link Notification} con `content.kind` distinto de `default`). */ headerAddon?: React.ReactNode; } export type AlertHeaderProps = Pick; export type AlertFooterProps = Pick; /** @deprecated Usa AlertProps en su lugar */ export type IAlert = AlertProps; //# sourceMappingURL=alert.d.ts.map