import { Ref } from 'vue';
import type { IColumn, IRecord } from '../table/types';
declare const useTableVirtual: (tableFlatData: Ref<IRecord[]>, tableFlatColumns: Ref<IColumn[]>) => {
    rowVirtualizer: Ref<import("../../../virtual-list/src/core").Virtualizer<HTMLElement, Element>, import("../../../virtual-list/src/core").Virtualizer<HTMLElement, Element>>;
    columnVirtualizer: Ref<import("../../../virtual-list/src/core").Virtualizer<HTMLElement, Element>, import("../../../virtual-list/src/core").Virtualizer<HTMLElement, Element>>;
    virtualRows: import("vue").ComputedRef<import("../../../virtual-list/src/core").VirtualItem[]>;
    virtualColumns: import("vue").ComputedRef<import("../../../virtual-list/src/core").VirtualItem[]>;
    resetItemXSize: (columns: IColumn[]) => void;
    getYIndexes: () => number[];
    getXIndexes: () => number[];
    virtualTranslateY: () => number;
    virtualTranslateX: () => number;
    calcVirtualYSize: () => string;
    calcVirtualXSize: () => string;
    scrollToYIndex: (index: number, align?: 'start' | 'auto') => void;
    scrollToXIndex: (index: number, align?: 'start' | 'auto') => void;
};
export default useTableVirtual;
