import * as React from 'react'; import type { BaseUIComponentProps, NonNativeButtonProps } from '@base-ui/react/internals/types'; import type { SchedulerEventId, SchedulerEventOccurrence, SchedulerResourceId, TemporalSupportedObject } from '@mui/x-scheduler-internals/models'; import { useDraggableEvent } from '@mui/x-scheduler-internals/internals'; import type { useElementPositionInCollection } from '@mui/x-scheduler-internals/internals'; export declare const TimelineGridEvent: React.ForwardRefExoticComponent & React.RefAttributes>; export declare namespace TimelineGridEvent { interface State extends useDraggableEvent.State { startingBeforeEdge: boolean; endingAfterEdge: boolean; dependencyDropTarget: boolean; } interface Props extends BaseUIComponentProps<'div', State>, NonNativeButtonProps, useDraggableEvent.PublicParameters { elementPosition?: useElementPositionInCollection.ReturnValue; } interface SharedDragData { eventId: SchedulerEventId; occurrenceKey: string; originalOccurrence: SchedulerEventOccurrence; start: TemporalSupportedObject; end: TemporalSupportedObject; /** * Cursor offset from the event start, in axis milliseconds. */ initialCursorPositionInEventMs: number; /** * The id of the resource row the occurrence was dragged from. */ sourceResourceId: SchedulerResourceId; } interface DragData extends SharedDragData { source: 'TimelineGridEvent'; } }