react-konva-grid
Version:
Declarative React Canvas Grid primitive for Data table, Pivot table, Excel Worksheets
32 lines (31 loc) • 971 B
TypeScript
import React from "react";
import { ViewPortProps, GridRef, CellInterface, ItemSizer } from "./../Grid";
interface IProps {
gridRef: React.MutableRefObject<GridRef>;
getValue: (cell: CellInterface) => any;
initialVisibleRows?: number;
minColumnWidth?: number;
cellSpacing?: number;
timeout?: number;
resizeOnScroll?: boolean;
font?: string;
resizeStrategy?: ResizeStrategy;
rowCount?: number;
}
declare enum ResizeStrategy {
"lazy" = "lazy",
"full" = "full"
}
interface AutoResizerResults {
columnWidth: ItemSizer;
onViewChange: (cells: ViewPortProps) => void;
}
/**
* Auto sizer hook
* @param param
*
* TODO
* Dynamically resize columns after user has scrolled down/view port changed ?
*/
declare const useAutoSizer: ({ gridRef, getValue, initialVisibleRows, cellSpacing, minColumnWidth, timeout, resizeStrategy, rowCount, resizeOnScroll, font, }: IProps) => AutoResizerResults;
export default useAutoSizer;