import { MuiPickersAdapter, PickerValidDate } from '@mui/x-date-pickers/models'; import { PickerRangeValue } from '@mui/x-date-pickers/internals'; import { RangePosition } from "../../models/index.js"; interface CalculateRangeChangeOptions { adapter: MuiPickersAdapter; range: PickerRangeValue; newDate: PickerValidDate | null; rangePosition: RangePosition; /** * Should allow flipping range `start` and `end` dates if the `newDate` would result in a new range creation. * * It is used to allow dragging range `start` date past `end` date essentially becoming the new `end` date and vice versa. */ allowRangeFlip?: boolean; shouldMergeDateAndTime?: boolean; referenceDate?: PickerValidDate | [PickerValidDate, PickerValidDate]; } interface CalculateRangeChangeResponse { nextSelection: RangePosition; newRange: PickerRangeValue; } export declare function resolveReferenceDate(referenceDate: PickerValidDate | [PickerValidDate, PickerValidDate] | undefined, rangePosition: RangePosition): PickerValidDate | undefined; export declare function calculateRangeChange({ adapter, range, newDate: selectedDate, rangePosition, allowRangeFlip, shouldMergeDateAndTime, referenceDate }: CalculateRangeChangeOptions): CalculateRangeChangeResponse; export declare function calculateRangePreview(options: CalculateRangeChangeOptions): PickerRangeValue; export {};