import { AfterContentInit, EventEmitter, OnDestroy } from '@angular/core'; import { RealsoftCalendarBody } from './calendar-body'; import { DateRange, RealsoftCalendarCell, RealsoftCalendarCellClassFunction, RealsoftCalendarUserEvent } from './models'; import { DateAdapter } from './shared/date-adapter'; import * as i0 from "@angular/core"; export declare const yearsPerPage = 24; export declare const yearsPerRow = 4; export declare class RealsoftMultiYearView implements AfterContentInit, OnDestroy { private _changeDetectorRef; _dateAdapter: DateAdapter; private _dir; private _rerenderSubscription; private _selectionKeyPressed; private _activeDate; private _selectedDate; private _minDate; private _maxDate; _years: RealsoftCalendarCell[][]; _todayYear: number; _selectedYear: number | null; get activeDate(): D; set activeDate(value: D); get selectedDate(): DateRange | D | null; set selectedDate(value: DateRange | D | null); get minDate(): D | null; set minDate(value: D | null); get maxDate(): D | null; set maxDate(value: D | null); dateFilter: (date: D) => boolean; dateClass: RealsoftCalendarCellClassFunction; readonly selectedChange: EventEmitter; readonly yearSelected: EventEmitter; readonly activeDateChange: EventEmitter; _realsoftCalendarBody: RealsoftCalendarBody; constructor(...args: unknown[]); ngAfterContentInit(): void; ngOnDestroy(): void; _initializeDate(): void; _yearSelected(event: RealsoftCalendarUserEvent): void; _updateActiveDate(event: RealsoftCalendarUserEvent): void; _handleCalendarBodyKeydown(event: KeyboardEvent): void; _handleCalendarBodyKeyUp(event: KeyboardEvent): void; _getActiveCell(): number; /** Focuses the active cell after the microtask queue is empty. */ _focusActiveCell(): void; /** Focuses the active cell after change detection has run and the microtask queue is empty. */ _focusActiveCellAfterViewChecked(): void; private _getDateFromYear; private _generateCellForYear; private _shouldEnableYear; private _isRTL; private _setSelectedYear; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "realsoft-multi-year-view", ["realsoftMultiYearView"], { "activeDate": { "alias": "activeDate"; "required": false; }; "selectedDate": { "alias": "selectedDate"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "dateFilter": { "alias": "dateFilter"; "required": false; }; "dateClass": { "alias": "dateClass"; "required": false; }; }, { "selectedChange": "selectedChange"; "yearSelected": "yearSelected"; "activeDateChange": "activeDateChange"; }, never, never, true, never>; } export declare function isSameMultiYearView(dateAdapter: DateAdapter, date1: D, date2: D, minDate: D | null, maxDate: D | null): boolean; /** * When the multi-year view is first opened, the active year will be in view. * So we compute how many years are between the active year and the *slot* where our * "startingYear" will render when paged into view. */ export declare function getActiveOffset(dateAdapter: DateAdapter, activeDate: D, minDate: D | null, maxDate: D | null): number;