import { SchedulerView } from '../../../../Types/SchedulerView'; import { SchedulerViewBaseElement } from './Abstracts/SchedulerViewBaseElement'; import { ISchedulerMonthViewElementProps } from './ISchedulerMonthViewElementProps'; /** * Scheduler Month View - A calendar-style month view with event chips. * * @description * The Month view displays events in a traditional calendar grid layout with weeks as rows * and days as columns. Events are shown as compact chips within each day cell. * The view supports week numbers, adjacent month days, and highlighting. * * @name Scheduler Month View * @element mosaik-scheduler-month-view * @category Scheduler * * @slot - Default slot for event content * * @csspart container - The main container * @csspart header - The header row with day labels * @csspart header-cell - Individual day header cells (Sun, Mon, etc.) * @csspart week-number-header - The week number column header * @csspart body - The scrollable body area * @csspart week-row - A single week row * @csspart week-number - The week number cell * @csspart day-cell - Individual day cells * @csspart day-number - The day number within a cell * @csspart day-events - Container for event chips in a day * @csspart event-chip - Individual event chip * * @cssprop {Color} --scheduler-month-view-background-color - Background color of the view * @cssprop {Color} --scheduler-month-view-border-color - Border color * @cssprop {String} --scheduler-month-view-border-radius - Border radius * @cssprop {String} --scheduler-month-view-border-style - Border style * @cssprop {String} --scheduler-month-view-border-width - Border width * @cssprop {String} --scheduler-month-view-cell-min-height - Minimum height for day cells * @cssprop {String} --scheduler-month-view-day-number-font-size - Font size for day numbers * @cssprop {String} --scheduler-month-view-day-number-font-weight - Font weight for day numbers * @cssprop {String} --scheduler-month-view-event-chip-border-radius - Border radius for event chips * @cssprop {String} --scheduler-month-view-event-chip-font-size - Font size for event chip text * @cssprop {String} --scheduler-month-view-event-chip-height - Height of event chips * @cssprop {Color} --scheduler-month-view-foreground-color - Foreground/text color * @cssprop {String} --scheduler-month-view-gap - Gap between cells and elements * @cssprop {String} --scheduler-month-view-header-day-font-family - Font family for day headers * @cssprop {String} --scheduler-month-view-header-day-font-letter-spacing - Letter spacing for day headers * @cssprop {String} --scheduler-month-view-header-day-font-line-height - Line height for day headers * @cssprop {String} --scheduler-month-view-header-day-font-size - Font size for day headers * @cssprop {String} --scheduler-month-view-header-day-font-text-decoration - Text decoration for day headers * @cssprop {String} --scheduler-month-view-header-day-font-text-transform - Text transform for day headers * @cssprop {String} --scheduler-month-view-header-day-font-weight - Font weight for day headers * @cssprop {String} --scheduler-month-view-header-font-family - Font family for headers * @cssprop {String} --scheduler-month-view-header-font-letter-spacing - Letter spacing for headers * @cssprop {String} --scheduler-month-view-header-font-line-height - Line height for headers * @cssprop {String} --scheduler-month-view-header-font-size - Font size for headers * @cssprop {String} --scheduler-month-view-header-font-text-decoration - Text decoration for headers * @cssprop {String} --scheduler-month-view-header-font-text-transform - Text transform for headers * @cssprop {String} --scheduler-month-view-header-font-weight - Font weight for headers * @cssprop {String} --scheduler-month-view-header-weekday-font-family - Font family for weekday labels * @cssprop {String} --scheduler-month-view-header-weekday-font-letter-spacing - Letter spacing for weekday labels * @cssprop {String} --scheduler-month-view-header-weekday-font-line-height - Line height for weekday labels * @cssprop {String} --scheduler-month-view-header-weekday-font-size - Font size for weekday labels * @cssprop {String} --scheduler-month-view-header-weekday-font-text-decoration - Text decoration for weekday labels * @cssprop {String} --scheduler-month-view-header-weekday-font-text-transform - Text transform for weekday labels * @cssprop {String} --scheduler-month-view-header-weekday-font-weight - Font weight for weekday labels * @cssprop {String} --scheduler-month-view-padding-bottom - Bottom padding * @cssprop {String} --scheduler-month-view-padding-left - Left padding * @cssprop {String} --scheduler-month-view-padding-right - Right padding * @cssprop {String} --scheduler-month-view-padding-top - Top padding * @cssprop {Color} --scheduler-month-view-today-background-color - Background color for today's cell * @cssprop {Color} --scheduler-month-view-weekend-background-color - Background color for weekend cells * * @dependency {HintElement} - Used for "more events" indication * * @example * ```html * * ``` * * @public */ export declare class SchedulerMonthViewElement extends SchedulerViewBaseElement implements ISchedulerMonthViewElementProps { private _showWeekNumbers; private _showAdjacent; private _weeks; private _weekdayHeaders; private _eventsByDay; constructor(); /** * Returns the `is` property. * * @public * @static * @readonly */ static get is(): string; /** * Gets the layout mode for this view. * * @public * @override * @readonly */ get view(): SchedulerView; /** * Gets or sets whether to show week numbers. * * @public * @attr */ get showWeekNumbers(): boolean; set showWeekNumbers(value: boolean); /** * Gets or sets whether to show adjacent month days. * * @public * @attr */ get showAdjacent(): boolean; set showAdjacent(value: boolean); /** * Gets the weeks data for rendering. * * @public * @readonly */ get weeks(): Array; /** * Gets the weekday headers. * * @public * @readonly */ get weekdayHeaders(): Array; /** * @public * @override */ connectedCallback(): void; /** * Called after every update. Ensures the grid is built after all property bindings are applied. * * @protected * @override */ protected updated(changedProperties: Map): void; /** * Gets events for a specific day. * * @public * @param dayKey - The day key (YYYY-MM-DD). * @returns Array of events for that day. */ getEventsForDay(dayKey: string): Array; private buildMonthGrid; private positionEvents; } /** * @public */ export declare namespace SchedulerMonthViewElement { type Props = ISchedulerMonthViewElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-scheduler-month-view': SchedulerMonthViewElement; } } //# sourceMappingURL=SchedulerMonthViewElement.d.ts.map