@mui/x-date-pickers-pro
Version:
The Pro plan edition of the MUI X Date and Time Picker components.
40 lines • 1.61 kB
TypeScript
import * as React from 'react';
import { MuiPickersAdapter, PickersTimezone, PickerValidDate } from '@mui/x-date-pickers/models';
import { PickerRangeValue } from '@mui/x-date-pickers/internals';
import { RangePosition } from "../models/index.js";
interface UseDragRangeParams {
disableDragEditing?: boolean;
adapter: MuiPickersAdapter;
setRangeDragDay: (value: PickerValidDate | null) => void;
setIsDragging: (value: boolean) => void;
isDragging: boolean;
onDatePositionChange: (position: RangePosition) => void;
onDrop: (newDate: PickerValidDate) => void;
dateRange: PickerRangeValue;
timezone: PickersTimezone;
}
interface UseDragRangeEvents {
onDragStart?: React.DragEventHandler<HTMLButtonElement>;
onDragEnter?: React.DragEventHandler<HTMLButtonElement>;
onDragLeave?: React.DragEventHandler<HTMLButtonElement>;
onDragOver?: React.DragEventHandler<HTMLButtonElement>;
onDragEnd?: React.DragEventHandler<HTMLButtonElement>;
onDrop?: React.DragEventHandler<HTMLButtonElement>;
onTouchStart?: React.TouchEventHandler<HTMLButtonElement>;
onTouchMove?: React.TouchEventHandler<HTMLButtonElement>;
onTouchEnd?: React.TouchEventHandler<HTMLButtonElement>;
}
interface UseDragRangeResponse extends UseDragRangeEvents {
isDragging: boolean;
rangeDragDay: PickerValidDate | null;
draggingDatePosition: RangePosition | null;
}
export declare const useDragRange: ({
disableDragEditing,
adapter,
onDatePositionChange,
onDrop,
dateRange,
timezone
}: Omit<UseDragRangeParams, "setRangeDragDay" | "setIsDragging" | "isDragging">) => UseDragRangeResponse;
export {};