import { CSSProperties } from 'react'; import { ProcessedEventsData } from '../types/internal-interface'; import { EventModel } from '../types/scheduler-types'; /** * Interface for the props accepted by useEventPositioning hook */ interface UseEventPositioningProps { /** * The event information */ eventInfo: ProcessedEventsData; /** * The dates being rendered in the current view */ renderDates: Date[]; } /** * Interface for overflow directions */ interface OverflowDirection { /** * Whether the event overflows to the left */ isOverflowLeft: boolean; /** * Whether the event overflows to the right */ isOverflowRight: boolean; } /** * Interface for the result of useEventPositioning hook */ interface UseEventPositioningResult { /** * The processed event model */ processedEvent: EventModel; /** * Overflow direction indicators for spanned events */ overflowDirection: OverflowDirection; /** * CSS styles for positioning the event */ positionStyle: CSSProperties; } /** * Custom hook to calculate positioning for event elements * * @param {UseEventPositioningProps} props - The props for event positioning * @returns {UseEventPositioningResult} - Positioning data for the event * @private */ export declare const useEventPositioning: (props: UseEventPositioningProps) => UseEventPositioningResult; export default useEventPositioning;