import type { SxProps } from '@mui/system/styleFunctionSx'; import type { Theme } from '@mui/material/styles'; import type { EventTimelinePremiumParameters, EventTimelinePremiumStore } from '@mui/x-scheduler-internals-premium/use-event-timeline-premium'; import type { SchedulerPublicAPI } from '@mui/x-scheduler-internals/internals'; import type { EventTimelineLocaleText } from '@mui/x-scheduler/models'; import type { EventTimelinePremiumSlotsAndSlotProps } from "../models/slots.js"; import type { EventTimelinePremiumClasses } from "./eventTimelinePremiumClasses.js"; export type EventTimelinePremiumApiRef = React.RefObject>> | undefined>; export interface EventTimelinePremiumProps extends React.HTMLAttributes, EventTimelinePremiumParameters, EventTimelinePremiumSlotsAndSlotProps { /** * Whether each event must be assigned to a resource. When true, the resource cannot be cleared in the edit dialog and the form cannot be submitted without one. * @default true */ shouldEventRequireResource?: boolean; /** * Override or extend the styles applied to the component. */ classes?: Partial; /** * Set the locale text of the Event Timeline. * You can find all the translation keys supported in [the source](https://github.com/mui/mui-x/blob/HEAD/packages/x-scheduler/src/models/translations.ts) * in the GitHub repository. */ localeText?: Partial; /** * The ref object that allows Event Timeline manipulation. * Can be instantiated with `useEventTimelinePremiumApiRef()`. */ apiRef?: EventTimelinePremiumApiRef; /** * The label displayed in the resource column header. * When provided, this takes priority over `localeText.timelineResourceTitleHeader`. */ resourceColumnLabel?: string; /** * The system prop that allows defining system overrides as well as additional CSS styles. */ sx?: SxProps; }