import { IRenderer } from '../base/interface';
import { AgendaBase } from '../event-renderer/agenda-base';
import { Schedule } from '../base/schedule';
import { NavigationDirection } from '../base/type';
/**
 * agenda view
 */
export declare class Agenda extends AgendaBase implements IRenderer {
    viewClass: string;
    isInverseTableSelect: boolean;
    agendaDates: {
        [key: string]: Date;
    };
    virtualScrollTop: number;
    dataSource: Record<string, any>[];
    constructor(parent: Schedule);
    protected getModuleName(): string;
    renderLayout(): void;
    private eventLoad;
    private refreshEvent;
    refreshHeader(): void;
    private renderInitialContent;
    renderContent(tBody: Element, agendaDate: Date, lastDate: Date): void;
    private isAgendaWorkDay;
    private agendaScrolling;
    private virtualScrolling;
    private getElementFromScrollerPosition;
    private updateHeaderText;
    private getPreviousNextDate;
    private appointmentFiltering;
    getStartDateFromEndDate(endDate: Date): Date;
    getEndDateFromStartDate(startDate: Date): Date;
    getNextPreviousDate(type: NavigationDirection): Date;
    startDate(): Date;
    endDate(): Date;
    getDateRangeText(date?: Date): string;
    dayNavigationClick(e: Event): void;
    private wireEvents;
    private unWireEvents;
    addEventListener(): void;
    removeEventListener(): void;
    private onAgendaScrollUiUpdate;
    scrollToDate(scrollDate: Date): void;
    destroy(): void;
}
