import { AfterContentChecked, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit, Renderer2 } from "@angular/core";
import { CalendarView } from "../../../../enum/calendar-view.enum";
import { LanguageCode } from "../../../../enum/language-code.enum";
import { Weekday } from "../../../../model/weekday.model";
import { Day } from "../../../../model/day.model";
import { Icon } from "../../../../enum/icon.enum";
import { AgendaEventPerDay } from "../../../../model/agenda-event-per-day.model";
import { IconCacheService } from "../../../../service/icon-cache.service";
export declare class AgendaHeaderComponent implements OnInit, OnDestroy, AfterContentChecked {
    private readonly _locale;
    private _elementRef;
    private _renderer;
    private _ngZone;
    iconCacheService: IconCacheService;
    readonly icons: typeof Icon;
    readonly viewTypes: typeof CalendarView;
    private readonly scrollbarWidth;
    today: Date;
    set selectedDate(value: Date);
    get selectedDate(): Date;
    view: CalendarView;
    set firstAvailableDate(value: Date);
    get firstAvailableDate(): Date;
    set eventsPerDay(value: AgendaEventPerDay[]);
    viewSelection: boolean;
    viewChange: EventEmitter<CalendarView>;
    selectedDateChange: EventEmitter<Date>;
    rangeChange: EventEmitter<Date>;
    weekDays: Weekday[];
    day: Day;
    showBackButton: boolean;
    private _selectedDate;
    private _firstAvailableDate;
    private _eventsPerDay;
    constructor(_locale: LanguageCode, _elementRef: ElementRef, _renderer: Renderer2, _ngZone: NgZone, iconCacheService: IconCacheService);
    ngOnDestroy(): void;
    ngOnInit(): void;
    ngAfterContentChecked(): void;
    subUnit(): void;
    addUnit(): void;
    setUnit(weekDay: Weekday): void;
    changeTheView(view: CalendarView): void;
    private _onResize;
    /**
     * Need to resize the host component to size it's fixed positioned child through css
     */
    private _resizeHost;
    private _prepareHeaderData;
    capitalizeString(label: string): string;
}
