import { DateTimeHelperService } from '@farris/ui-common/date'; import { OnInit, EventEmitter, SimpleChanges, ElementRef, OnChanges, Injector, ViewContainerRef, OnDestroy, AfterViewInit } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { FarrisDatePickerDirective } from './farris-datepicker.input'; import { IMyOptions, IMyDate, IMyDateModel, IMyShortcuts } from './interfaces/public-api'; import { ShowType } from './enums/public-api'; import { UtilService, DefaultConfigService, DatepickerLocaleService } from './services/public-api'; import { LocaleService } from '@farris/ui-locale'; import { MultiSelectedOrderBy, ViewType } from './interfaces/my-options.interface'; import { DynamicData } from './interfaces/dynamic-data-type.interface'; export declare class FarrisDatepickerComponent implements OnInit, ControlValueAccessor, OnChanges, OnDestroy, AfterViewInit { private el; private utilService; private defaultConfigService; private injector; cls: string; viewType: ViewType; disabled: boolean; readonly: boolean; editable: boolean; dateRange: boolean; showTime: boolean; hourStep: number; minuteStep: number; secondStep: number; showType: ShowType; locale: string; dateFormat: string; useDefault: boolean; returnType: 'Object' | 'Date' | 'String'; returnFormat: string; placeholder: string; beginPlaceholder: string; endPlaceholder: string; /** 输入值变化后关闭选择面板。 默认为 true */ whenValueChangedThenCloseSelectorPanel: boolean; minDate: any; maxDate: any; highlightDates: Array; disableDateRangesBegin: IMyDate; disableDateRangesEnd: IMyDate; disableDates: Array; disableWeekdays: Array; markDates: Array; markDatesColor: string; showWeekNumbers: boolean; isMarkWeekends: boolean; markWeekendsColor: string; dateRangeDatesDelimiter: string; shortcuts: Array; monthRangeValue: number; beginValue: string | Date; endValue: string | Date; /** * 启用动态日期值设置,默认 false */ enableDynamic: boolean; /** 允许设置过去最大天数 */ previousMaxDays: number; /** 允许设置未来最大天数 */ futureMaxDays: number; showClear: boolean; /** 显示今天,本年,本月 按钮 */ showPresent: boolean; /** 每周起始日 可选值 mo:周一 su: 周日,默认为 mo周一 */ firstDayOfWeek: 'mo' | 'su'; clear: EventEmitter<{}>; valueChange: EventEmitter<{}>; focus: EventEmitter<{}>; blur: EventEmitter<{}>; beginValueChange: EventEmitter<{}>; endValueChange: EventEmitter<{}>; PrevFocus: EventEmitter<{}>; NextFocus: EventEmitter<{}>; close: EventEmitter<{}>; /** 启用多选,默认 false */ multiSelect: boolean; separator: string; /** 允许选择日期的个数; 0 无限 */ maxSelected: number; /** 选中日期的排序方式,默认为 'none' 即不排序 */ selectedOrderBy: MultiSelectedOrderBy; dp: FarrisDatePickerDirective; clearIcon: ElementRef; calendarRef: ViewContainerRef; PFocus: ElementRef; NFocus: ElementRef; dateInput: ElementRef; private cRef; private _timeFormat; private _value; _beginValue: string; _endValue: string; private _initFinished; private _timer; private _dateFormat; private _minDate; private _maxDate; value: any; selectedWeek: any; dateOpts: IMyOptions; defaultConfig: IMyOptions; localDateOpts: IMyOptions; localeConfig: DatepickerLocaleService; localeService: LocaleService; beginFocus: boolean; endFocus: boolean; totalFocus: boolean; originTime: any; isActiveTip: boolean; private vcRef; private cfr; private renderer; private datePicekrService; _realValue: any; private _realRangeValue; private notifySer; private formatedValue; dtService: DateTimeHelperService; private _applicationRef; private _ngControl; _updateOn: string; private _valueChangeEmitted; private _mousedownEvent; private closeCalendarHandler; private cdr; /** 缓存通过点击日历的数据,用于的格式化格式不标准时,格式化数据。 */ private _SELECT_DATE_; dynamicText: string; dynamicValue: DynamicData; dynamicValueChange: EventEmitter<{}>; dynamicViewChanged: EventEmitter<{}>; onModelChange: (obj: any) => void; onModelTouched: () => void; private commonUtils; private overLayService; constructor(el: ElementRef, utilService: UtilService, defaultConfigService: DefaultConfigService, injector: Injector); ngOnInit(): void; private initPlaceholder; private mergeDateOptions; ngOnChanges(changes: SimpleChanges): void; ngAfterViewInit(): void; ngOnDestroy(): void; onMouseEnter(event: any): void; onMouseLeave(event: any): void; onBlur(e: any): void; onFocus(e: any): void; onInputClick(event: any): void; private registerMouseDownHandle; setDefaultValue(): void; clearDynamicDate($event?: any): void; clearDate($event?: MouseEvent): void; onSingleInputNgModelChange($event: any): void; onNgModelChange(value: any, realdate?: any, emitValueChange?: boolean): void; private _onModelChange; private getRealReturnFormatted; onDateRangeInputBlur(event: any): void; openCalendar(): void; closeSelector(reason?: number): void; toggleCalendar(close: boolean, emit?: boolean): void; onDateChanged(event: IMyDateModel): void; private checkMultiSelectedOption; buildOptions(): any; dateTo(d: any): string; dateFrom(str: any, ignorRange?: boolean): string | Date; transform(value: any, _fmt?: string): any; setValue(value: string): void; updateValue(value: string): void; getValueByType(val: any): any; writeValue(val: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; setDisabledState?(isDisabled: boolean): void; onPrevFocus(value: boolean): void; onNextFocus(value: boolean): void; private _convert2dateString; private _isValid; private _isValid2; private multiSelectedChanged; onRemoveDate(d: { value: string; index: number; }): void; }