import type { TemporalTimezone } from '@base-ui/react/internals/temporal'; import type { TemporalSupportedObject, SchedulerProcessedEvent, SchedulerProcessedDate, SchedulerEventOccurrence, SchedulerEventId, SchedulerResourceId } from "../../models/index.mjs"; import type { SchedulerRecurringEventsPluginInterface } from "../plugins/SchedulerRecurringEventsPlugin.types.mjs"; import type { Adapter } from "../../use-adapter/useAdapter.types.mjs"; /** * The render key of a non-recurring occurrence: the event id stringified. * Single source of truth so producers (occurrence expansion) and consumers (the editing highlight) * derive identical keys. */ export declare function getOccurrenceKey(eventId: SchedulerEventId): string; /** * The render key of a recurring occurrence: the event id plus the occurrence's day key. Shared so the * occurrence expansion and any code re-deriving the key (e.g. re-pointing the edited occurrence after a * recurring scope change) stay in lockstep. */ export declare function getRecurringOccurrenceKey(eventId: SchedulerEventId, day: TemporalSupportedObject, adapter: Adapter): string; export declare function generateOccurrenceFromEvent({ event, eventId, occurrenceKey, start, end }: { event: SchedulerProcessedEvent; eventId: SchedulerEventId; occurrenceKey: string; start: SchedulerProcessedDate; end: SchedulerProcessedDate; }): SchedulerEventOccurrence; /** * Returns the key of the days an event occurrence should be visible on. */ export declare function getDaysTheOccurrenceIsVisibleOn(event: SchedulerEventOccurrence, days: SchedulerProcessedDate[], adapter: Adapter): string[]; /** * Returns the occurrences to render in the given date range, expanding recurring events. */ export declare function getOccurrencesFromEvents(parameters: GetOccurrencesFromEventsParameters): SchedulerEventOccurrence[]; /** * Returns the resource IDs for the given resource, or an empty array if the resource is null or undefined. */ export declare function getEventResourceIds(resource: SchedulerResourceId | SchedulerResourceId[] | null | undefined): SchedulerResourceId[]; /** * Returns the primary resource ID for the given resource, or null if the resource is null or undefined. */ export declare function getPrimaryResourceId(resource: SchedulerResourceId | SchedulerResourceId[] | null | undefined): SchedulerResourceId | null; export interface GetOccurrencesFromEventsParameters { adapter: Adapter; start: TemporalSupportedObject; end: TemporalSupportedObject; events: SchedulerProcessedEvent[]; visibleResources: Record; displayTimezone: TemporalTimezone; recurringEventsPlugin: SchedulerRecurringEventsPluginInterface | null; }