import { type DragEventHandler } from 'react'; type DragHandler = DragEventHandler | undefined; export type UseDragAndDropHandlersParams = { /** * Пропс позволяющий организовать логику dragAndDrop для изменяемого интервала */ dragAndDropProps?: { /** * Метод вызываемый при в самом начале перемещения, передает дату начала перемещения */ onRangeDayDragStart: (draggableDate: Date) => void; /** * Метод вызываемый в самом конце, после onDayDrop, передает дату, с которой началось перемещение */ onRangeDayDragEnd: (draggableDate: Date) => void; /** * Метод вызываемый в момент когда пользователь бросил перемещаемый элемент на выбранное место, передает выбранную дату */ onDayDrop: (date: Date) => void; /** * Метод аналог ховера/mouseenter, вызываемый в момент, когда перемещаемый элемент попал на какую либо дату, передает дату на которую навелись */ onDayDragEnter: (date: Date) => void; }; isSelected: boolean; isInSelectedRange: boolean; isDisabled: boolean; date: Date; }; export declare const useDragAndDropHandlers: ({ date, isInSelectedRange, isSelected, isDisabled, dragAndDropProps, }: UseDragAndDropHandlersParams) => { handleDragStart: DragHandler; handleDragEnd: DragHandler; handleDragEnter: DragHandler; handleDragOver: DragHandler; handleDrop: DragHandler; isDraggable: true | undefined; }; export {};