import type { IVTable } from './tables/base-table';
import type { TYPES } from '@visactor/vtable';
export type EventCallback<Params> = (params: Params) => void;
export interface EventsProps {
    onClickCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['click_cell']>;
    onDblClickCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['dblclick_cell']>;
    onMouseDownCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mousedown_cell']>;
    onMouseUpCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseup_cell']>;
    onSelectedCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['selected_cell']>;
    onSelectedClear?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['selected_clear']>;
    onKeyDown?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['keydown']>;
    onMouseEnterTable?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseenter_table']>;
    onMouseLeaveTable?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseleave_table']>;
    onMouseDownTable?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mousedown_table']>;
    onMouseMoveCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mousemove_cell']>;
    onMouseEnterCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseenter_cell']>;
    onMouseLeaveCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseleave_cell']>;
    onContextMenuCell?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['contextmenu_cell']>;
    onContextMenuCanvas?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['contextmenu_canvas']>;
    onResizeColumn?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['resize_column']>;
    onResizeColumnEnd?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['resize_column_end']>;
    onChangeHeaderPosition?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['change_header_position']>;
    onSortClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['sort_click']>;
    onFreezeClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['freeze_click']>;
    onScroll?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['scroll']>;
    onDropdownMenuClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['dropdown_menu_click']>;
    onMouseOverChartSymbol?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseover_chart_symbol']>;
    onDragSelectEnd?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['drag_select_end']>;
    onDropdownIconClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['dropdown_icon_click']>;
    onDropdownMenuClear?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['dropdown_menu_clear']>;
    onTreeHierarchyStateChange?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['tree_hierarchy_state_change']>;
    onShowMenu?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['show_menu']>;
    onHideMenu?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['hide_menu']>;
    onIconClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['icon_click']>;
    onLegendItemClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['legend_item_click']>;
    onLegendItemHover?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['legend_item_hover']>;
    onLegendItemUnHover?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['legend_item_unHover']>;
    onLegendChange?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['legend_change']>;
    onMouseEnterAxis?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseenter_axis']>;
    onMouseLeaveAxis?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mouseleave_axis']>;
    onCheckboxStateChange?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['checkbox_state_change']>;
    onRadioStateChange?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['radio_state_change']>;
    onAfterRender?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['after_render']>;
    onInitialized?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['initialized']>;
    onPivotSortClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['pivot_sort_click']>;
    onDrillMenuClick?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['drillmenu_click']>;
    onVChartEventType?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['vchart_event_type']>;
    onChangCellValue?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['change_cell_value']>;
    onMousedownFillHandle?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['mousedown_fill_handle']>;
    onDragFillHandleEnd?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['drag_fill_handle_end']>;
    onDblclickFillHandle?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['dblclick_fill_handle']>;
    onScrollVerticalEnd?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['scroll_vertical_end']>;
    onScrollHorizontalEnd?: EventCallback<TYPES.TableEventHandlersEventArgumentMap['scroll_horizontal_end']>;
}
export declare const TABLE_EVENTS: {
    onClickCell: "click_cell";
    onDblClickCell: "dblclick_cell";
    onMouseDownCell: "mousedown_cell";
    onMouseUpCell: "mouseup_cell";
    onSelectedCell: "selected_cell";
    onSelectedClear: "selected_clear";
    onKeyDown: "keydown";
    onMouseEnterTable: "mouseenter_table";
    onMouseLeaveTable: "mouseleave_table";
    onMouseDownTable: "mousedown_table";
    onMouseMoveCell: "mousemove_cell";
    onMouseEnterCell: "mouseenter_cell";
    onMouseLeaveCell: "mouseleave_cell";
    onContextMenuCell: "contextmenu_cell";
    onContextMenuCanvas: "contextmenu_canvas";
    onResizeColumn: "resize_column";
    onResizeColumnEnd: "resize_column_end";
    onChangeHeaderPosition: "change_header_position";
    onSortClick: "sort_click";
    onFreezeClick: "freeze_click";
    onScroll: "scroll";
    onDropdownMenuClick: "dropdown_menu_click";
    onMouseOverChartSymbol: "mouseover_chart_symbol";
    onDragSelectEnd: "drag_select_end";
    onDropdownIconClick: "dropdown_icon_click";
    onDropdownMenuClear: "dropdown_menu_clear";
    onTreeHierarchyStateChange: "tree_hierarchy_state_change";
    onShowMenu: "show_menu";
    onHideMenu: "hide_menu";
    onIconClick: "icon_click";
    onLegendItemClick: "legend_item_click";
    onLegendItemHover: "legend_item_hover";
    onLegendItemUnHover: "legend_item_unHover";
    onLegendChange: "legend_change";
    onMouseEnterAxis: "mouseenter_axis";
    onMouseLeaveAxis: "mouseleave_axis";
    onCheckboxStateChange: "checkbox_state_change";
    onRadioStateChange: "radio_state_change";
    onAfterRender: "after_render";
    onInitialized: "initialized";
    onPivotSortClick: "pivot_sort_click";
    onDrillMenuClick: "drillmenu_click";
    onVChartEventType: "vchart_event_type";
    onChangCellValue: "change_cell_value";
    onMousedownFillHandle: "mousedown_fill_handle";
    onDragFillHandleEnd: "drag_fill_handle_end";
    onDblclickFillHandle: "dblclick_fill_handle";
    onScrollVerticalEnd: "scroll_vertical_end";
    onScrollHorizontalEnd: "scroll_horizontal_end";
};
export declare const TABLE_EVENTS_KEYS: string[];
export declare const findEventProps: <T extends EventsProps>(props: T, supportedEvents?: Record<string, string>) => EventsProps;
export declare const bindEventsToTable: <T>(table: IVTable, newProps?: T, prevProps?: T, supportedEvents?: Record<string, string>) => boolean;
