import { OnChanges, OnInit, EventEmitter, TemplateRef, ChangeDetectorRef, SimpleChanges, ElementRef } from '@angular/core'; import { Subject } from 'rxjs'; export declare class PoCalendarWrapperComponent implements OnInit, OnChanges { private readonly poCalendarService; private readonly poCalendarLangService; private readonly poDate; readonly cdr: ChangeDetectorRef; readonly elementRef: ElementRef; value: any; mode: 'day' | 'month' | 'year'; responsive: boolean; partType: 'start' | 'end'; range: boolean; activateDate: Date; selectedValue: any; minDate: any; maxDate: any; hoverValue: Date; size: string; hideTodayButton: boolean; hasPresets: boolean; headerTemplate?: TemplateRef; private _locale; set locale(value: string); get locale(): string; headerChange: EventEmitter; selectDate: EventEmitter; readonly hoverDateSource: Subject; hoverDate: import("rxjs").Observable; closeCalendar: EventEmitter; currentYear: number; displayYear: number; displayMonthNumber: number; displayMonth: string; displayDays: Array; displayWeekDays: Array; displayMonths: Array; displayDecade: Array; displayStartDecade: number; displayFinalDecade: number; displayToday: string; displayToClean: string; today: Date; comboMonthsOptions: Array<{ label: string; value: number; }>; comboYearsOptions: Array<{ label: string; value: number; }>; comboKey: number; focusedDayIndex: number; templateContext: any; protected currentMonthNumber: number; protected lastDisplay: string; get monthLabel(): any; get yearLabel(): any; get isDayVisible(): boolean; get isMonthVisible(): boolean; get isYearVisible(): boolean; get isStartPart(): boolean; get isEndPart(): boolean; private get date(); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; private getDateToUse; private initializeData; private setupOptions; onHeaderDateChange(event: { year: number; month: number; }): void; private updateTemplateContext; updateDate(year: number, month: number, comboComponent?: any): void; onComboBlur(comboComponent?: any): void; private handleComboBlur; private syncInputValue; private applySelectedValue; private ensureValidDisplay; private isMonthInvalid; private isYearInvalid; private updateDisplay; private setInitialFocusedDay; private ensureValidFocusedDay; getDayTabIndex(day: Date, index: number): number; onNextMonth(): void; onPreviousMonth(): void; updateYear(value: number): void; onSelectMonth(year: number, month: number): void; onSelectYear(year: number, month: number): void; selectDisplayMode(mode: 'month' | 'day' | 'year'): void; onSelectDate(date: Date): void; onMouseEnter(day: any): void; onMouseLeave(): void; onSelectToday(): void; onFooterCloseCalendar(): void; onHostKeydown(event: KeyboardEvent): void; private restoreOriginalDisplay; onDayKeydown(event: KeyboardEvent, day: Date, index: number): void; private isSelectionKey; private handleSelectKey; private handleNavigationKey; private getNextNavigationIndex; private getFirstAvailableDayInWeek; private getLastAvailableDayInWeek; private getNavigationDirection; private findNextAvailableDay; private handlePageNavigation; private hasAvailableDaysInMonth; private applyPageNavigation; private focusElement; private focusOnSameDayAndWeek; private queryDayElement; private findTargetDayIndex; private isValidCalendarDate; onClear(): void; getDayBackgroundColor(date: Date): string; getDayForegroundColor(date: Date): string; getBackgroundColor(displayValue: number, propertyValue: number): "po-calendar-box-background-selected" | "po-calendar-box-background"; getForegroundColor(displayValue: number, propertyValue: number): "po-calendar-box-foreground-selected" | "po-calendar-box-foreground"; isTodayUnavailable(): boolean; isDayDisabled(date: Date): boolean; private getDayColor; private getRangeColor; getColorForDate(date: Date, type: 'background' | 'foreground'): string; getColorForDefaultDate(date: Date, type: 'background' | 'foreground'): string; getColorForToday(date: Date, type: 'background' | 'foreground'): string; getColorForDateRange(date: Date, type: 'background' | 'foreground'): string; getColorState(date: Date, prefix: string, state: string): string; private equalsDate; private getDecadeArray; private updateDecade; private addAllYearsInDecade; trackByYear(index: number, year: number): number; trackByMonth(index: number, month: string): number; trackByDay(index: number, day: Date): string; trackByWeekDay(index: number, weekDay: string): string; }