import { CalendarMarkerData } from '../../../Types/CalendarMarkerHandler'; import { CustomElement } from '../../Abstracts/CustomElement'; import type { ICalendarItemElementProps } from './ICalendarItemElementProps'; declare const CalendarItemElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Rippleable").IRippleableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Appearanceable").IAppearanceableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Variantable").IVariantableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Disableable").IDisableableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Valueable").IValueableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Focusable").IFocusableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * Calendar Item - An individual day, month, or year cell within a calendar date picker. * * @description * The Calendar Item component represents a single selectable date unit in calendar interfaces. * It supports various states including selected, today, weekend, adjacent month, blackout dates, * special dates, and range selections. The component includes visual markers for events or * important dates, ripple effects for interaction feedback, and comprehensive accessibility * features. It can display range states (start, middle, end) and preview states for hover * interactions. The component is highly versatile and used across day, month, and year views. * * @name Calendar Item * @element mosaik-calendar-item * @category Inputs * * @csspart focusRing - The keyboard focus indicator ring * @csspart ripple - The touch feedback ripple effect container * @csspart text - The text display area showing the day/month/year number or label * @csspart marker - Individual event or date marker dots * * @cssprop {String} --calendar-item-background-color - The background color of the calendar cell * @cssprop {String} --calendar-item-foreground-color - The text color * @cssprop {String} --calendar-item-border-color - The border color * @cssprop {String} --calendar-item-border-width - The border thickness * @cssprop {String} --calendar-item-border-style - The border line style * @cssprop {String} --calendar-item-border-radius - The corner rounding radius * @cssprop {String} --calendar-item-font-family - The font family for date text * @cssprop {String} --calendar-item-font-size - The font size for date text * @cssprop {String} --calendar-item-font-weight - The font weight for date text * @cssprop {String} --calendar-item-font-line-height - The line height for date text * @cssprop {String} --calendar-item-font-letter-spacing - The letter spacing for date text * @cssprop {String} --calendar-item-font-text-decoration - The text decoration style * @cssprop {String} --calendar-item-font-text-transform - The text transformation style * @cssprop {String} --calendar-item-padding-top - The top padding inside the cell * @cssprop {String} --calendar-item-padding-right - The right padding inside the cell * @cssprop {String} --calendar-item-padding-bottom - The bottom padding inside the cell * @cssprop {String} --calendar-item-padding-left - The left padding inside the cell * @cssprop {String} --calendar-item-gap - The spacing between text and markers * @cssprop {String} --calendar-item-transition-duration - The duration of state transitions * @cssprop {String} --calendar-item-transition-mode - The timing function for transitions * @cssprop {String} --calendar-item-transition-property - The CSS properties to transition * @cssprop {String} --calendar-item-focus-ring-color - The focus ring color (from focusRing mixin) * @cssprop {String} --calendar-item-focus-ring-inward-offset - The focus ring inward offset (from focusRing mixin) * @cssprop {String} --calendar-item-focus-ring-outward-offset - The focus ring outward offset (from focusRing mixin) * @cssprop {String} --calendar-item-focus-ring-active-width - The focus ring width when active (from focusRing mixin) * @cssprop {String} --calendar-item-ripple-color - The ripple effect color (from ripple mixin) * @cssprop {String} --calendar-item-ripple-duration - The ripple animation duration (from ripple mixin) * * @dependency {TextElement} - Text rendering component for day/month/year labels * @dependency {FocusRingElement} - Keyboard focus indicator component * @dependency {RippleElement} - Touch feedback effect component * @dependency {DotElement} - Event marker indicator component * @dependency {StackElement} - Layout container for organizing markers * * @fires click {MouseEvent} - Fired when the calendar item is clicked (prevented when disabled or blackout) * * @example * Basic calendar day item: * ```html * * ``` * * @example * Selected item with today marker: * ```html * * ``` * * @example * Weekend item with event markers (set via JavaScript): * ```html * * * ``` * * @example * Blackout date (disabled): * ```html * * ``` * * @example * Range selection: * ```html * * * * ``` * * @public */ export declare class CalendarItemElement extends CalendarItemElement_base implements ICalendarItemElementProps { private _text; private _value; private _isSelected; private _isBlackout; private _isSpecial; private _isToday; private _isWeekend; private _isAdjacent; private _markers; private _isRangeStart; private _isRangeMiddle; private _isRangeEnd; private _isRangePreview; /** * @public */ constructor(); /** * Returns the `is` property. * The `is` property represents natural name of this element. * * @public * @static * @readonly */ static get is(): string; /** * Gets or sets the `text` property. * * @public * @attr */ get text(): string; set text(value: string); /** * Gets or sets the `value` property. * * @public * @override */ get value(): Date | null; set value(value: Date | null); /** * Gets or sets the `isSelected` property. * * @public * @attr */ get isSelected(): boolean; set isSelected(value: boolean); /** * Gets or sets the `isBlackout` property. * * @public * @attr */ get isBlackout(): boolean; set isBlackout(value: boolean); /** * Gets or sets the `isSpecial` property. * * @public * @attr */ get isSpecial(): boolean; set isSpecial(value: boolean); /** * Gets or sets the `isToday` property. * * @public * @attr */ get isToday(): boolean; set isToday(value: boolean); /** * Gets or sets the `isWeekend` property. * * @public * @attr */ get isWeekend(): boolean; set isWeekend(value: boolean); /** * Gets or sets the `isAdjacent` property. * * @public * @attr */ get isAdjacent(): boolean; set isAdjacent(value: boolean); /** * Gets or sets the `markers` property. * * @public */ get markers(): Array; set markers(value: Array); /** * Gets or sets the `isRangeStart` property. * * @public * @attr */ get isRangeStart(): boolean; set isRangeStart(value: boolean); /** * Gets or sets the `isRangeMiddle` property. * * @public * @attr */ get isRangeMiddle(): boolean; set isRangeMiddle(value: boolean); /** * Gets or sets the `isRangeEnd` property. * * @public * @attr */ get isRangeEnd(): boolean; set isRangeEnd(value: boolean); /** * Gets or sets the `isRangePreview` property. * * @public * @attr */ get isRangePreview(): boolean; set isRangePreview(value: boolean); protected onClick(event: Event): void; } /** * @public */ export declare namespace CalendarItemElement { type Props = ICalendarItemElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-calendar-item': CalendarItemElement; } } export {}; //# sourceMappingURL=CalendarItemElement.d.ts.map