import { CrudAction } from '../base/interface';
import { ReturnType, CurrentAction } from '../base/type';
import { Schedule } from '../base/schedule';
/**
 * Schedule CRUD operations
 */
export declare class Crud {
    private parent;
    crudObj: CrudAction;
    constructor(parent: Schedule);
    private getQuery;
    private getTable;
    refreshDataManager(): void;
    private dataManagerSuccess;
    dataManagerFailure(e: ReturnType): void;
    refreshProcessedData(isVirtualScrollAction?: boolean, dynamicEvents?: Record<string, any>[]): void;
    private refreshData;
    addEvent(eventData: Record<string, any> | Record<string, any>[]): void;
    saveEvent(eventData: Record<string, any> | Record<string, any>[], action: CurrentAction): void;
    deleteEvent(eventData: string | number | Record<string, any> | Record<string, any>[], action: CurrentAction): void;
    private processOccurrences;
    private processFollowSeries;
    private processEntireSeries;
    private processDelete;
    private processSave;
    private getParentEvent;
    private excludeDateCheck;
    private processRecurrenceRule;
    private getUpdatedRecurrenceRule;
    private isBlockEvent;
    /**
     * To destroy the crud module.
     *
     * @returns {void}
     * @private
     */
    destroy(): void;
}
