import { AfterContentInit, ChangeDetectorRef, EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { SelectMode } from '../../classes/datepicker-date-time.class'; import { CalendarCell, DatepickerCalendarBodyComponent } from '../calendar-body/datepicker-calendar-body.component'; import { DatepickerDateTimeAdapter } from '../../adapters/datepicker-date-time.adapter'; import { DatepickerDateTimeFormats } from '../../classes/datepicker-date-time-format.class'; import * as i0 from "@angular/core"; export declare class DatepickerCalendarYearViewComponent implements OnInit, AfterContentInit, OnDestroy { private cdRef; private dateTimeAdapter; private dateTimeFormats; /** * The select mode of the picker; * */ private _selectMode; get selectMode(): SelectMode; set selectMode(val: SelectMode); /** The currently selected date. */ private _selected; get selected(): T | null; set selected(value: T | null); private _selecteds; get selecteds(): T[]; set selecteds(values: T[]); private _pickerMoment; get pickerMoment(): T; set pickerMoment(value: T); /** * A function used to filter which dates are selectable * */ private _dateFilter; get dateFilter(): (date: T) => boolean; set dateFilter(filter: (date: T) => boolean); /** The minimum selectable date. */ private _minDate; get minDate(): T | null; set minDate(value: T | null); /** The maximum selectable date. */ private _maxDate; get maxDate(): T | null; set maxDate(value: T | null); private readonly monthNames; private _months; get months(): CalendarCell[][]; get activeCell(): number; get isInSingleMode(): boolean; get isInRangeMode(): boolean; private localeSub; private initiated; todayMonth?: number; /** * An array to hold all selectedDates' month value * the value is the month number in current year * */ selectedMonths: number[]; /** * Callback to invoke when a new month is selected * */ readonly change: EventEmitter; /** * Emits the selected year. This doesn't imply a change on the selected date * */ readonly monthSelected: EventEmitter; /** Emits when any date is activated. */ readonly pickerMomentChange: EventEmitter; /** Emits when use keyboard enter to select a calendar cell */ readonly keyboardEnter: EventEmitter; /** The body of calendar table */ calendarBodyElm?: DatepickerCalendarBodyComponent; get datepickerDTCalendarView(): boolean; constructor(cdRef: ChangeDetectorRef, dateTimeAdapter: DatepickerDateTimeAdapter, dateTimeFormats: DatepickerDateTimeFormats); ngOnInit(): void; ngAfterContentInit(): void; ngOnDestroy(): void; /** * Handle a calendarCell selected */ selectCalendarCell(cell: CalendarCell): void; /** * Handle a new month selected */ private selectMonth; /** * Handle keydown event on calendar body */ handleCalendarKeydown(event: KeyboardEvent): void; /** * Generate the calendar month list * */ private generateMonthList; /** * Creates an CalendarCell for the given month. */ private createMonthCell; /** * Check if the given month is enable */ private isMonthEnabled; /** * Gets the month in this year that the given Date falls on. * Returns null if the given Date is in another year. */ private getMonthInCurrentYear; /** * Set the selectedMonths value * In single mode, it has only one value which represent the month the selected date in * In range mode, it would has two values, one for the month the fromValue in and the other for the month the toValue in * */ private setSelectedMonths; /** * Check the given dates are in the same year */ private hasSameYear; /** * Get a valid date object */ private getValidDate; private focusActiveCell; static ɵfac: i0.ɵɵFactoryDeclaration, [null, { optional: true; }, { optional: true; }]>; static ɵcmp: i0.ɵɵComponentDeclaration, "rad-ui-datepicker-calendar-year-view", never, { "selectMode": "selectMode"; "selected": "selected"; "selecteds": "selecteds"; "pickerMoment": "pickerMoment"; "dateFilter": "dateFilter"; "minDate": "minDate"; "maxDate": "maxDate"; }, { "change": "change"; "monthSelected": "monthSelected"; "pickerMomentChange": "pickerMomentChange"; "keyboardEnter": "keyboardEnter"; }, never, never, false, never>; }