import { ICalendarEvent } from '../../types/CalendarTypes'; /** * AllDayDomReader - Centralized DOM reading utilities for all-day services * * STATELESS UTILITY - Pure functions for reading DOM state * - Consistent selectors across all services * - Unified computed style approach (not inline styles) * - Type-safe return values * - Single source of truth for DOM queries */ export declare class AllDayDomReader { /** * Get the all-day events container element */ static getAllDayContainer(): HTMLElement | null; /** * Get the calendar header element */ static getCalendarHeader(): HTMLElement | null; /** * Get the header spacer element */ static getHeaderSpacer(): HTMLElement | null; /** * Get all all-day event elements (excluding overflow indicators) * Returns raw HTMLElements for DOM manipulation */ static getEventElements(): HTMLElement[]; /** * Get all-day events as ICalendarEvent objects * Returns parsed data for business logic */ static getEventsAsData(): ICalendarEvent[]; /** * Get grid row from element using computed style * Always uses computed style for consistency */ static getGridRow(element: HTMLElement): number; /** * Get grid column range from element using computed style */ static getGridColumnRange(element: HTMLElement): { start: number; end: number; }; /** * Get grid area from element using computed style */ static getGridArea(element: HTMLElement): string; /** * Calculate max row number from all events * Uses computed styles for accurate reading */ static getMaxRowFromEvents(): number; /** * Check if all-day container is expanded */ static isExpanded(): boolean; /** * Get current all-day height from CSS variable */ static getCurrentHeight(): number; /** * Count events in specific column */ static countEventsInColumn(columnIndex: number): number; /** * Get current layouts from DOM elements * Returns map of eventId → layout info for comparison */ static getCurrentLayouts(): Map; }