import { EventEmitter, OnInit, OnChanges, SimpleChanges, ElementRef, OnDestroy } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { Hours, Seconds, Minutes, Day, Month, Year, DateConfig, Time, DatePickerModel } from './date-utils'; export declare class DateComponent implements ControlValueAccessor, OnInit, OnChanges, OnDestroy { hoursListWrap: ElementRef; minutesListWrap: ElementRef; secondsListWrap: ElementRef; uiChange: EventEmitter; size: string; placeholder: string; forId: string; name: string; arrowIconClassName: string; displayFormat: string; format: string; value: string | number | Date; maxDate: string | number | Date; minDate: string | number | Date; minTime: string; maxTime: string; disabled: boolean; readonly: boolean; get time(): string; config: DateConfig; focus: boolean; open: boolean; minDateInstance: Date; maxDateInstance: Date; minTimeInstance: Time; maxTimeInstance: Time; systemDate: Date; pickerDate: Date; startYearIndex: number; years: Year[]; months: Month[]; dayGroups: Day[][]; hours: Hours[]; minutes: Minutes[]; seconds: Seconds[]; displayValue: any; oldModel: DatePickerModel; model: DatePickerModel; private onChange; private onTouched; private days; private animateId; constructor(arrowIcon: string); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; setupPicker(): void; reset(): void; toggle(): void; onEscape(): void; updateView(): void; switchModel(newModel: DatePickerModel): void; check(): void; writeValue(value: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; setDisabledState(isDisabled: boolean): void; toPreviousYear(): void; toNextYear(): void; toPrevMonth(): void; toNextMonth(): void; updateYearsByStart(year: number): void; updatePickerByYear(year: number): void; updatePickerByMonth(month: number): void; updatePickerByDay(day: Day): void; updatePickerByHours(hours: number): void; updatePickerByMinutes(minutes: number): void; updatePickerBySeconds(seconds: number): void; private update; private timePickerScrollToCenter; private updateSecondsList; private updateMinutesList; private updateHoursList; private updateDayList; private updateMonthList; private updateYearList; private canSelectSeconds; private canSelectMinutes; private canSelectHours; private canSelectDay; private canSelectMonth; private canSelectYear; private getNewDateByTime; private insurePickerDateBetweenMinAndMax; }