/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, Renderer2, AfterViewChecked, AfterViewInit, TemplateRef } from '@angular/core';
import { IntlService } from '@progress/kendo-angular-intl';
import { PageAction, ScrollAction } from '../virtualization/services/scroller.service';
import { VirtualizationComponent } from '../virtualization/virtualization.component';
import { BusViewService } from './services/bus-view.service';
import { CalendarDOMService } from './services/dom.service';
import { ViewService } from './models/view-service.interface';
import { CalendarViewEnum } from './models/view.enum';
import { HeaderComponent } from './header.component';
import { WeekDaysFormat } from '../common/models/week-days-format';
import { CalendarView } from './models/view.type';
import { SelectionRangeEnd } from './models/selection-range-end.type';
import { SelectionRange } from './models/selection-range.interface';
import { DateInputSize } from '../common/models/size';
import * as i0 from "@angular/core";
/**
 * @hidden
 */
export declare class ViewListComponent implements OnChanges, OnDestroy, AfterViewInit, AfterViewChecked {
    private bus;
    private cdr;
    private intl;
    private dom;
    private renderer;
    allowReverse: boolean;
    cellTemplateRef: TemplateRef<any>;
    weekNumberTemplateRef: TemplateRef<any>;
    headerTitleTemplateRef: TemplateRef<any>;
    headerTemplateRef: TemplateRef<any>;
    footerTemplateRef: TemplateRef<any>;
    showOtherMonthDays: boolean;
    activeView: CalendarViewEnum;
    cellUID: string;
    focusedDate: Date;
    isActive: boolean;
    min: Date;
    max: Date;
    selectedDates: Date[];
    tabIndex: number;
    disabled: boolean;
    id: string;
    showFooter: boolean;
    weekDaysFormat: WeekDaysFormat;
    activeRangeEnd: SelectionRangeEnd;
    selectionRange: SelectionRange;
    size: DateInputSize;
    get weekNumber(): boolean;
    set weekNumber(showWeekNumbers: boolean);
    cellEnter: EventEmitter<Date>;
    cellClick: EventEmitter<any>;
    weekNumberCellClick: EventEmitter<Date[]>;
    activeDateChange: EventEmitter<Date>;
    todayButtonClick: EventEmitter<Date>;
    pageChange: EventEmitter<any>;
    focusCalendar: EventEmitter<void>;
    blurCalendar: EventEmitter<any>;
    focusedCellChange: EventEmitter<string>;
    virtualization: VirtualizationComponent;
    headerComponent: HeaderComponent;
    get headerTitle(): string;
    list: ElementRef;
    getComponentClass: boolean;
    get getComponentMonthClass(): boolean;
    get getComponentYearClass(): boolean;
    get getComponentDecadeClass(): boolean;
    get getComponentCenturyClass(): boolean;
    get activeViewValue(): CalendarView;
    service: ViewService;
    activeDate: Date;
    dates: Date[];
    cols: number[];
    weekNames: string[];
    wideWeekNames: string[];
    take: number;
    skip: number;
    total: number;
    bottomOffset: number;
    viewHeight: number;
    viewOffset: number;
    private animateToIndex;
    private indexToScroll;
    private showWeekNumbers;
    private minViewsToRender;
    private intlSubscription;
    constructor(bus: BusViewService, cdr: ChangeDetectorRef, intl: IntlService, dom: CalendarDOMService, renderer: Renderer2);
    ngOnInit(): void;
    ngOnChanges(changes: any): void;
    ngOnDestroy(): void;
    ngAfterViewInit(): void;
    ngAfterViewChecked(): void;
    onPageChange({ skip }: PageAction): void;
    scrollChange({ offset }: ScrollAction): void;
    setActiveDate(index: number): void;
    isMonthView(): boolean;
    isScrolled(): boolean;
    getTabIndex(): number;
    private getBottomOffset;
    private getScrollableHeight;
    private getTake;
    private getWeekNames;
    private intlChange;
    static ɵfac: i0.ɵɵFactoryDeclaration<ViewListComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ViewListComponent, "kendo-calendar-viewlist", never, { "allowReverse": { "alias": "allowReverse"; "required": false; }; "cellTemplateRef": { "alias": "cellTemplateRef"; "required": false; }; "weekNumberTemplateRef": { "alias": "weekNumberTemplateRef"; "required": false; }; "headerTitleTemplateRef": { "alias": "headerTitleTemplateRef"; "required": false; }; "headerTemplateRef": { "alias": "headerTemplateRef"; "required": false; }; "footerTemplateRef": { "alias": "footerTemplateRef"; "required": false; }; "showOtherMonthDays": { "alias": "showOtherMonthDays"; "required": false; }; "activeView": { "alias": "activeView"; "required": false; }; "cellUID": { "alias": "cellUID"; "required": false; }; "focusedDate": { "alias": "focusedDate"; "required": false; }; "isActive": { "alias": "isActive"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "selectedDates": { "alias": "selectedDates"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "id": { "alias": "id"; "required": false; }; "showFooter": { "alias": "showFooter"; "required": false; }; "weekDaysFormat": { "alias": "weekDaysFormat"; "required": false; }; "activeRangeEnd": { "alias": "activeRangeEnd"; "required": false; }; "selectionRange": { "alias": "selectionRange"; "required": false; }; "size": { "alias": "size"; "required": false; }; "weekNumber": { "alias": "weekNumber"; "required": false; }; }, { "cellEnter": "cellEnter"; "cellClick": "cellClick"; "weekNumberCellClick": "weekNumberCellClick"; "activeDateChange": "activeDateChange"; "todayButtonClick": "todayButtonClick"; "pageChange": "pageChange"; "focusCalendar": "focusCalendar"; "blurCalendar": "blurCalendar"; "focusedCellChange": "focusedCellChange"; }, never, never, true, never>;
}
