devextreme-angular
Version:
Angular UI and visualization components based on DevExtreme widgets
1,210 lines (975 loc) • 51.2 kB
TypeScript
/*!
* devextreme-angular
* Version: 25.2.3
* Build date: Fri Dec 12 2025
*
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file in the root of the project for details.
*
* https://github.com/DevExpress/devextreme-angular
*/
import { TransferState, ElementRef, NgZone, OnDestroy, EventEmitter, OnChanges, DoCheck, SimpleChanges, QueryList } from '@angular/core';
import dxScheduler from 'devextreme/ui/scheduler';
import dxSortable from 'devextreme/ui/sortable';
import dxDraggable from 'devextreme/ui/draggable';
import DataSource from 'devextreme/data/data_source';
import { AllDayPanelMode, ViewType, dxSchedulerAppointment, AppointmentFormProperties, CellAppointmentsLimit, AppointmentAddedEvent, AppointmentAddingEvent, AppointmentClickEvent, AppointmentContextMenuEvent, AppointmentDblClickEvent, AppointmentDeletedEvent, AppointmentDeletingEvent, AppointmentFormOpeningEvent, AppointmentRenderedEvent, AppointmentTooltipShowingEvent, AppointmentUpdatedEvent, AppointmentUpdatingEvent, CellClickEvent, CellContextMenuEvent, ContentReadyEvent, DisposingEvent, InitializedEvent, OptionChangedEvent, RecurrenceEditMode, dxSchedulerScrolling, dxSchedulerToolbar } from 'devextreme/ui/scheduler';
import { event } from 'devextreme/events/events.types';
import { DataSourceOptions } from 'devextreme/data/data_source';
import { Store } from 'devextreme/data/store';
import { FirstDayOfWeek, Orientation } from 'devextreme/common';
import DxScheduler from 'devextreme/ui/scheduler';
import { DxComponent, DxTemplateHost, NestedOptionHost, IterableDifferHelper, WatcherHelper, CollectionNestedOption } from 'devextreme-angular/core';
import type * as DxSchedulerTypes from "devextreme/ui/scheduler_types";
import * as i0 from "@angular/core";
import * as i1 from "devextreme-angular/ui/nested";
import * as i2 from "devextreme-angular/ui/scheduler/nested";
import * as i3 from "devextreme-angular/core";
/**
* The Scheduler is a UI component that represents scheduled data and allows a user to manage and edit it.
*/
export declare class DxSchedulerComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck {
private _watcherHelper;
private _idh;
set _validationRulesContentChildren(value: QueryList<CollectionNestedOption>);
set _itemsContentChildren(value: QueryList<CollectionNestedOption>);
set _resourcesContentChildren(value: QueryList<CollectionNestedOption>);
set _tabsContentChildren(value: QueryList<CollectionNestedOption>);
set _viewsContentChildren(value: QueryList<CollectionNestedOption>);
instance: DxScheduler;
/**
* Specifies the shortcut key that sets focus on the UI component.
*/
get accessKey(): string | undefined;
set accessKey(value: string | undefined);
/**
* Specifies whether the UI component adapts to small screens.
*/
get adaptivityEnabled(): boolean;
set adaptivityEnabled(value: boolean);
/**
* Specifies the name of the data source item field whose value defines whether or not the corresponding appointment is an all-day appointment.
*/
get allDayExpr(): string;
set allDayExpr(value: string);
/**
* Specifies the display mode for the All day panel.
*/
get allDayPanelMode(): AllDayPanelMode;
set allDayPanelMode(value: AllDayPanelMode);
/**
* Specifies a custom template for cell overflow indicators.
*/
get appointmentCollectorTemplate(): any;
set appointmentCollectorTemplate(value: any);
/**
* Configures appointment reordering using drag and drop gestures.
*/
get appointmentDragging(): {
autoScroll?: boolean;
data?: any | undefined;
group?: string | undefined;
onAdd?: ((e: {
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
}) => void);
onDragEnd?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
toItemData: any;
}) => void);
onDragMove?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
}) => void);
onDragStart?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromData: any;
itemData: any;
itemElement: any;
}) => void);
onRemove?: ((e: {
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
}) => void);
scrollSensitivity?: number;
scrollSpeed?: number;
};
set appointmentDragging(value: {
autoScroll?: boolean;
data?: any | undefined;
group?: string | undefined;
onAdd?: ((e: {
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
}) => void);
onDragEnd?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
toItemData: any;
}) => void);
onDragMove?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
}) => void);
onDragStart?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromData: any;
itemData: any;
itemElement: any;
}) => void);
onRemove?: ((e: {
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
}) => void);
scrollSensitivity?: number;
scrollSpeed?: number;
});
/**
* Specifies a custom template for appointments.
*/
get appointmentTemplate(): any;
set appointmentTemplate(value: any);
/**
* Specifies a custom template for tooltips displayed when users click an appointment or cell overflow indicator.
*/
get appointmentTooltipTemplate(): any;
set appointmentTooltipTemplate(value: any);
/**
* Specifies cell duration in minutes. This property's value should divide the interval between startDayHour and endDayHour into even parts.
*/
get cellDuration(): number;
set cellDuration(value: number);
/**
* Specifies whether or not an end user can scroll the view in both directions at the same time.
*/
get crossScrollingEnabled(): boolean;
set crossScrollingEnabled(value: boolean);
/**
* Specifies the current date.
*/
get currentDate(): Date | number | string;
set currentDate(value: Date | number | string);
/**
* Specifies the displayed view. Accepts name or type of a view available in the views array.
*/
get currentView(): string | ViewType;
set currentView(value: string | ViewType);
/**
* Customizes the date navigator's text.
*/
get customizeDateNavigatorText(): ((info: {
endDate: Date;
startDate: Date;
text: string;
}) => string) | undefined;
set customizeDateNavigatorText(value: ((info: {
endDate: Date;
startDate: Date;
text: string;
}) => string) | undefined);
/**
* Specifies a custom template for table cells.
*/
get dataCellTemplate(): any;
set dataCellTemplate(value: any);
/**
* Binds the UI component to data.
*/
get dataSource(): Array<dxSchedulerAppointment> | DataSource | DataSourceOptions | null | Store | string;
set dataSource(value: Array<dxSchedulerAppointment> | DataSource | DataSourceOptions | null | Store | string);
/**
* Specifies a custom template for day scale items.
*/
get dateCellTemplate(): any;
set dateCellTemplate(value: any);
/**
* Specifies the format in which date-time values should be sent to the server.
*/
get dateSerializationFormat(): string | undefined;
set dateSerializationFormat(value: string | undefined);
/**
* Specifies the name of the data source item field whose value holds the description of the corresponding appointment.
*/
get descriptionExpr(): string;
set descriptionExpr(value: string);
/**
* Specifies whether the UI component responds to user interaction.
*/
get disabled(): boolean;
set disabled(value: boolean);
/**
* Configures appointment editing options, such as available operations.
*/
get editing(): boolean | {
allowAdding?: boolean;
allowDeleting?: boolean;
allowDragging?: boolean;
allowResizing?: boolean;
allowTimeZoneEditing?: boolean;
allowUpdating?: boolean;
form?: AppointmentFormProperties;
popup?: Record<string, any>;
};
set editing(value: boolean | {
allowAdding?: boolean;
allowDeleting?: boolean;
allowDragging?: boolean;
allowResizing?: boolean;
allowTimeZoneEditing?: boolean;
allowUpdating?: boolean;
form?: AppointmentFormProperties;
popup?: Record<string, any>;
});
/**
* Specifies the global attributes to be attached to the UI component's container element.
*/
get elementAttr(): Record<string, any>;
set elementAttr(value: Record<string, any>);
/**
* Specifies the name of the data source item field that defines the ending of an appointment.
*/
get endDateExpr(): string;
set endDateExpr(value: string);
/**
* Specifies the name of the data source item field that defines the timezone of the appointment end date.
*/
get endDateTimeZoneExpr(): string;
set endDateTimeZoneExpr(value: string);
/**
* Specifies the last hour on the time scale. Accepts integer values from 0 to 24.
*/
get endDayHour(): number;
set endDayHour(value: number);
/**
* Specifies the first day of a week. Does not apply to the agenda view.
*/
get firstDayOfWeek(): FirstDayOfWeek | undefined;
set firstDayOfWeek(value: FirstDayOfWeek | undefined);
/**
* Specifies whether the UI component can be focused using keyboard navigation.
*/
get focusStateEnabled(): boolean;
set focusStateEnabled(value: boolean);
/**
* If true, appointments are grouped by date first and then by resource; opposite if false. Applies only if appointments are grouped and groupOrientation is 'horizontal'.
*/
get groupByDate(): boolean;
set groupByDate(value: boolean);
/**
* Specifies the resource kinds by which the scheduler's appointments are grouped in a timetable.
*/
get groups(): Array<string>;
set groups(value: Array<string>);
/**
* Specifies the UI component's height.
*/
get height(): number | string | undefined;
set height(value: number | string | undefined);
/**
* Specifies text for a hint that appears when a user pauses on the UI component.
*/
get hint(): string | undefined;
set hint(value: string | undefined);
/**
* Specifies the time interval between when the date-time indicator changes its position, in milliseconds.
*/
get indicatorUpdateInterval(): number;
set indicatorUpdateInterval(value: number);
/**
* The latest date the UI component allows you to select.
*/
get max(): Date | number | string | undefined;
set max(value: Date | number | string | undefined);
/**
* Specifies the limit of full-sized appointments displayed per cell. Applies to all views except 'agenda'.
*/
get maxAppointmentsPerCell(): CellAppointmentsLimit | number;
set maxAppointmentsPerCell(value: CellAppointmentsLimit | number);
/**
* The earliest date the UI component allows you to select.
*/
get min(): Date | number | string | undefined;
set min(value: Date | number | string | undefined);
/**
* Specifies the text or HTML markup displayed by the UI component if the item collection is empty. Available for the Agenda view only.
*/
get noDataText(): string;
set noDataText(value: string);
/**
* Specifies the minute offset applied to configured day durations in all views.
*/
get offset(): number;
set offset(value: number);
/**
* Specifies the edit mode for recurring appointments.
*/
get recurrenceEditMode(): RecurrenceEditMode;
set recurrenceEditMode(value: RecurrenceEditMode);
/**
* Specifies the name of the data source item field that defines exceptions for the current recurring appointment.
*/
get recurrenceExceptionExpr(): string;
set recurrenceExceptionExpr(value: string);
/**
* Specifies the name of the data source item field that defines a recurrence rule for generating recurring appointments.
*/
get recurrenceRuleExpr(): string;
set recurrenceRuleExpr(value: string);
/**
* Specifies whether filtering is performed on the server or client side.
*/
get remoteFiltering(): boolean;
set remoteFiltering(value: boolean);
/**
* Specifies a custom template for resource headers.
*/
get resourceCellTemplate(): any;
set resourceCellTemplate(value: any);
/**
* Specifies an array of resources available in the scheduler.
*/
get resources(): {
allowMultiple?: boolean;
colorExpr?: string;
dataSource?: Array<any> | DataSource | DataSourceOptions | null | Store | string;
displayExpr?: ((resource: any) => string) | string;
fieldExpr?: string;
icon?: string;
label?: string;
useColorAsDefault?: boolean;
valueExpr?: Function | string;
}[];
set resources(value: {
allowMultiple?: boolean;
colorExpr?: string;
dataSource?: Array<any> | DataSource | DataSourceOptions | null | Store | string;
displayExpr?: ((resource: any) => string) | string;
fieldExpr?: string;
icon?: string;
label?: string;
useColorAsDefault?: boolean;
valueExpr?: Function | string;
}[]);
/**
* Switches the UI component to a right-to-left representation.
*/
get rtlEnabled(): boolean;
set rtlEnabled(value: boolean);
/**
* Configures scrolling.
*/
get scrolling(): dxSchedulerScrolling;
set scrolling(value: dxSchedulerScrolling);
/**
* The data of the currently selected cells.
*/
get selectedCellData(): Array<any>;
set selectedCellData(value: Array<any>);
/**
* Specifies whether to apply shading to cover the timetable up to the current time.
*/
get shadeUntilCurrentTime(): boolean;
set shadeUntilCurrentTime(value: boolean);
/**
* Specifies the 'All-day' panel's visibility. Setting this property to false hides the panel along with the all-day appointments.
*/
get showAllDayPanel(): boolean;
set showAllDayPanel(value: boolean);
/**
* Specifies the current date-time indicator's visibility.
*/
get showCurrentTimeIndicator(): boolean;
set showCurrentTimeIndicator(value: boolean);
/**
* Specifies the name of the data source item field that defines the start of an appointment.
*/
get startDateExpr(): string;
set startDateExpr(value: string);
/**
* Specifies the name of the data source item field that defines the timezone of the appointment start date.
*/
get startDateTimeZoneExpr(): string;
set startDateTimeZoneExpr(value: string);
/**
* Specifies the first hour on the time scale. Accepts integer values from 0 to 24.
*/
get startDayHour(): number;
set startDayHour(value: number);
/**
* Specifies the number of the element when the Tab key is used for navigating.
*/
get tabIndex(): number;
set tabIndex(value: number);
/**
* Specifies the name of the data source item field that holds the subject of an appointment.
*/
get textExpr(): string;
set textExpr(value: string);
/**
* Specifies a custom template for time scale items.
*/
get timeCellTemplate(): any;
set timeCellTemplate(value: any);
/**
* Specifies the time zone for the Scheduler's grid. Accepts values from the IANA time zone database.
*/
get timeZone(): string;
set timeZone(value: string);
/**
* Configures the toolbar.
*/
get toolbar(): dxSchedulerToolbar | undefined;
set toolbar(value: dxSchedulerToolbar | undefined);
/**
* Specifies whether a user can switch views using tabs or a drop-down menu.
*/
get useDropDownViewSwitcher(): boolean;
set useDropDownViewSwitcher(value: boolean);
/**
* Specifies and configures the views to be available in the view switcher.
*/
get views(): Array<Record<string, any> | string> | {
agendaDuration?: number;
allDayPanelMode?: AllDayPanelMode;
appointmentCollectorTemplate?: any;
appointmentTemplate?: any;
appointmentTooltipTemplate?: any;
cellDuration?: number;
dataCellTemplate?: any;
dateCellTemplate?: any;
endDayHour?: number;
firstDayOfWeek?: FirstDayOfWeek | undefined;
groupByDate?: boolean;
groupOrientation?: Orientation;
groups?: Array<string>;
intervalCount?: number;
maxAppointmentsPerCell?: CellAppointmentsLimit | number;
name?: string | undefined;
offset?: number;
resourceCellTemplate?: any;
scrolling?: dxSchedulerScrolling;
startDate?: Date | number | string | undefined;
startDayHour?: number;
timeCellTemplate?: any;
type?: undefined | ViewType;
}[];
set views(value: Array<Record<string, any> | string> | {
agendaDuration?: number;
allDayPanelMode?: AllDayPanelMode;
appointmentCollectorTemplate?: any;
appointmentTemplate?: any;
appointmentTooltipTemplate?: any;
cellDuration?: number;
dataCellTemplate?: any;
dateCellTemplate?: any;
endDayHour?: number;
firstDayOfWeek?: FirstDayOfWeek | undefined;
groupByDate?: boolean;
groupOrientation?: Orientation;
groups?: Array<string>;
intervalCount?: number;
maxAppointmentsPerCell?: CellAppointmentsLimit | number;
name?: string | undefined;
offset?: number;
resourceCellTemplate?: any;
scrolling?: dxSchedulerScrolling;
startDate?: Date | number | string | undefined;
startDayHour?: number;
timeCellTemplate?: any;
type?: undefined | ViewType;
}[]);
/**
* Specifies whether the UI component is visible.
*/
get visible(): boolean;
set visible(value: boolean);
/**
* Specifies the UI component's width.
*/
get width(): number | string | undefined;
set width(value: number | string | undefined);
/**
* A function that is executed after an appointment is added to the data source.
*/
onAppointmentAdded: EventEmitter<AppointmentAddedEvent>;
/**
* A function that is executed before an appointment is added to the data source.
*/
onAppointmentAdding: EventEmitter<AppointmentAddingEvent>;
/**
* A function that is executed when an appointment is clicked or tapped.
*/
onAppointmentClick: EventEmitter<AppointmentClickEvent>;
/**
* A function that is executed when a user attempts to open the browser's context menu for an appointment. Allows you to replace this context menu with a custom context menu.
*/
onAppointmentContextMenu: EventEmitter<AppointmentContextMenuEvent>;
/**
* A function that is executed when an appointment is double-clicked or double-tapped.
*/
onAppointmentDblClick: EventEmitter<AppointmentDblClickEvent>;
/**
* A function that is executed after an appointment is deleted from the data source.
*/
onAppointmentDeleted: EventEmitter<AppointmentDeletedEvent>;
/**
* A function that is executed before an appointment is deleted from the data source.
*/
onAppointmentDeleting: EventEmitter<AppointmentDeletingEvent>;
/**
* A function that is executed before Scheduler displays the appointment edit form.
*/
onAppointmentFormOpening: EventEmitter<AppointmentFormOpeningEvent>;
/**
* A function that is executed when an appointment is rendered.
*/
onAppointmentRendered: EventEmitter<AppointmentRenderedEvent>;
/**
* Occurs before showing an appointment's tooltip.
*/
onAppointmentTooltipShowing: EventEmitter<AppointmentTooltipShowingEvent>;
/**
* A function that is executed after an appointment is updated in the data source.
*/
onAppointmentUpdated: EventEmitter<AppointmentUpdatedEvent>;
/**
* A function that is executed before an appointment is updated in the data source.
*/
onAppointmentUpdating: EventEmitter<AppointmentUpdatingEvent>;
/**
* A function that is executed when a view cell is clicked.
*/
onCellClick: EventEmitter<CellClickEvent>;
/**
* A function that is executed when a user attempts to open the browser's context menu for a cell. Allows you to replace this context menu with a custom context menu.
*/
onCellContextMenu: EventEmitter<CellContextMenuEvent>;
/**
* A function that is executed when the UI component is rendered and each time the component is repainted.
*/
onContentReady: EventEmitter<ContentReadyEvent>;
/**
* A function that is executed before the UI component is disposed of.
*/
onDisposing: EventEmitter<DisposingEvent>;
/**
* A function used in JavaScript frameworks to save the UI component instance.
*/
onInitialized: EventEmitter<InitializedEvent>;
/**
* A function that is executed after a UI component property is changed.
*/
onOptionChanged: EventEmitter<OptionChangedEvent>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
accessKeyChange: EventEmitter<string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
adaptivityEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
allDayExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
allDayPanelModeChange: EventEmitter<AllDayPanelMode>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
appointmentCollectorTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
appointmentDraggingChange: EventEmitter<{
autoScroll?: boolean;
data?: any | undefined;
group?: string | undefined;
onAdd?: ((e: {
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
}) => void);
onDragEnd?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
toItemData: any;
}) => void);
onDragMove?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
toData: any;
}) => void);
onDragStart?: ((e: {
cancel: boolean;
component: dxScheduler;
event: event;
fromData: any;
itemData: any;
itemElement: any;
}) => void);
onRemove?: ((e: {
component: dxScheduler;
event: event;
fromComponent: dxSortable | dxDraggable;
fromData: any;
itemData: any;
itemElement: any;
toComponent: dxSortable | dxDraggable;
}) => void);
scrollSensitivity?: number;
scrollSpeed?: number;
}>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
appointmentTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
appointmentTooltipTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
cellDurationChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
crossScrollingEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
currentDateChange: EventEmitter<Date | number | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
currentViewChange: EventEmitter<string | ViewType>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
customizeDateNavigatorTextChange: EventEmitter<((info: {
endDate: Date;
startDate: Date;
text: string;
}) => string) | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dataCellTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dataSourceChange: EventEmitter<Array<dxSchedulerAppointment> | DataSource | DataSourceOptions | null | Store | string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dateCellTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
dateSerializationFormatChange: EventEmitter<string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
descriptionExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
disabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
editingChange: EventEmitter<boolean | {
allowAdding?: boolean;
allowDeleting?: boolean;
allowDragging?: boolean;
allowResizing?: boolean;
allowTimeZoneEditing?: boolean;
allowUpdating?: boolean;
form?: AppointmentFormProperties;
popup?: Record<string, any>;
}>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
elementAttrChange: EventEmitter<Record<string, any>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
endDateExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
endDateTimeZoneExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
endDayHourChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
firstDayOfWeekChange: EventEmitter<FirstDayOfWeek | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
focusStateEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
groupByDateChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
groupsChange: EventEmitter<Array<string>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
heightChange: EventEmitter<number | string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
hintChange: EventEmitter<string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
indicatorUpdateIntervalChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
maxChange: EventEmitter<Date | number | string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
maxAppointmentsPerCellChange: EventEmitter<CellAppointmentsLimit | number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
minChange: EventEmitter<Date | number | string | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
noDataTextChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
offsetChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
recurrenceEditModeChange: EventEmitter<RecurrenceEditMode>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
recurrenceExceptionExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
recurrenceRuleExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
remoteFilteringChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
resourceCellTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
resourcesChange: EventEmitter<{
allowMultiple?: boolean;
colorExpr?: string;
dataSource?: Array<any> | DataSource | DataSourceOptions | null | Store | string;
displayExpr?: ((resource: any) => string) | string;
fieldExpr?: string;
icon?: string;
label?: string;
useColorAsDefault?: boolean;
valueExpr?: Function | string;
}[]>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
rtlEnabledChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
scrollingChange: EventEmitter<dxSchedulerScrolling>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
selectedCellDataChange: EventEmitter<Array<any>>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
shadeUntilCurrentTimeChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showAllDayPanelChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
showCurrentTimeIndicatorChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
startDateExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
startDateTimeZoneExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
startDayHourChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
tabIndexChange: EventEmitter<number>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
textExprChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
timeCellTemplateChange: EventEmitter<any>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
timeZoneChange: EventEmitter<string>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
toolbarChange: EventEmitter<dxSchedulerToolbar | undefined>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
useDropDownViewSwitcherChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
viewsChange: EventEmitter<Array<Record<string, any> | string> | {
agendaDuration?: number;
allDayPanelMode?: AllDayPanelMode;
appointmentCollectorTemplate?: any;
appointmentTemplate?: any;
appointmentTooltipTemplate?: any;
cellDuration?: number;
dataCellTemplate?: any;
dateCellTemplate?: any;
endDayHour?: number;
firstDayOfWeek?: FirstDayOfWeek | undefined;
groupByDate?: boolean;
groupOrientation?: Orientation;
groups?: Array<string>;
intervalCount?: number;
maxAppointmentsPerCell?: CellAppointmentsLimit | number;
name?: string | undefined;
offset?: number;
resourceCellTemplate?: any;
scrolling?: dxSchedulerScrolling;
startDate?: Date | number | string | undefined;
startDayHour?: number;
timeCellTemplate?: any;
type?: undefined | ViewType;
}[]>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
visibleChange: EventEmitter<boolean>;
/**
* This member supports the internal infrastructure and is not intended to be used directly from your code.
*/
widthChange: EventEmitter<number | string | undefined>;
constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, _watcherHelper: WatcherHelper, _idh: IterableDifferHelper, optionHost: NestedOptionHost, transferState: TransferState, platformId: any);
protected _createInstance(element: any, options: any): dxScheduler;
ngOnDestroy(): void;
ngOnChanges(changes: SimpleChanges): void;
setupChanges(prop: string, changes: SimpleChanges): void;
ngDoCheck(): void;
_setOption(name: string, value: any): void;
static ɵfac: i0.ɵɵFactoryDeclaration<DxSchedulerComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DxSchedulerComponent, "dx-scheduler", never, { "accessKey": { "alias": "accessKey"; "required": false; }; "adaptivityEnabled": { "alias": "adaptivityEnabled"; "required": false; }; "allDayExpr": { "alias": "allDayExpr"; "required": false; }; "allDayPanelMode": { "alias": "allDayPanelMode"; "required": false; }; "appointmentCollectorTemplate": { "alias": "appointmentCollectorTemplate"; "required": false; }; "appointmentDragging": { "alias": "appointmentDragging"; "required": false; }; "appointmentTemplate": { "alias": "appointmentTemplate"; "required": false; }; "appointmentTooltipTemplate": { "alias": "appointmentTooltipTemplate"; "required": false; }; "cellDuration": { "alias": "cellDuration"; "required": false; }; "crossScrollingEnabled": { "alias": "crossScrollingEnabled"; "required": false; }; "currentDate": { "alias": "currentDate"; "required": false; }; "currentView": { "alias": "currentView"; "required": false; }; "customizeDateNavigatorText": { "alias": "customizeDateNavigatorText"; "required": false; }; "dataCellTemplate": { "alias": "dataCellTemplate"; "required": false; }; "dataSource": { "alias": "dataSource"; "required": false; }; "dateCellTemplate": { "alias": "dateCellTemplate"; "required": false; }; "dateSerializationFormat": { "alias": "dateSerializationFormat"; "required": false; }; "descriptionExpr": { "alias": "descriptionExpr"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "editing": { "alias": "editing"; "required": false; }; "elementAttr": { "alias": "elementAttr"; "required": false; }; "endDateExpr": { "alias": "endDateExpr"; "required": false; }; "endDateTimeZoneExpr": { "alias": "endDateTimeZoneExpr"; "required": false; }; "endDayHour": { "alias": "endDayHour"; "required": false; }; "firstDayOfWeek": { "alias": "firstDayOfWeek"; "required": false; }; "focusStateEnabled": { "alias": "focusStateEnabled"; "required": false; }; "groupByDate": { "alias": "groupByDate"; "required": false; }; "groups": { "alias": "groups"; "required": false; }; "height": { "alias": "height"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "indicatorUpdateInterval": { "alias": "indicatorUpdateInterval"; "required": false; }; "max": { "alias": "max"; "required": false; }; "maxAppointmentsPerCell": { "alias": "maxAppointmentsPerCell"; "required": false; }; "min": { "alias": "min"; "required": false; }; "noDataText": { "alias": "noDataText"; "required": false; }; "offset": { "alias": "offset"; "required": false; }; "recurrenceEditMode": { "alias": "recurrenceEditMode"; "required": false; }; "recurrenceExceptionExpr": { "alias": "recurrenceExceptionExpr"; "required": false; }; "recurrenceRuleExpr": { "alias": "recurrenceRuleExpr"; "required": false; }; "remoteFiltering": { "alias": "remoteFiltering"; "required": false; }; "resourceCellTemplate": { "alias": "resourceCellTemplate"; "required": false; }; "resources": { "alias": "resources"; "required": false; }; "rtlEnabled": { "alias": "rtlEnabled"; "required": false; }; "scrolling": { "alias": "scrolling"; "required": false; }; "selectedCellData": { "alias": "selectedCellData"; "required": false; }; "shadeUntilCurrentTime": { "alias": "shadeUntilCurrentTime"; "required": false; }; "showAllDayPanel": { "alias": "showAllDayPanel"; "required": false; }; "showCurrentTimeIndicator": { "alias": "showCurrentTimeIndicator"; "required": false; }; "startDateExpr": { "alias": "startDateExpr"; "required": false; }; "startDateTimeZoneExpr": { "alias": "startDateTimeZoneExpr"; "required": false; }; "startDayHour": { "alias": "startDayHour"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "textExpr": { "alias": "textExpr"; "required": false; }; "timeCellTemplate": { "alias": "timeCellTemplate"; "required": false; }; "timeZone": { "alias": "timeZone"; "required": false; }; "toolbar": { "alias": "toolbar"; "required": false; }; "useDropDownViewSwitcher": { "alias": "useDropDownViewSwitcher"; "required": false; }; "views": { "alias": "views"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "width": { "alias": "width"; "required": false; }; }, { "onAppointmentAdded": "onAppointmentAdded"; "onAppointmentAdding": "onAppointmentAdding"; "onAppointmentClick": "onAppointmentClick"; "onAppointmentContextMenu": "onAppointmentContextMenu"; "onAppointmentDblClick": "onAppointmentDblClick"; "onAppointmentDeleted": "onAppointmentDeleted"; "onAppointmentDeleting": "onAppointmentDeleting"; "onAppointmentFormOpening": "onAppointmentFormOpening"; "onAppointmentRendered": "onAppointmentRendered"; "onAppointmentTooltipShowing": "onAppointmentTooltipShowing"; "onAppointmentUpdated": "onAppointmentUpdated"; "onAppointmentUpdating": "onAppointmentUpdating"; "onCellClick": "onCellClick"; "onCellContextMenu": "onCellContextMenu"; "onContentReady": "onContentReady"; "onDisposing": "onDisposing"; "onInitialized": "onInitialized"; "onOptionChanged": "onOptionChanged"; "accessKeyChange": "accessKeyChange"; "adaptivityEnabledChange": "adaptivityEnabledChange"; "allDayExprChange": "allDayExprChange"; "allDayPanelModeChange": "allDayPanelModeChange"; "appointmentCollectorTemplateChange": "appointmentCollectorTemplateChange"; "appointmentDraggingChange": "appointmentDraggingChange"; "appointmentTemplateChange": "appointmentTemplateChange"; "appointmentTooltipTemplateChange": "appointmentTooltipTemplateChange"; "cellDurationChange": "cellDurationChange"; "crossScrollingEnabledChange": "crossScrollingEnabledChange"; "currentDateChange": "currentDateChange"; "currentViewChange": "currentViewChange"; "customizeDateNavigatorTextChange": "customizeDateNavigatorTextChange"; "dataCellTemplateChange": "dataCellTemplateChange"; "dataSourceChange": "dataSourceChange"; "dateCellTemplateChange": "dateCellTemplateChange"; "dateSerializationFormatChange": "dateSerializationFormatChange"; "descriptionExprChange": "descriptionExprChange"; "disabledChange": "disabledChange"; "editingChange": "editingChange"; "elementAttrChange": "elementAttrChange"; "endDateExprChange": "endDateExprChange"; "endDateTimeZoneExprChange": "endDateTimeZoneExprChange"; "endDayHourChange": "endDayHourChange"; "firstDayOfWeekChange": "firstDayOfWeekChange"; "focusStateEnabledChange": "focusStateEnabledChange"; "groupByDateChange": "groupByDateChange"; "groupsChange": "groupsChange"; "heightChange": "heightChange"; "hintChange": "hintChange"; "indicatorUpdateIntervalChange": "indicatorUpdateIntervalChange"; "maxChange": "maxChange"; "maxAppointmentsPerCellChange": "maxAppointmentsPerCellChange"; "minChange": "minChange"; "noDataTextChange": "noDataTextChange"; "offsetChange": "offsetChange"; "recurrenceEditModeChange": "recurrenceEditModeChange"; "recurrenceExceptionExprChange": "recurrenceExceptionExprChange"; "recurrenceRuleExprChange": "recurrenceRuleExprChange"; "remoteFilteringChange": "remoteFilteringChange"; "resourceCellTemplateChange": "resourceCellTemplateChange"; "resourcesChange": "resourcesChange"; "rtlEnabledChange": "rtlEnabledChange"; "scrollingChange": "scrollingChange"; "selectedCellDataChange": "selectedCellDataChange"; "shadeUntilCurrentTimeChange": "shadeUntilCurrentTimeChange"; "showAllDayPanelChange": "showAllDayPanelChange"; "showCurrentTimeIndicatorChange": "showCurrentTimeIndicatorChange"; "startDateExprChange": "startDateExprChange"; "startDateTimeZoneExprChange": "startDateTimeZoneExprChange"; "startDayHourChange": "startDayHourChange"; "tabIndexChange": "tabIndexChange"; "textExprChange": "textExprChange"; "timeCellTemplateChange": "timeCellTemplateChange"; "timeZoneChange": "timeZoneChange"; "toolbarChange": "toolbarChange"; "useDropDownViewSwitcherChange": "useDropDownViewSwitcherChange"; "viewsChange": "viewsChange"; "visibleChange": "visibleChange"; "widthChange": "widthChange"; }, ["_validationRulesContentChildren", "_itemsContentChildren", "_resourcesContentChildren", "_tabsContentChildren", "_viewsContentChildren"], never, true, never>;
}
export declare class DxSchedulerModule {
static ɵfac: i0.ɵɵFactoryDeclaration<DxSchedulerModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<DxSchedulerModule, never, [typeof DxSchedulerComponent, typeof i1.DxoAppointmentDraggingModule, typeof i1.DxoEditingModule, typeof i1.DxiResourceModule, typeof i1.DxoScrollingModule, typeof i1.DxiViewModule, typeof i2.DxoSchedulerAIOptionsModule, typeof i2.DxoSchedulerAppointmentDraggingModule, typeof i2.DxiSchedulerAsyncRuleModule, typeof i2.DxiSchedulerButtonItemModule, typeof i2.DxoSchedulerButtonOptionsModule, typeof i2.DxoSchedulerColCountByScreenModule, typeof i2.DxiSchedulerCompareRuleModule, typeof i2.DxiSchedulerCustomRuleModule, typeof i2.DxoSchedulerEditingModule, typeof i2.DxiSchedulerEmailRuleModule, typeof i2.DxiSchedulerEmptyItemModule, typeof i2.DxoSchedulerFormModule, typeof i2.DxiSchedulerGroupItemModule, typeof i2.DxiSchedulerItemModule, typeof i2.DxoSchedulerLabelModule, typeof i2.DxiSchedulerNumericRuleModule, typeof i2.DxoSchedulerOptionsModule, typeof i2.DxiSchedulerOptionsItemModule, typeof i2.DxiSchedulerPatternRuleModule, typeof i2.DxiSchedulerRangeRuleModule, typeof i2.DxiSchedulerRequiredRuleModule, typeof i2.DxiSchedulerResourceModule, typeof i2.DxoSchedulerScrollingModule, typeof i2.DxiSchedulerSimpleItemModule, typeof i2.DxiSchedulerStringLengthRuleModule, typeof i2.DxiSchedulerTabModule, typeof i2.DxiSchedulerTabbedItemModule, typeof i2.DxoSchedulerTabPanelOptionsModule, typeof i2.DxiSchedulerTabPanelOptionsItemModule, typeof i2.DxoSchedulerToolbarModule, typeof i2.DxiSchedulerToolbarItemModule, typeof i2.DxiSchedulerValidationRuleModule, typeof i2.DxiSchedulerViewModule, typeof i3.DxIntegrationModule, typeof i3.DxTemplateModule], [typeof DxSchedulerComponent, typeof i1.DxoAppointmentDraggingModule, typeof i1.DxoEditingModule, typeof i1.DxiResourceModule, typeof i1.DxoScrollingModule, typeof i1.DxiViewModule, typeof i2.DxoSchedulerAIOptionsModule, typeof i2.DxoSchedulerAppointmentDraggingModule, typeof i2.DxiSchedulerAsyncRuleModule, typeof i2.DxiSchedulerButtonItemModule, typeof i2.DxoSchedulerButtonOptionsModule, typeof i2.DxoSchedulerColCountByScreenModule, typeof i2.DxiSchedul