import { DeepKeyOf } from '../../../../utils/types';
import { ReactElement } from 'react';
export interface ColumnNestedValueFormatterProps<TRow> {
    /**
     * Ruta a la propiedad anidada usando dot notation.
     * Permite acceder a valores dentro de objetos anidados.
     * @example
     * // Para acceder a { user: { profile: { name: 'Juan' } } }
     * fieldValue: 'user.profile.name' // Retorna 'Juan'
     */
    fieldValue: DeepKeyOf<TRow>;
    /**
     * Componente opcional para envolver el valor renderizado.
     * Por defecto usa React.Fragment.
     * @example
     * Component: Typography // Envuelve el valor en <Typography>{valor}</Typography>
     */
    Component?: React.ElementType;
    /**
     * Valor a mostrar cuando la propiedad es null o undefined.
     * Por defecto es '-'.
     */
    defaultValue?: string;
    /**
     * Optional handler run when the user clicks the cell content (no navigation).
     * Content is rendered with link-like styles (primary color, underline on hover).
     * @example
     * onLink: (row) => openDetailModal(row.id)
     */
    onLink?: (row: TRow) => void;
    /**
     * Optional. When set, shows an image at the start (use NestedFormatter). Only one of fieldImageUrl or fieldIcon.
     */
    fieldImageUrl?: DeepKeyOf<TRow> | ((row: TRow) => string | undefined);
    /**
     * Optional. When set, shows an icon at the start (use NestedFormatter). Only one of fieldImageUrl or fieldIcon.
     */
    fieldIcon?: DeepKeyOf<TRow> | ((row: TRow) => string | ReactElement | undefined);
    /**
     * Optional icon color when fieldIcon is set.
     */
    fieldIconColor?: DeepKeyOf<TRow> | ((row: TRow) => string | undefined) | string;
}
//# sourceMappingURL=types.d.ts.map