import { Ref } from 'vue';
export interface TableLayoutState {
    headerWrapperRef: Ref<HTMLElement | null>;
    bodyWrapperRef: Ref<HTMLElement | null>;
    footerWrapperRef: Ref<HTMLElement | null>;
    scrollLeft: Ref<number>;
    scrollTop: Ref<number>;
    bodyClientWidth: Ref<number>;
    bodyClientHeight: Ref<number>;
    hasHorizontalScroll: Ref<boolean>;
    hasVerticalScroll: Ref<boolean>;
    showLeftShadow: Ref<boolean>;
    showRightShadow: Ref<boolean>;
    handleBodyScroll: () => void;
    handleFixedWheel: (event: WheelEvent) => void;
    syncLayout: () => void;
    scrollTo: (options: ScrollToOptions | number, top?: number) => void;
    setScrollLeft: (left: number) => void;
    setScrollTop: (top: number) => void;
}
export declare function useTableLayout(): TableLayoutState;
