import { AfterViewInit, OnDestroy } from '@angular/core';
import { DateTimePickerService } from '../date-time-picker.service';
import { DayViewItem, DayViewService } from './day-view.service';
import * as i0 from "@angular/core";
export declare class DayViewComponent implements AfterViewInit, OnDestroy {
    readonly datePicker: DateTimePickerService;
    readonly dayService: DayViewService;
    private readonly _changeDetector;
    private readonly _focusOrigin;
    private readonly _liveAnnouncer;
    private readonly _rangeService;
    private readonly _rangeOptions;
    /** Determine if we are in range selection mode */
    get _isRangeMode(): boolean;
    /** Determine if this picker is the start picker */
    get _isRangeStart(): boolean;
    /** Determine if this picker is the end picker */
    get _isRangeEnd(): boolean;
    get _rangeStart(): Date | null;
    get _rangeEnd(): Date | null;
    private readonly _onDestroy;
    constructor();
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    /**
     * Navigate to the previous page of dates
     */
    previous(): void;
    /**
     * Navigate to the next page of dates
     */
    next(): void;
    /**
     * Select a particular date
     * @param date the date to select
     */
    select(date: Date): void;
    trackWeekByFn(index: number): number;
    trackDayByFn(_index: number, item: DayViewItem): string;
    focusDate(item: DayViewItem, dayOffset: number): void;
    getTabbable(item: DayViewItem): boolean;
    getDisabled(date: Date): boolean;
    isRangeStartDate(date: Date): boolean;
    isRangeEndDate(date: Date): boolean;
    isWithinRange(date: Date): boolean;
    isDateHovered(date: Date): boolean;
    isItemActive(date: Date, isActive: boolean): boolean;
    onRangeMouseEnter(date: Date): void;
    onRangeMouseLeave(date: Date): void;
    /** Announce the date when we focus on a date */
    announceRangeMode(): void;
    /** Determine if we should focus a date */
    shouldFocus(item: DayViewItem): boolean;
    /** Update the viewport when the range changes to ensure focus is present on a valid item */
    private onRangeChange;
    static ɵfac: i0.ɵɵFactoryDeclaration<DayViewComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DayViewComponent, "ux-date-time-picker-day-view", never, {}, {}, never, never, false, never>;
}
