import { EventModel } from '../types/scheduler-types'; import { ActiveViewProps } from '../types/internal-interface'; import { CrudAction } from '../types/enums'; import { ConfirmationDialogState } from './useConfirmationDialog'; interface UseDataProps { activeViewProps: ActiveViewProps; renderDates: Date[]; confirmationDialog?: { show: (config: Omit) => void; hide: () => void; setStateUpdater: (callback: (state: ConfirmationDialogState) => void) => void; }; } /** @private */ interface UseDataResult { /** * Scheduler component events data. */ eventsData: EventModel[]; /** * Processed events data before expansion. */ eventsProcessed: EventModel[]; /** * Adds the newly created event into the Scheduler dataSource. */ addEvent: (data: Record | Record[]) => void; /** * Deletes the events based on the provided ID or event collection in the argument list. */ deleteEvent?: (id: string | number | Record | Record[], action?: CrudAction) => void; /** * Updates the changes made in the event object by passing it as an parameter into the dataSource. */ saveEvent?: (data: Record | Record[], action?: CrudAction) => void; } /** * Custom hook to manage data operations for the scheduler * * @param {UseDataProps} props Scheduler useData hook props. * @returns {UseDataResult} Object containing APIs for data operations * @private */ export declare const useData: (props: UseDataProps) => UseDataResult; export {};