import { BaseSyntheticEvent } from 'react';
import { TableFilterConfig } from '../types';
export interface UseTableDataParameters {
    initialState?: TableFilterConfig;
    wrapperRef?: React.RefObject<HTMLElement | null>;
    updatedCheckboxData?: TableFilterConfig;
    handleCancel?: () => void;
    handleClear?: () => void;
    handleSubmit?: (data: Record<string, string[]>) => void;
    handleDropdownChange?: (data: {
        groupName: string;
        name: string | number;
        checked: boolean;
    }) => void;
}
export declare const useTableData: ({ initialState, wrapperRef, updatedCheckboxData, handleCancel, handleSubmit, handleClear, handleDropdownChange, }: UseTableDataParameters) => {
    checkboxData: TableFilterConfig;
    wrapperRef: import("react").RefObject<HTMLElement | null> | undefined;
    refsList: import("react").RefObject<HTMLElement | null>[];
    setElementRef: (groupName: string, element: HTMLElement | null) => void;
    onCheckboxToggle: (groupName: string, name: string | number) => void;
    onDropdownChange: (groupName: string, name: string | number) => void;
    onSubmit: (event?: BaseSyntheticEvent) => void;
    onReset: () => void;
    onClear: () => void;
};
export type UseTableDataResult = ReturnType<typeof useTableData>;
