import { IAppearanceableProps } from '../../../Behaviors/Appearanceable'; import { IDisableableProps } from '../../../Behaviors/Disableable'; import { ILocaleableProps } from '../../../Behaviors/Localeable'; import { ISizeableProps } from '../../../Behaviors/Sizeable'; import { ISlottableProps } from '../../../Behaviors/Slottable'; import { IThemeableProps } from '../../../Behaviors/Themeable'; import { IVariantableProps } from '../../../Behaviors/Variantable'; import type { AllDayVisibility } from '../../../Types/AllDayVisibility'; import { DayOfWeek } from '../../../Types/DayOfWeek'; import type { SchedulerView } from '../../../Types/SchedulerView'; /** * Represents the properties for the SchedulerElement. * * @public */ export interface ISchedulerElementProps extends IAppearanceableProps, IVariantableProps, ILocaleableProps, IThemeableProps, ISizeableProps, ISlottableProps, IDisableableProps { /** * The current view mode of the scheduler. * * @remarks * Available views: * - `timeGrid` - Time grid view with configurable day columns (default) * - `month` - Month calendar view with event chips * - `agenda` - Chronological list view of events */ view: SchedulerView; /** * The start date for the visible range. When null, defaults to today. */ startDate: Date | null; /** * The number of days to display in time grid view. * * @remarks * Applies to: `timeGrid` view only. * Default depends on configuration: day=1, week=7, workweek=5. */ days: number; /** * The start hour of the time range (0-23). * * @remarks * Applies to: `timeGrid` view only. */ hourStart: number; /** * The end hour of the time range (0-23). * * @remarks * Applies to: `timeGrid` view only. */ hourEnd: number; /** * The step interval in minutes for the time grid. * * @remarks * Applies to: `timeGrid` view only. */ stepMinutes: number; /** * The timezone for date/time calculations (e.g., 'Europe/Berlin'). */ timezone: string; /** * The blackout dates that should be disabled. */ blackoutDates: Array; /** * The special dates that should be visually highlighted. */ specialDates: Array; /** * The first day of the week (0 = Sunday, 1 = Monday, etc.). */ firstDayOfWeek: DayOfWeek; /** * Whether today is visually highlighted. */ isTodayHighlighted: boolean; /** * Whether weekend columns are visually highlighted. */ isWeekendHighlighted: boolean; /** * The visibility mode for all-day events. * * @remarks * Applies to: `timeGrid` view only. */ allDayVisibility: AllDayVisibility; /** * Whether to show week numbers in month view. * * @remarks * Applies to: `month` view only. */ showWeekNumbers: boolean; /** * Whether to show days from adjacent months in month view. * * @remarks * Applies to: `month` view only. */ showAdjacent: boolean; /** * The number of days ahead to show in agenda view. * * @remarks * Applies to: `agenda` view only. */ daysAhead: number; /** * Format string for displaying weekday names in headers. * * @remarks * Uses DateFormatter syntax: * - `ddd` - Abbreviated weekday (e.g., "Mon", "Tue") * - `dddd` - Full weekday (e.g., "Monday", "Tuesday") * * @default 'ddd' */ weekdayFormat: string; /** * Format string for displaying day numbers in headers. * * @remarks * Uses DateFormatter syntax: * - `d` - Day without leading zero (e.g., "1", "15") * - `dd` - Day with leading zero (e.g., "01", "15") * * @default 'd' */ dayFormat: string; /** * Format string for displaying time values. * * @remarks * Uses TimeFormatter syntax: * - `HH:mm` - 24-hour format (e.g., "09:30", "14:00") * - `h:mm tt` - 12-hour format (e.g., "9:30 AM", "2:00 PM") * - `H:mm` - 24-hour without leading zero (e.g., "9:30", "14:00") * * @default 'HH:mm' */ timeFormat: string; /** * Format string for displaying adjacent month day labels in month view. * * @remarks * Uses DateFormatter syntax: * - `MMM d` - Abbreviated month + day (e.g., "Jan 1") * - `MMMM d` - Full month + day (e.g., "January 1") * - `M/d` - Numeric format (e.g., "1/1") * * @default 'MMM d' */ monthDayFormat: string; } /** * Default values for SchedulerElement properties. * * @public */ export declare namespace ISchedulerElementProps { const DEFAULTS: ISchedulerElementProps; } //# sourceMappingURL=ISchedulerElementProps.d.ts.map