import * as React from 'react'; import { AppointmentModel, AppointmentMeta, Resource, Palette } from '@devexpress/dx-react-scheduler'; // ------------------------------------------------------------------------------------------------- // AllDayPanel // ------------------------------------------------------------------------------------------------- import { AllDayPanel as AllDayPanelBase, } from '@devexpress/dx-react-scheduler'; export namespace AllDayPanel { /** Describes a cell data configuration object. */ export type CellData = AllDayPanelBase.CellData; } export namespace AllDayPanel { /** Describes properties passed to a component that renders an All Day panel layout. */ export type LayoutProps = AllDayPanelBase.LayoutProps; } export namespace AllDayPanel { /** Describes properties passed to a component that renders an All Day panel cell. */ export type CellProps = AllDayPanelBase.CellProps; } export namespace AllDayPanel { /** Describes properties passed to a component that renders an All Day panel row. */ export type RowProps = AllDayPanelBase.RowProps; } export namespace AllDayPanel { /** Describes properties passed to a component that renders a title cell. */ export type TitleCellProps = AllDayPanelBase.TitleCellProps; } export namespace AllDayPanel { /** Describes properties passed to a component that renders the appointment layer. */ export type AppointmentLayerProps = AllDayPanelBase.AppointmentLayerProps; } export namespace AllDayPanel { /** Describes properties passed to a component that renders an All Day panel container. */ export type ContainerProps = AllDayPanelBase.ContainerProps; } export interface AllDayPanelProps { /** A component that renders an All Day panel layout. */ layoutComponent?: React.ComponentType; /** A component that renders an All Day panel cell. */ cellComponent?: React.ComponentType; /** A component that renders an All Day panel row. */ rowComponent?: React.ComponentType; /** A component that renders a title cell. */ titleCellComponent?: React.ComponentType; /** A component that renders the appointment layer. */ appointmentLayerComponent?: React.ComponentType; /** A component that renders an All Day panel container. */ containerComponent?: React.ComponentType; /** An object that specifies localization messages. */ messages?: AllDayPanelBase.LocalizationMessages; } /** A plugin that renders the All Day Panel. */ export declare const AllDayPanel: React.ComponentType & { /** A component that renders an All Day panel layout. */ Layout: React.ComponentType; /** A component that renders an All Day panel cell. */ Cell: React.ComponentType; /** A component that renders an All Day panel row. */ Row: React.ComponentType; /** A component that renders a title cell. */ TitleCell: React.ComponentType; /** A component that renders the appointment layer. */ AppointmentLayer: React.ComponentType; /** A component that renders an All Day panel container. */ Container: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // AppointmentForm // ------------------------------------------------------------------------------------------------- import { AppointmentForm as AppointmentFormBase, } from '@devexpress/dx-react-scheduler'; export namespace AppointmentForm { /** Properties passed to a component that renders the appointment form's overlay. */ export type OverlayProps = AppointmentFormBase.OverlayProps; } export namespace AppointmentForm { /** Properties passed to a component that renders the appointment form's layout. */ export type LayoutProps = AppointmentFormBase.LayoutProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a layout for command buttons. */ export type CommandLayoutProps = AppointmentFormBase.CommandLayoutProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a layout for editors that edit basic appointment data. */ export type BasicLayoutProps = AppointmentFormBase.BasicLayoutProps; } export namespace AppointmentForm { /** Properties passed to a component that renders the appointment form's layout for editors that edit the appointment's recurrence. */ export type RecurrenceLayoutProps = AppointmentFormBase.RecurrenceLayoutProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a Boolean value editor on the appointment form. */ export type BooleanEditorProps = AppointmentFormBase.BooleanEditorProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a command button on the appointment form. */ export type CommandButtonProps = AppointmentFormBase.CommandButtonProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a date-time editor on the appointment form. */ export type DateEditorProps = AppointmentFormBase.DateEditorProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a text label on the appointment form. */ export type LabelProps = AppointmentFormBase.LabelProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a radio group on the appointment form. */ export type RadioGroupProps = AppointmentFormBase.RadioGroupProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a menu of options on the appointment form. */ export type SelectProps = AppointmentFormBase.SelectProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a resource editor on the appointment form. */ export type ResourceEditorProps = AppointmentFormBase.ResourceEditorProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a text editor on the appointment form. */ export type TextEditorProps = AppointmentFormBase.TextEditorProps; } export namespace AppointmentForm { /** Properties passed to a component that renders a weekly recurrence selector on the appointment form. */ export type WeeklyRecurrenceSelectorProps = AppointmentFormBase.WeeklyRecurrenceSelectorProps; } export interface AppointmentFormProps { /** Specifies the appointment form's visibility. */ visible?: boolean; /** Handles changes to the appointment form's visibility. */ onVisibilityChange?: (visible: boolean) => void; /** Specifies the appointment's data that the form displays. */ appointmentData?: AppointmentModel; /** Handles changes to the appointment's data. */ onAppointmentDataChange?: (appointmentData: AppointmentModel) => void; /** Specifies the appointment form is read-only. */ readOnly?: boolean; /** An object that specifies localization messages. */ messages?: AppointmentFormBase.LocalizationMessages; /** A component that renders the appointment form's overlay. */ overlayComponent?: React.ComponentType; /** A component that renders the appointment form's layout. */ layoutComponent?: React.ComponentType; /** A component that renders a layout for command buttons. */ commandLayoutComponent?: React.ComponentType; /** A component that renders a layout for editors that edit basic appoinement data. */ basicLayoutComponent?: React.ComponentType; /** A component that renders a layout for editors that specify the appointment's recurrence. */ recurrenceLayoutComponent?: React.ComponentType; /** A component that renders a command button. */ commandButtonComponent?: React.ComponentType; /** A component that renders a text editor. */ textEditorComponent?: React.ComponentType; /** A component that renders a date-time editor. */ dateEditorComponent?: React.ComponentType; /** A component that renders a text label. */ labelComponent?: React.ComponentType; /** A component that renders an editor of Boolean values. */ booleanEditorComponent?: React.ComponentType; /** A component that renders an options menu. */ selectComponent?: React.ComponentType; /** A component that renders a radio group. */ radioGroupComponent?: React.ComponentType; /** A component that renders a resource editor. */ resourceEditorComponent?: React.ComponentType; /** A component that renders a weekly recurrence selector. */ weeklyRecurrenceSelectorComponent?: React.ComponentType; } /** The AppointmentForm plugin renders a form that visualizes appointment's data and allows a user to modify this data. */ export declare const AppointmentForm: React.ComponentType & { /** A component that renders the appointment form's overlay. */ Overlay: React.ComponentType; /** A component that renders the appointment form's layout. */ Layout: React.ComponentType; /** A component that renders a layout for command buttons. */ CommandLayout: React.ComponentType; /** A component that renders a layout for editors that edit basic appointment data. */ BasicLayout: React.ComponentType; /** A component that renders a layout for editors that specify the appointment's recurrence. */ RecurrenceLayout: React.ComponentType; /** A component that renders a text editor. */ TextEditor: React.ComponentType; /** A component that renders a date-time editor. */ DateEditor: React.ComponentType; /** A component that renders a text label. */ Label: React.ComponentType; /** A component that renders a Boolean value editor. */ BooleanEditor: React.ComponentType; /** A component that renders an options menu. */ Select: React.ComponentType; /** A component that renders a radio group. */ RadioGroup: React.ComponentType; /** A component that renders a weekly recurrence selector. */ WeeklyRecurrenceSelector: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // AppointmentTooltip // ------------------------------------------------------------------------------------------------- import { AppointmentTooltip as AppointmentTooltipBase, } from '@devexpress/dx-react-scheduler'; export namespace AppointmentTooltip { /** Describes properties passed to a component that renders a tooltip layout. */ export type LayoutProps = AppointmentTooltipBase.LayoutProps; } export namespace AppointmentTooltip { /** Describes properties passed to a component that renders the tooltip header. */ export type HeaderProps = AppointmentTooltipBase.HeaderProps; } export namespace AppointmentTooltip { /** Describes properties passed to a component that renders the tooltip content. */ export type ContentProps = AppointmentTooltipBase.ContentProps; } export namespace AppointmentTooltip { /** Describes properties passed to a component that renders a command button. */ export type CommandButtonProps = AppointmentTooltipBase.CommandButtonProps; } export interface AppointmentTooltipProps { /** Specifies the Open button's visibility. */ showOpenButton?: boolean; /** Specifies the Close button's visibility. */ showCloseButton?: boolean; /** Specifies the Delete button's visibility. */ showDeleteButton?: boolean; /** Specifies the tooltip's visibility. */ visible?: boolean; /** The appointment's displayed metadata. */ appointmentMeta?: AppointmentMeta; /** Handles the tooltip's visibility chages. */ onVisibilityChange?: (visible: boolean) => void; /** Handles the meta data changes. */ onAppointmentMetaChange?: (appointmentMeta: AppointmentMeta) => void; /** A component that renders the tooltip layout. */ layoutComponent?: React.ComponentType; /** A component that renders the header. */ headerComponent?: React.ComponentType; /** A component that renders the tooltip content. */ contentComponent?: React.ComponentType; /** A component that renders a command button. */ commandButtonComponent?: React.ComponentType; /** A component that renders an icon that indicates a recurring appointment. */ recurringIconComponent?: React.ComponentType; } /** The `AppointmentTooltip` plugin allows you to display information about an appointment in a tooltip. */ export declare const AppointmentTooltip: React.ComponentType & { /** A component that renders the tooltip layout. */ Layout: React.ComponentType; /** A component that renders the tooltip header. */ Header: React.ComponentType; /** A component that renders the tooltip content. */ Content: React.ComponentType; /** A component that renders a command button. */ CommandButton: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // Appointments // ------------------------------------------------------------------------------------------------- import { Appointments as AppointmentsBase, } from '@devexpress/dx-react-scheduler'; export namespace Appointments { /** Properties passed to a component that renders an appointment. */ export type AppointmentProps = AppointmentsBase.AppointmentProps; } export namespace Appointments { /** Properties passed to a component that renders the appointment content. */ export type AppointmentContentProps = AppointmentsBase.AppointmentContentProps; } export namespace Appointments { /** Properties passed to a component that renders an element which indicates the appointment is divided. */ export type SplitIndicatorProps = AppointmentsBase.SplitIndicatorProps; } export namespace Appointments { /** Properties passed to a component that renders a container for the appointment. */ export type ContainerProps = AppointmentsBase.ContainerProps; } export interface AppointmentsProps { /** A component that renders an appointment. */ appointmentComponent?: React.ComponentType; /** A component that renders the appointment content. */ appointmentContentComponent?: React.ComponentType; /** A component that renders an element which indicates the appointment is divided. */ splitIndicatorComponent?: React.ComponentType; /** A component that renders an icon for recurring appointments. */ recurringIconComponent?: React.ComponentType; /** A component that renders a container for the appointment. */ containerComponent?: React.ComponentType; } /** A plugin that renders appointments. */ export declare const Appointments: React.ComponentType & { /** A component that renders an appointment. */ Appointment: React.ComponentType; /** A component that renders the appointment content. */ AppointmentContent: React.ComponentType; /** A component that renders an element which indicates the appointment is divided. */ SplitIndicator: React.ComponentType; /** A component that renders a container for the appointment. */ Container: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // ConfirmationDialog // ------------------------------------------------------------------------------------------------- import { ConfirmationDialog as ConfirmationDialogBase, } from '@devexpress/dx-react-scheduler'; export namespace ConfirmationDialog { /** Properties passed to a component that renders the dialog's layout. */ export type LayoutProps = ConfirmationDialogBase.LayoutProps; } export namespace ConfirmationDialog { /** Properties passed to a component that renders the overlay window. */ export type OverlayProps = ConfirmationDialogBase.OverlayProps; } export namespace ConfirmationDialog { /** Properties passed to a component that renders the dialog's buttons. */ export type ButtonProps = ConfirmationDialogBase.ButtonProps; } export interface ConfirmationDialogProps { /** Specifies whether to open the dialog when a user attempts to delete an appointment. */ ignoreDelete?: boolean; /** Specifies whether to open the dialog when a user attempts to discard edits made to an appointment. */ ignoreCancel?: boolean; /** A component that renders the dialog's layout. */ layoutComponent?: React.ComponentType; /** A component that renders the overlay window. */ overlayComponent?: React.ComponentType; /** A component that renders the dialog's buttons. */ buttonComponent?: React.ComponentType; /** An object that contains localized messages. */ messages?: ConfirmationDialogBase.LocalizationMessages; } /** A plugin that renders a dialog that prompts a user to confirm that an appointment should be deleted or changes to an appointment should be discarded. */ export declare const ConfirmationDialog: React.ComponentType & { /** A component that renders the dialog's layout. */ Layout: React.ComponentType; /** A component that renders the overlay window. */ Overlay: React.ComponentType; /** A component that renders the dialog's buttons. */ Button: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // CurrentTimeIndicator // ------------------------------------------------------------------------------------------------- import { CurrentTimeIndicator as CurrentTimeIndicatorBase, } from '@devexpress/dx-react-scheduler'; export namespace CurrentTimeIndicator { /** Properties passed to the `indicatorComponent`. */ export type IndicatorProps = CurrentTimeIndicatorBase.IndicatorProps; } export interface CurrentTimeIndicatorProps { /** An interval in milliseconds that specifies how frequently the indicator's position is updated. */ updateInterval?: number; /** Specifies whether previous appointments should be shaded. */ shadePreviousAppointments?: boolean; /** Specifies whether previous cells should be shaded. */ shadePreviousCells?: boolean; /** A component that renders the current time indicator. */ indicatorComponent?: React.ComponentType; } /** A plugin that renders the current time indicator and the shading that covers appointments and timetable cells up to the current time. */ export declare const CurrentTimeIndicator: React.ComponentType & { /** A component that renders the current time indicator. */ Indicator: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // DateNavigator // ------------------------------------------------------------------------------------------------- import { DateNavigator as DateNavigatorBase, } from '@devexpress/dx-react-scheduler'; export namespace DateNavigator { /** Properties passed to a component that renders the date navigator's root element. */ export type RootProps = DateNavigatorBase.RootProps; } export namespace DateNavigator { /** Properties passed to a component that renders the date navigator's overlay element. */ export type OverlayProps = DateNavigatorBase.OverlayProps; } export namespace DateNavigator { /** Properties passed to a component that renders the date navigator's open button. */ export type OpenButtonProps = DateNavigatorBase.OpenButtonProps; } export namespace DateNavigator { /** Properties passed to a component that renders the date navigator's navigation button. */ export type NavigationButtonProps = DateNavigatorBase.NavigationButtonProps; } export interface DateNavigatorProps { /** A component that renders the date navigator's root element. */ rootComponent?: React.ComponentType; /** A component that renders the date navigator's overlay element. */ overlayComponent?: React.ComponentType; /** A component that renders a button that invokes the date navigator. */ openButtonComponent?: React.ComponentType; /** A component that renders the date navigator's navigation buttons. */ navigationButtonComponent?: React.ComponentType; } /** A plugin that renders the Scheduler's date navigator. */ export declare const DateNavigator: React.ComponentType & { /** A component that renders the date navigator's root element. */ Root: React.ComponentType; /** A component that renders the date navigator's overlay element. */ Overlay: React.ComponentType; /** A component that renders a button that invokes the date navigator. */ OpenButton: React.ComponentType; /** A component that renders the date navigator's navigation buttons. */ NavigationButton: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // DayView // ------------------------------------------------------------------------------------------------- import { DayView as DayViewBase, } from '@devexpress/dx-react-scheduler'; export namespace DayView { /** Describes a cell data configuration object. */ export type CellData = DayViewBase.CellData; } export namespace DayView { /** Describes properties passed to a component that renders a day view layout. */ export type LayoutProps = DayViewBase.LayoutProps; } export namespace DayView { /** Describes properties passed to a component that renders a time scale layout. */ export type TimeScaleLayoutProps = DayViewBase.TimeScaleLayoutProps; } export namespace DayView { /** Describes properties passed to a component that renders a time scale label. */ export type TimeScaleLabelProps = DayViewBase.TimeScaleLabelProps; } export namespace DayView { /** Describes properties passed to a component that renders a time scale tick. */ export type TimeScaleTickCellProps = DayViewBase.TimeScaleTickCellProps; } export namespace DayView { /** Describes properties passed to a component that renders a day scale layout. */ export type DayScaleLayoutProps = DayViewBase.DayScaleLayoutProps; } export namespace DayView { /** Describes properties passed to a component that renders a day scale cell. */ export type DayScaleCellProps = DayViewBase.DayScaleCellProps; } export namespace DayView { /** Describes properties passed to a component that renders a day scale empty cell. */ export type DayScaleEmptyCellProps = DayViewBase.DayScaleEmptyCellProps; } export namespace DayView { /** Describes properties passed to a component that renders a timetable layout. */ export type TimeTableLayoutProps = DayViewBase.TimeTableLayoutProps; } export namespace DayView { /** Describes properties passed to a component that renders a timetable cell. */ export type TimeTableCellProps = DayViewBase.TimeTableCellProps; } export namespace DayView { /** Describes properties passed to a component that renders the appointment layer. */ export type AppointmentLayerProps = DayViewBase.AppointmentLayerProps; } export namespace DayView { /** Describes properties passed to a component that renders a day view row. */ export type RowProps = DayViewBase.RowProps; } export interface DayViewProps { /** The view's unique identifier. Required if you use several `DayView` plugins. */ name?: string; /** The view's name used in UI plugins. The default value is `name`. */ displayName?: string; /** Multiplies the default view interval. */ intervalCount?: number; /** Specifies the cell's duration in minutes. */ cellDuration?: number; /** Specifies the start hour of the view time scale. Accepts floating-point numbers from 0 to 24. */ startDayHour?: number; /** Specifies the end hour of the view time scale. Accepts floating-point numbers from 0 to 24. */ endDayHour?: number; /** A component that renders a day view layout. */ layoutComponent?: React.ComponentType; /** A component that renders a time scale layout. */ timeScaleLayoutComponent?: React.ComponentType; /** A component that renders a time scale label. */ timeScaleLabelComponent?: React.ComponentType; /** A component that renders a time scale tick. */ timeScaleTickCellComponent?: React.ComponentType; /** A component that renders a day scale layout. */ dayScaleLayoutComponent?: React.ComponentType; /** A component that renders a day scale cell. */ dayScaleCellComponent?: React.ComponentType; /** A component that renders a day scale row. */ dayScaleRowComponent?: React.ComponentType; /** A component that renders a day scale empty cell. */ dayScaleEmptyCellComponent?: React.ComponentType; /** A component that renders a timetable layout. */ timeTableLayoutComponent?: React.ComponentType; /** A component that renders a timetable cell. */ timeTableCellComponent?: React.ComponentType; /** A component that renders a timetable row. */ timeTableRowComponent?: React.ComponentType; /** A component that renders the appointment layer. */ appointmentLayerComponent?: React.ComponentType; } /** A plugin that renders Scheduler data for a day. This plugin arranges appointments from top to bottom. If their time intervals overlap, their width is decreased and they are placed next to each other. */ export declare const DayView: React.ComponentType & { /** A component that renders a day view layout. */ Layout: React.ComponentType; /** A component that renders a time scale layout. */ TimeScaleLayout: React.ComponentType; /** A component that renders a time scale label. */ TimeScaleLabel: React.ComponentType; /** A component that renders a time scale tick. */ TimeScaleTickCell: React.ComponentType; /** A component that renders a day scale layout. */ DayScaleLayout: React.ComponentType; /** A component that renders a day scale cell. */ DayScaleCell: React.ComponentType; /** A component that renders a day scale row. */ DayScaleRow: React.ComponentType; /** A component that renders a day scale empty cell. */ DayScaleEmptyCell: React.ComponentType; /** A component that renders a timetable layout. */ TimeTableLayout: React.ComponentType; /** A component that renders a timetable cell. */ TimeTableCell: React.ComponentType; /** A component that renders a timetable row. */ TimeTableRow: React.ComponentType; /** A component that renders the appointment layer. */ AppointmentLayer: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // DragDropProvider // ------------------------------------------------------------------------------------------------- import { DragDropProvider as DragDropProviderBase, } from '@devexpress/dx-react-scheduler'; export namespace DragDropProvider { /** Describes properties of the component that renders the appointment being dragged. */ export type DraftAppointmentProps = DragDropProviderBase.DraftAppointmentProps; } export namespace DragDropProvider { /** Describes properties of the component that renders a copy of the appointment being dragged in its previous location. */ export type SourceAppointmentProps = DragDropProviderBase.SourceAppointmentProps; } export namespace DragDropProvider { /** Describes properties of the component that renders a handle used to resize the appointment. */ export type ResizeProps = DragDropProviderBase.ResizeProps; } export namespace DragDropProvider { /** Describes properties of the component that renders a container for the appointment being dragged. */ export type ContainerProps = DragDropProviderBase.ContainerProps; } export interface DragDropProviderProps { /** A function that specifies draggable appointments. */ allowDrag?: (appointmentData: AppointmentModel) => boolean; /** A function that specifies resizable appointments. */ allowResize?: (appointmentData: AppointmentModel) => boolean; /** Specifies the scroll speed when an appointment is resized or dragged and dropped. */ scrollSpeed?: number; /** A component that renders the appointment being dragged. */ draftAppointmentComponent?: React.ComponentType; /** A component that renders a copy of the appointment being dragged in its previous location. */ sourceAppointmentComponent?: React.ComponentType; /** A component that renders a handle used to resize the appointment. */ resizeComponent?: React.ComponentType; /** A component that renders a container for the appointment being dragged. */ containerComponent?: React.ComponentType; } /** A plugin that enables users to edit appointments via drag-and-drop. */ export declare const DragDropProvider: React.ComponentType & { /** A component that renders the appointment being dragged. */ DraftAppointment: React.ComponentType; /** A component that renders a copy of the appointment being dragged in its previous location. */ SourceAppointment: React.ComponentType; /** A component that renders the handle of the appointment being resized. */ Resize: React.ComponentType; /** A component that renders a container for the appointment being dragged. */ Container: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // EditRecurrenceMenu // ------------------------------------------------------------------------------------------------- import { EditRecurrenceMenu as EditRecurrenceMenuBase, } from '@devexpress/dx-react-scheduler'; export namespace EditRecurrenceMenu { /** Properties passed to a component that renders the edit menu's layout. */ export type LayoutProps = EditRecurrenceMenuBase.LayoutProps; } export namespace EditRecurrenceMenu { /** Properties passed to a component that renders the overlay window. */ export type OverlayProps = EditRecurrenceMenuBase.OverlayProps; } export namespace EditRecurrenceMenu { /** Properties passed to a component that renders the OK and Cancel buttons. */ export type ButtonProps = EditRecurrenceMenuBase.ButtonProps; } export interface EditRecurrenceMenuProps { /** A component that renders the menu's layout. */ layoutComponent?: React.ComponentType; /** A component that renders the overlay window. */ overlayComponent?: React.ComponentType; /** A component that renders the OK and Cancel buttons. */ buttonComponent?: React.ComponentType; /** An object that contains localized messages. */ messages?: EditRecurrenceMenuBase.LocalizationMessages; } /** A plugin that renders the menu that allows users to edit recurrent appointments. Should not be used with the IntegratedEditing plugin. */ export declare const EditRecurrenceMenu: React.ComponentType & { /** A component that renders the edit menu's layout. */ Layout: React.ComponentType; /** A component that renders the overlay window. */ Overlay: React.ComponentType; /** A component that renders the OK and Cancel buttons. */ Button: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // GroupingPanel // ------------------------------------------------------------------------------------------------- import { GroupingPanel as GroupingPanelBase, } from '@devexpress/dx-react-scheduler'; export namespace GroupingPanel { /** Describes properties passed to a component that renders the grouping panel horizontally. */ export type HorizontalLayoutProps = GroupingPanelBase.HorizontalLayoutProps; } export namespace GroupingPanel { /** Describes properties passed to a component that renders the grouping panel vertically. */ export type VerticalLayoutProps = GroupingPanelBase.VerticalLayoutProps; } export namespace GroupingPanel { /** Describes properties passed to a component that renders a row on the grouping panel. */ export type RowProps = GroupingPanelBase.RowProps; } export namespace GroupingPanel { /** Describes properties passed to a component that renders a cell in a row on the grouping panel. */ export type CellProps = GroupingPanelBase.CellProps; } export interface GroupingPanelProps { /** A component that renders the grouping panel horizontally. */ horizontalLayoutComponent?: React.ComponentType; /** A component that renders the grouping panel vertically. */ verticalLayoutComponent?: React.ComponentType; /** A component that renders a row on the grouping panel. */ rowComponent?: React.ComponentType; /** A component that renders a cell in a row on the grouping panel. */ cellComponent?: React.ComponentType; } /** A plugin that renders the grouping panel used to display group names. */ export declare const GroupingPanel: React.ComponentType & { /** A component that renders the grouping panel horizontally. */ HorizontalLayout: React.ComponentType; /** A component that renders the grouping panel vertically. */ VerticalLayout: React.ComponentType; /** A component that renders a row on the grouping panel. */ Row: React.ComponentType; /** A component that renders a cell in a row on the grouping panel. */ Cell: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // MonthView // ------------------------------------------------------------------------------------------------- import { MonthView as MonthViewBase, } from '@devexpress/dx-react-scheduler'; export namespace MonthView { /** Describes a cell data configuration object. */ export type CellData = MonthViewBase.CellData; } export namespace MonthView { /** Describes properties passed to a component that renders a month view layout. */ export type LayoutProps = MonthViewBase.LayoutProps; } export namespace MonthView { /** Describes properties passed to a component that renders a day scale layout. */ export type DayScaleLayoutProps = MonthViewBase.DayScaleLayoutProps; } export namespace MonthView { /** Describes properties passed to a component that renders a day scale cell. */ export type DayScaleCellProps = MonthViewBase.DayScaleCellProps; } export namespace MonthView { /** Describes properties passed to a component that renders an empty cell on the day scale. */ export type DayScaleEmptyCellProps = MonthViewBase.DayScaleEmptyCellProps; } export namespace MonthView { /** Describes properties passed to a component that renders a timetable layout. */ export type TimeTableLayoutProps = MonthViewBase.TimeTableLayoutProps; } export namespace MonthView { /** Describes properties passed to a component that renders a timetable cell. */ export type TimeTableCellProps = MonthViewBase.TimeTableCellProps; } export namespace MonthView { /** Describes properties passed to a component that renders the appointment layer. */ export type AppointmentLayerProps = MonthViewBase.AppointmentLayerProps; } export namespace MonthView { /** Describes properties passed to a component that renders a row. */ export type RowProps = MonthViewBase.RowProps; } export interface MonthViewProps { /** The view's unique identifier. Required if you use several `MonthView` plugins. */ name?: string; /** The view's name used in UI plugins. The default value is equal to `name`. */ displayName?: string; /** Multiplies the default view interval. */ intervalCount?: number; /** A component that renders a month view layout. */ layoutComponent?: React.ComponentType; /** A component that renders a day scale layout. */ dayScaleLayoutComponent?: React.ComponentType; /** A component that renders a day scale cell. */ dayScaleCellComponent?: React.ComponentType; /** A component that renders a day scale row. */ dayScaleRowComponent?: React.ComponentType; /** A component that renders an empty cell on the day scale. */ dayScaleEmptyCellComponent?: React.ComponentType; /** A component that renders a timetable layout. */ timeTableLayoutComponent?: React.ComponentType; /** A component that renders a timetable cell. */ timeTableCellComponent?: React.ComponentType; /** A component that renders a timetable row. */ timeTableRowComponent?: React.ComponentType; /** A component that renders the appointment layer. */ appointmentLayerComponent?: React.ComponentType; } /** A plugin that renders Scheduler data for a month. This plugin arranges appointments from left to right. An appointment's size depends on its duration in days. However, it occupies the entire day cell if an appointment lasts only for several hours or minutes. The time scale and all-day panel are not available in this view. */ export declare const MonthView: React.ComponentType & { /** A component that renders a month view layout. */ Layout: React.ComponentType; /** A component that renders a day scale layout. */ DayScaleLayout: React.ComponentType; /** A component that renders a day scale cell. */ DayScaleCell: React.ComponentType; /** A component that renders a day scale row. */ DayScaleRow: React.ComponentType; /** A component that renders an empty cell on the day scale. */ DayScaleEmptyCell: React.ComponentType; /** A component that renders a timetable layout. */ TimeTableLayout: React.ComponentType; /** A component that renders a timetable cell. */ TimeTableCell: React.ComponentType; /** A component that renders a timetable row. */ TimeTableRow: React.ComponentType; /** A component that renders the appointment layer. */ AppointmentLayer: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // Resources // ------------------------------------------------------------------------------------------------- import { Resources as ResourcesBase, } from '@devexpress/dx-react-scheduler'; export interface ResourcesProps { /** Resource data objects. */ data?: Array; /** Specifies which of several resources provides colors for appointments. */ mainResourceName?: string; /** A palette used if a resource instance color is not defined. */ palette?: Palette; } /** A plugin that configures resources. */ export declare const Resources: React.ComponentType; // ------------------------------------------------------------------------------------------------- // Scheduler // ------------------------------------------------------------------------------------------------- import { Scheduler as SchedulerBase, } from '@devexpress/dx-react-scheduler'; export namespace Scheduler { /** Describes properties passed to a component that renders the root layout. */ export type RootProps = SchedulerBase.RootProps; } export interface SchedulerProps { /** An array of appointment data objects. */ data?: Array; /** The scheduler's height. If the value is `auto`, the height equals that of the container component. */ height?: number | `auto`; /** The locale according to which dates should be formatted. */ locale?: string | Array; /** A number between 0 and 6 that specifies the first day of the week. */ firstDayOfWeek?: number; /** A component that renders the root layout. */ rootComponent?: React.ComponentType; /** A React node used to render the scheduler content. */ children?: React.ReactNode; } /** The Scheduler is a root container component designed to process and display the specified data. The Scheduler's functionality is implemented in several plugins specified as child components. */ export declare const Scheduler: React.ComponentType & { /** A component that renders the root layout. */ Root: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // TodayButton // ------------------------------------------------------------------------------------------------- import { TodayButton as TodayButtonBase, } from '@devexpress/dx-react-scheduler'; export namespace TodayButton { /** Properties passed to the component that renders the today button. */ export type ButtonProps = TodayButtonBase.ButtonProps; } export interface TodayButtonProps { /** A component that renders the today button. */ buttonComponent?: React.ComponentType; /** An object that specifies localization messages. */ messages?: TodayButtonBase.LocalizationMessages; } /** A plugin that renders the Scheduler's button that is used to navigate to the today's date */ export declare const TodayButton: React.ComponentType & { /** A component that renders the today button. */ Button: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // Toolbar // ------------------------------------------------------------------------------------------------- import { Toolbar as ToolbarBase, } from '@devexpress/dx-react-scheduler'; export namespace Toolbar { /** Describes properties passed to a component that renders the toolbar's root element. */ export type RootProps = ToolbarBase.RootProps; } export namespace Toolbar { /** Describes properties passed to a component that renders the the toolbar's empty area. */ export type FlexibleSpaceProps = ToolbarBase.FlexibleSpaceProps; } export interface ToolbarProps { /** A component that renders the toolbar's root element. */ rootComponent?: React.ComponentType; /** A component that renders the toolbar's empty area. */ flexibleSpaceComponent?: React.ComponentType; } /** A plugin that renders the Scheduler's toolbar. */ export declare const Toolbar: React.ComponentType & { /** A component that renders the toolbar's root element. */ Root: React.ComponentType; /** A component that renders the toolbar's empty area. */ FlexibleSpace: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // ViewSwitcher // ------------------------------------------------------------------------------------------------- import { ViewSwitcher as ViewSwitcherBase, } from '@devexpress/dx-react-scheduler'; export namespace ViewSwitcher { /** Properties passed to a component that renders the view switcher. */ export type SwitcherProps = ViewSwitcherBase.SwitcherProps; } export interface ViewSwitcherProps { /** A component that renders the view switcher. */ switcherComponent?: React.ComponentType; } /** A plugin that renders the Scheduler's view switcher. */ export declare const ViewSwitcher: React.ComponentType & { /** A component that renders the view switcher. */ Switcher: React.ComponentType; }; // ------------------------------------------------------------------------------------------------- // WeekView // ------------------------------------------------------------------------------------------------- import { WeekView as WeekViewBase, } from '@devexpress/dx-react-scheduler'; export namespace WeekView { /** Describes a cell data configuration object. */ export type CellData = WeekViewBase.CellData; } export namespace WeekView { /** Describes properties passed to a component that renders a week view layout. */ export type LayoutProps = WeekViewBase.LayoutProps; } export namespace WeekView { /** Describes properties passed to a component that renders a time scale layout. */ export type TimeScaleLayoutProps = WeekViewBase.TimeScaleLayoutProps; } export namespace WeekView { /** Describes properties passed to a component that renders a time scale label. */ export type TimeScaleLabelProps = WeekViewBase.TimeScaleLabelProps; } export namespace WeekView { /** Describes properties passed to a component that renders a time scale tick. */ export type TimeScaleTickCellProps = WeekViewBase.TimeScaleTickCellProps; } export namespace WeekView { /** Describes properties passed to a component that renders a day scale layout. */ export type DayScaleLayoutProps = WeekViewBase.DayScaleLayoutProps; } export namespace WeekView { /** Describes properties passed to a component that renders a day scale cell. */ export type DayScaleCellProps = WeekViewBase.DayScaleCellProps; } export namespace WeekView { /** Describes properties passed to a component that renders a day scale empty cell. */ export type DayScaleEmptyCellProps = WeekViewBase.DayScaleEmptyCellProps; } export namespace WeekView { /** Describes properties passed to a component that renders a timetable layout. */ export type TimeTableLayoutProps = WeekViewBase.TimeTableLayoutProps; } export namespace WeekView { /** Describes properties passed to a component that renders a timetable cell. */ export type TimeTableCellProps = WeekViewBase.TimeTableCellProps; } export namespace WeekView { /** Describes properties passed to a component that renders the appointment layer. */ export type AppointmentLayerProps = WeekViewBase.AppointmentLayerProps; } export namespace WeekView { /** Describes properties passed to a component that renders a week view row. */ export type RowProps = WeekViewBase.RowProps; } export interface WeekViewProps { /** The view's unique identifier. Required if you use several `WeekView` plugins. */ name?: string; /** The view's name used in UI plugins. The default value is equal to `name`. */ displayName?: string; /** Specifies the days of week that should not be displayed in the view. Accepts an array of zero-based day indexes . */ excludedDays?: Array; /** Multiplies the default view interval. */ intervalCount?: number; /** Specifies the cell's duration in minutes. */ cellDuration?: number; /** Specifies the start hour of the view time scale. Accepts floating-point numbers from 0 to 24. */ startDayHour?: number; /** Specifies the end hour of the view time scale. Accepts floating-point numbers from 0 to 24. */ endDayHour?: number; /** A component that renders a week view layout. */ layoutComponent?: React.ComponentType; /** A component that renders a time scale layout. */ timeScaleLayoutComponent?: React.ComponentType; /** A component that renders a time scale label. */ timeScaleLabelComponent?: React.ComponentType; /** A component that renders a time scale tick. */ timeScaleTickCellComponent?: React.ComponentType; /** A component that renders a day scale layout. */ dayScaleLayoutComponent?: React.ComponentType; /** A component that renders a day scale cell. */ dayScaleCellComponent?: React.ComponentType; /** A component that renders a day scale row. */ dayScaleRowComponent?: React.ComponentType; /** A component that renders a day scale empty cell. */ dayScaleEmptyCellComponent?: React.ComponentType; /** A component that renders a timetable layout. */ timeTableLayoutComponent?: React.ComponentType; /** A component that renders a timetable cell. */ timeTableCellComponent?: React.ComponentType; /** A component that renders a timetable row. */ timeTableRowComponent?: React.ComponentType; /** A component that renders an appointment layer. */ appointmentLayerComponent?: React.ComponentType; } /** A plugin that renders the Scheduler's week view. This plugin arranges appointments from top to bottom. If their time intervals overlap, their width is decreased and they are placed next to each other. */ export declare const WeekView: React.ComponentType & { /** A component that renders a week view layout. */ Layout: React.ComponentType; /** A component that renders a time scale layout. */ TimeScaleLayout: React.ComponentType; /** A component that renders a time scale label. */ TimeScaleLabel: React.ComponentType; /** A component that renders a time scale tick. */ TimeScaleTickCell: React.ComponentType; /** A component that renders a day scale layout. */ DayScaleLayout: React.ComponentType; /** A component that renders a day scale cell. */ DayScaleCell: React.ComponentType; /** A component that renders a day scale row. */ DayScaleRow: React.ComponentType; /** A component that renders a day scale empty cell. */ DayScaleEmptyCell: React.ComponentType; /** A component that renders a timetable layout. */ TimeTableLayout: React.ComponentType; /** A component that renders a timetable cell. */ TimeTableCell: React.ComponentType; /** A component that renders a timetable row. */ TimeTableRow: React.ComponentType; /** A component that renders the appointment layer. */ AppointmentLayer: React.ComponentType; };