import type { MousePointerCellEvent } from '@visactor/vtable'; import type { IEventData } from '../custom/custom-handler'; import type { SelectedCellEvent } from '@visactor/vtable/es/ts-types'; export interface CalendarEvents { CALENDAR_DATE_CLICK: 'calendar_date_click'; SELECTED_DATE: 'selected_date'; SELECTED_DATE_CLEAR: 'selected_date_clear'; DRAG_SELECT_DATE_END: 'drag_select_date_end'; CALENDAR_CUSTOM_EVENT_CLICK: 'calendar_custom_event_click'; } export declare const CALENDAR_EVENT_TYPE: CalendarEvents; export interface CalendarEventHandlersEventArgumentMap { calendar_date_click: { date: Date; tableEvent: MousePointerCellEvent; }; selected_date: { date: Date; tableEvent: SelectedCellEvent; }; selected_date_clear: void; drag_select_date_end: { dates: Date[]; tableEvent: MousePointerCellEvent; }; calendar_custom_event_click: { date: Date; tableEvent: MousePointerCellEvent; customEvent: IEventData; }; } export interface CalendarEventHandlersReturnMap { calendar_date_click: void; selected_date: void; selected_date_clear: void; drag_select_date_end: void; calendar_custom_event_click: void; } export type CalendarEventListener = (args: CalendarEventHandlersEventArgumentMap[TYPE]) => CalendarEventHandlersReturnMap[TYPE];