import { ComponentType, LegacyRef } from 'react';
import { Row } from 'react-table';
import { FixedSizeList, ListChildComponentProps, ListItemKeySelector } from 'react-window';
import { TableHeightKeyType } from './TableUtils';
type VirtualizedRowsType<DATA_ROW extends Record<string, unknown> = Record<string, unknown>> = {
    rows: Row<DATA_ROW>[];
    RenderRow: ComponentType<ListChildComponentProps<Row<DATA_ROW>[]>>;
    rowHeight: TableHeightKeyType;
    setHasScrollbar: React.Dispatch<React.SetStateAction<boolean>>;
    hasScrollbar?: boolean;
    itemKey?: ListItemKeySelector<Row<DATA_ROW>[]>;
    onBottom?: (rowLength: number) => void;
    onBottomOffset?: number;
    listRef?: LegacyRef<FixedSizeList<Row<DATA_ROW>[]>>;
};
export declare const VirtualizedRows: <DATA_ROW extends Record<string, unknown> = Record<string, unknown>>({ rows, rowHeight, setHasScrollbar, onBottom, onBottomOffset, RenderRow, listRef, itemKey, }: VirtualizedRowsType<DATA_ROW>) => JSX.Element;
export declare const useTableScrollbar: () => {
    hasScrollbar: boolean;
    setHasScrollbar: import("react").Dispatch<import("react").SetStateAction<boolean>>;
    scrollBarWidth: number;
    handleScrollbarWidth: (node: any) => void;
};
export {};
//# sourceMappingURL=TableCommon.d.ts.map