@uplink-protocol/calendar-controller
Version:
Flexible calendar and time picker API supporting both calendar, date-picker, and time-picker integrations for any JavaScript framework or library
36 lines (35 loc) • 1.39 kB
TypeScript
import { CalendarControllerBindings } from "../types";
import { CalendarGetters } from "../types/getters.type";
/**
* BindingsCoordinator - Manages reactive bindings for the calendar controller
* Handles initialization and updates of all bindings with batching optimization
*/
export declare class BindingsCoordinator {
/**
* Update all bindings with optional selective updates
* @param bindings The bindings object to update
* @param getters Object with getter functions for each binding value
* @param updates Object specifying which bindings to update
*/
updateAllBindings(bindings: CalendarControllerBindings, getters: CalendarGetters, updates?: {
selectedDate?: boolean;
selectedDateRange?: boolean;
focusedDate?: boolean;
currentDate?: boolean;
calendarDays?: boolean;
calendarMonths?: boolean;
calendarYears?: boolean;
weekdays?: boolean;
isRangeSelection?: boolean;
currentYearRangeBase?: boolean;
}): void;
/**
* Execute batched binding updates for performance
* @param updates Array of update functions
*/
executeBatchedBindingUpdates(updates: Array<() => void>): void;
/**
* Simple helper to update calendar view bindings
*/
updateCalendarViewBindings(bindings: CalendarControllerBindings, getters: any): void;
}