import { AnimationBuilder } from '@angular/animations'; import { ChangeDetectorRef, ComponentFactoryResolver, ElementRef, EventEmitter, Injector, OnDestroy, OnInit, Renderer2, TemplateRef, ViewContainerRef } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { I18nService } from 'ng-devui/i18n'; import { DateConverter, DevConfigService } from 'ng-devui/utils'; import { Observable } from 'rxjs'; import { SelectDateChangeEventArgs, SelectDateChangeReason } from './date-change-event-args.model'; import { DatePickerConfigService as DatePickerConfig } from './date-picker.config.service'; import * as i0 from "@angular/core"; export declare class DatepickerDirective implements OnInit, OnDestroy, ControlValueAccessor { private elementRef; private viewContainerRef; private componentFactoryResolver; private renderer2; private injector; private datePickerConfig; private i18n; private builder; private cdr; private devConfigService; private doc; locale: string; cssClass: string; disabled: boolean; mode: 'year' | 'month' | 'date'; dateConverter: DateConverter; yearNumber: number; direction: 'up' | 'down'; customViewTemplate: TemplateRef; autoOpen: boolean; showAnimation: boolean; selectedDateChange: EventEmitter; selectedDate: Date; private _isOpen; _dateConfig: any; private _dateFormat; private _maxDate; private _minDate; private _showTime; private cmpRef; private player; private valueChanges; private userInputSubscription; private i18nSubscription; private i18nLocale; document: Document; private onChange; private onTouched; set isOpen(val: boolean); get isOpen(): boolean; set showTime(showTime: boolean); get showTime(): boolean; set dateConfig(dateConfig: any); get dateConfig(): any; set dateFormat(dateFormat: string); get dateFormat(): string; set maxDate(date: Date | any); get maxDate(): Date | any; set minDate(date: Date | any); get minDate(): Date | any; constructor(elementRef: ElementRef, viewContainerRef: ViewContainerRef, componentFactoryResolver: ComponentFactoryResolver, renderer2: Renderer2, injector: Injector, datePickerConfig: DatePickerConfig, i18n: I18nService, builder: AnimationBuilder, cdr: ChangeDetectorRef, devConfigService: DevConfigService, doc: any); onBlur($event: any): void; checkDateConfig(dateConfig: any): boolean; ngOnInit(): void; writeValue(obj: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; registerInputEvent(): Observable; private setI18nText; private applyPopupStyling; hide(): void; private writeModelValue; show(): void; toggle(clickShow?: boolean): void; private fillPopupData; onDocumentClick: ($event: any) => void; clearAll(reason?: SelectDateChangeReason): void; private popIn; private popOut; private playAnimation; private transUserInputToDatepicker; validateDate(value: string): boolean; resetValue(): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }