import { ChangeDetectorRef, ElementRef, OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef, EventEmitter } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { UpdateHostClassService as UpdateCls } from './services/update-host-class.service'; import { TimeValueAccessorDirective } from './time-value-accessor.directive'; import { TimeHolder } from './time-holder'; export declare type TimePickerUnit = 'hour' | 'minute' | 'second' | '12-hour'; export declare class TimePickerPanelComponent implements ControlValueAccessor, OnInit, OnDestroy, OnChanges { element: ElementRef; private updateCls; cdr: ChangeDetectorRef; private _hourStep; private _minuteStep; private _secondStep; private unsubscribe$; private onChange; private onTouch; private _format; private _disabledHours; private _disabledMinutes; private _disabledSeconds; private _defaultOpenValue; private _opened; private _allowEmpty; private _value; prefixCls: string; time: TimeHolder; hourEnabled: boolean; minuteEnabled: boolean; secondEnabled: boolean; enabledColumns: number; hourRange: ReadonlyArray<{ index: number; disabled: boolean; }>; minuteRange: ReadonlyArray<{ index: number; disabled: boolean; }>; secondRange: ReadonlyArray<{ index: number; disabled: boolean; }>; use12HoursRange: ReadonlyArray<{ index: number; value: string; }>; timeValueAccessorDirective: TimeValueAccessorDirective; hourListElement: ElementRef; minuteListElement: ElementRef; secondListElement: ElementRef; use12HoursListElement: ElementRef; inDatePicker: boolean; addOn: TemplateRef; hideDisabledOptions: boolean; clearText: string; placeholder: string; /** 当value 为空时选中当前时间,默认为 true */ selectCurrentTimeWhenNull: boolean; showHeader: boolean; use12Hours: boolean; allowEmpty: boolean; opened: boolean; defaultOpenValue: Date; disabledHours: () => number[]; disabledMinutes: (hour: number) => number[]; disabledSeconds: (hour: number, minute: number) => number[]; panelWidth: number; format: string; hourStep: number; minuteStep: number; secondStep: number; value: string; valueChange: EventEmitter; private _use12Hours; timePanelTitle: any; constructor(element: ElementRef, updateCls: UpdateCls, cdr: ChangeDetectorRef); ngOnInit(): void; ngAfterViewInit(): void; ngOnDestroy(): void; ngOnChanges(changes: SimpleChanges): void; selectInputRange(): void; buildHours(): void; buildMinutes(): void; buildSeconds(): void; build12Hours(): void; buildTimes(): void; selectHour(event: MouseEvent, hour: { index: number; disabled: boolean; }): void; selectMinute(event: MouseEvent, minute: { index: number; disabled: boolean; }): void; selectSecond(event: MouseEvent, second: { index: number; disabled: boolean; }): void; select12Hours(event: MouseEvent, value: { index: number; value: string; }): void; scrollToSelected(instance: HTMLElement, index: number, duration: number, unit: TimePickerUnit): void; translateIndex(index: number, unit: TimePickerUnit): number; scrollTo(element: HTMLElement, to: number, duration: number): void; calcIndex(array: number[], index: number): number; protected changed(): void; protected touched(): void; private setClassMap; isSelectedHour(hour: { index: number; disabled: boolean; }): boolean; isSelectedMinute(minute: { index: number; disabled: boolean; }): boolean; isSelectedSecond(second: { index: number; disabled: boolean; }): boolean; isSelected12Hours(value: { index: number; value: string; }): boolean; initPosition(): void; private checkMinutes; private checkSeconds; private checkDate; writeValue(value: string): void; registerOnChange(fn: (value: string) => void): void; registerOnTouched(fn: () => void): void; hmsCls(v: any, type: any): string; trackByItems: (index: any, item: any) => any; }