import { Schedule } from '../base/schedule';
import { ViewBase } from './view-base';
import { TdData, IRenderer, TimeSlotData, CallbackFunction } from '../base/interface';
/**
 * vertical view
 */
export declare class VerticalView extends ViewBase implements IRenderer {
    currentTimeIndicatorTimer: number;
    viewClass: string;
    isInverseTableSelect: boolean;
    baseCssClass: string;
    private appointment;
    constructor(parent: Schedule);
    protected getModuleName(): string;
    addEventListener(): void;
    removeEventListener(): void;
    renderEvents(): void;
    private onContentScroll;
    private onAdaptiveMove;
    private onAdaptiveScroll;
    scrollLeftPanel(target: HTMLElement): void;
    private scrollUiUpdate;
    setContentHeight(element: HTMLElement, leftPanelElement: HTMLElement, height: number): void;
    scrollToWorkHour(): void;
    scrollToHour(hour: string, scrollDate?: Date): void;
    scrollToDate(scrollDate: Date): void;
    generateColumnLevels(): TdData[][];
    getDateSlots(renderDates: Date[], workDays: number[], workStartHour?: string, workEndHour?: string): TdData[];
    private isWorkHourRange;
    highlightCurrentTime(): void;
    getCurrentTimeIndicatorIndex(): number[];
    private clearCurrentTimeIndicatorTimer;
    private updateCurrentTimeIndicatorTimer;
    removeCurrentTimeIndicatorElements(): void;
    changeCurrentTimePosition(): void;
    getTopFromDateTime(date: Date): number;
    private getWorkCellHeight;
    private getTdContent;
    refreshHeader(): void;
    renderLayout(type: string): void;
    renderHeader(): void;
    renderContent(): void;
    private renderLeftIndent;
    renderDatesHeader(): Element;
    createAllDayRow(table: Element, tdData: TdData[]): void;
    createTd(td: TdData): Element;
    private wireCellEvents;
    private wireMouseEvents;
    private renderTimeCells;
    renderContentArea(): Element;
    renderContentTable(table: Element): void;
    getContentRows(): Element[];
    createContentTd(tdData: TdData, r: TimeSlotData, td: Element): Element;
    getContentTdClass(r: TimeSlotData): string[];
    private renderContentTableHeader;
    getScrollableElement(): Element;
    getLeftPanelElement(): HTMLElement;
    getEndDateFromStartDate(start: Date): Date;
    private getStartEndHours;
    getTimeSlotRows(handler?: CallbackFunction): TimeSlotData[];
    getAdjustedDate(startTime: Date): Date;
    destroy(): void;
}
