import { default as React } from 'react';
import { TextColor } from '../../../../shared/types/text';
export interface TruncatedWithTooltipProps {
    /** Contenido a mostrar (se trunca con ellipsis si no cabe). */
    children: React.ReactNode;
    /** Texto completo para el tooltip. Si no se pasa, se usa `children` solo cuando es string. */
    title?: React.ReactNode;
    /** Clases CSS del span que contiene el texto truncado. */
    className?: string;
    /**
     * Límite estricto de **caracteres** visibles (p. ej. ratings): se muestran como máximo `N`
     * caracteres y, si el texto es más largo, se añade `…` y el tooltip lleva el valor completo.
     * Requiere `title` o `children` en forma de `string`. Si es &gt; 0, **anula** el truncado por CSS
     * de esta instancia.
     */
    maxVisibleChars?: number;
    /**
     * Color del texto visible (tokens `ui-text-*` o color CSS arbitrario). Útil cuando el contenedor
     * no hereda el color del contenido (p. ej. celdas de tabla con truncado).
     */
    textColor?: TextColor | (string & {});
    /** Posición del tooltip (por defecto `top`). */
    position?: 'top' | 'bottom' | 'left' | 'right';
    /** Si es false, no se aplica truncado ni tooltip (solo se renderiza children con className). */
    truncate?: boolean;
    /** Si es false, no se muestra tooltip al truncar (solo truncado). Por defecto true. */
    showTooltipWhenTruncated?: boolean;
}
/**
 * Envuelve texto en truncado CSS (ellipsis) o, con {@link TruncatedWithTooltipProps.maxVisibleChars},
 * en un máximo de caracteres + `…`. El tooltip muestra el texto completo cuando aplica.
 */
export declare const TruncatedWithTooltip: ({ children, title, className, textColor, position, truncate, showTooltipWhenTruncated, maxVisibleChars, }: TruncatedWithTooltipProps) => import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=TruncatedWithTooltip.d.ts.map