import { OnInit, EventEmitter } from '@angular/core'; import { AbstractFormControl } from '../abstract-form-control'; import { FormControl } from '@angular/forms'; export declare class CalendarItem { date: Date; format: string; disabled: boolean; active: boolean; selected: boolean; constructor(date: Date, format: string, disabled?: boolean, active?: boolean, selected?: boolean); } export declare class CalendarDay extends CalendarItem { events?: any[]; constructor(date: Date, disabled?: boolean, active?: boolean, selected?: boolean); } export declare class CalendarMonth extends CalendarItem { constructor(date: Date, active?: boolean, selected?: boolean); } export declare type CalendarView = 'month' | 'year' | 'week'; export declare class CalendarComponent extends AbstractFormControl implements OnInit { formModel?: FormControl; tabindex: number; multiselect: boolean; selected: Date | Date[] | null; selectedChanged: EventEmitter; view: CalendarView; viewDate: Date; calendarItems: CalendarDay[] | CalendarMonth[]; static isSameDay(first: Date, second: Date): boolean; static isSameMonth(first: Date, second: Date): boolean; constructor(); ngOnInit(): void; changeMonth(event: MouseEvent): void; prevMonth(event: MouseEvent): void; nextMonth(event: MouseEvent): void; prevYear(event: MouseEvent): void; nextYear(event: MouseEvent): void; selectDay(day: CalendarDay): void; selectMonth(month: CalendarMonth): void; protected updateCalendarView(view: CalendarView): void; protected getCalendarDays(): CalendarDay[]; protected getCalendarMonths(): CalendarMonth[]; private updateCalendarItems; }