import { ColumnConfig, RowConfig } from '../../../../shared/types/table';
interface CellRendererProps<T = unknown> {
    column: ColumnConfig<T>;
    row: RowConfig<T>;
    value: unknown;
    /** Valor original del accessor (sin pasar por render) - usado para edición */
    rawValue?: unknown;
    selected?: boolean;
    onCellFocus?: (rowId: string | number, columnId: string) => void;
    isCellFocused?: (rowId: string | number, columnId: string) => boolean;
    onCellChange?: (rowId: string | number, columnId: string, value: unknown) => void;
    /** Posición left para columnas sticky (en píxeles) */
    stickyLeft?: number;
    /** Posición right para columnas de acciones sticky (en píxeles) */
    stickyRight?: number;
    /** Es la última columna bloqueada (para mostrar borde separador) */
    isLastLocked?: boolean;
    /** Si es una columna de acciones */
    isActionsColumn?: boolean;
    hasColumnMaxWidthAuto?: boolean;
}
export declare const CellRenderer: <T>({ column, row, value, rawValue, selected, onCellFocus, isCellFocused, onCellChange, stickyLeft, stickyRight, isLastLocked, isActionsColumn, hasColumnMaxWidthAuto, }: CellRendererProps<T>) => import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=CellRenderer.d.ts.map