/** * DevExtreme (ui/calendar.d.ts) * Version: 21.1.7 * Build date: Thu Aug 07 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import { UserDefinedElement, DxElement, } from '../core/element'; import { ChangedOptionInfo, EventInfo, InitializedEventInfo, NativeEventInfo, } from '../events/index'; import { template, } from '../core/templates/template'; import Editor, { ValueChangedInfo, EditorOptions, } from './editor/editor'; export interface ComponentDisabledDate { component: T; readonly date: Date; readonly view: string; } /** @public */ export type ContentReadyEvent = EventInfo; /** @public */ export type DisposingEvent = EventInfo; /** @public */ export type InitializedEvent = InitializedEventInfo; /** @public */ export type OptionChangedEvent = EventInfo & ChangedOptionInfo; /** @public */ export type ValueChangedEvent = NativeEventInfo & ValueChangedInfo; /** @public */ export type CellTemplateData = { readonly date: Date; readonly view: string; readonly text?: string; }; /** @public */ export type DisabledDate = ComponentDisabledDate; /** * @deprecated use Properties instead * @namespace DevExpress.ui */ export interface dxCalendarOptions extends EditorOptions { /** * @docid * @default true * @public */ activeStateEnabled?: boolean; /** * @docid * @default "cell" * @type_function_param1 itemData:object * @type_function_param1_field1 date:Date * @type_function_param1_field2 view:string * @type_function_param1_field3 text:string * @type_function_return string|Element|jQuery * @public */ cellTemplate?: template | ((itemData: CellTemplateData, itemIndex: number, itemElement: DxElement) => string | UserDefinedElement); /** * @docid * @default undefined * @public */ dateSerializationFormat?: string; /** * @docid * @default null * @type_function_param1 data:object * @type_function_param1_field1 component:object * @type_function_param1_field2 date:Date * @type_function_param1_field3 view:string * @public */ disabledDates?: Array | ((data: DisabledDate) => boolean); /** * @docid * @type Enums.FirstDayOfWeek * @default undefined * @public */ firstDayOfWeek?: 0 | 1 | 2 | 3 | 4 | 5 | 6; /** * @docid * @default true &for(desktop) * @public */ focusStateEnabled?: boolean; /** * @docid * @default true * @public */ hoverStateEnabled?: boolean; /** * @docid * @default new Date(3000, 0) * @public */ max?: Date | number | string; /** * @docid * @type Enums.CalendarZoomLevel * @default 'month' * @public */ maxZoomLevel?: 'century' | 'decade' | 'month' | 'year'; /** * @docid * @default new Date(1000, 0) * @public */ min?: Date | number | string; /** * @docid * @type Enums.CalendarZoomLevel * @default 'century' * @public */ minZoomLevel?: 'century' | 'decade' | 'month' | 'year'; /** * @docid * @hidden false * @public */ name?: string; /** * @docid * @default false * @public */ showTodayButton?: boolean; /** * @docid * @default null * @public */ value?: Date | number | string; /** * @docid * @type Enums.CalendarZoomLevel * @default 'month' * @fires dxCalendarOptions.onOptionChanged * @public */ zoomLevel?: 'century' | 'decade' | 'month' | 'year'; } /** * @docid * @isEditor * @inherits Editor * @namespace DevExpress.ui * @public */ export default class dxCalendar extends Editor { constructor(element: UserDefinedElement, options?: dxCalendarOptions) } /** @public */ export type Properties = dxCalendarOptions; /** @deprecated use Properties instead */ export type Options = dxCalendarOptions; /** @deprecated use Properties instead */ export type IOptions = dxCalendarOptions;