import { ProcessedEventsData, CellData } from '../types/internal-interface'; import { ResourceLevel } from '../services/ResourceGroupingService'; /** * Custom hook to process all-day events and provide related functionalities * * @param {boolean} isCollapsed - Whether the all-day row is collapsed * @param {number} maxEventsStack - Maximum number of events to display per cell * @returns {AllDayEventsResult} Processed events data and related functions * * @private */ interface AllDayEventsResult { /** * Events mapped by date */ eventsByDate: Map; /** * Whether there are events that exceed the max count */ hasEventsExceedingMaxCount: boolean; /** * Maximum number of events in any column */ maxEventsInAnyColumn: number; /** * The visible event limit based on collapsed state */ visibleEventLimit: number; /** * Calculates the height of the all-day row * * @returns {number} The calculated height */ calculateHeight: () => number; /** * Get visible events for a specific date and optional resource leaf * When resource leaf is provided, filters events by that resource * * @param {string} dateKey - The date key * @param {CellData|ResourceLevel} [resourceLeaf] - The resource leaf object (optional, for resource grouping) * @returns {ProcessedEventsData[]} Array of visible events */ getVisibleEvents: (dateKey: string, resourceLeaf?: CellData | ResourceLevel) => ProcessedEventsData[]; /** * Get hidden event count for a specific date and optional resource leaf * When resource leaf is provided, counts only events for that resource * * @param {string} dateKey - The date key * @param {CellData|ResourceLevel} [resourceLeaf] - The resource leaf object (optional, for resource grouping) * @returns {number} Count of hidden events */ getHiddenEventCount: (dateKey: string, resourceLeaf?: CellData | ResourceLevel) => number; } /** * Process all-day events and provide related functionalities * * @param {boolean} isCollapsed - Whether the all-day row is collapsed * @param {number} maxEventsStack - Maximum number of events to display per cell * @returns {AllDayEventsResult} Processed events data and related functions * @private */ export declare const useAllDayEvents: (isCollapsed: boolean, maxEventsStack?: number) => AllDayEventsResult; export {};