import { ElementRef, ChangeDetectorRef, EventEmitter, OnDestroy, ViewContainerRef, TemplateRef, Injector, OnChanges, SimpleChanges, AfterViewInit } from '@angular/core'; import { Overlay } from '@angular/cdk/overlay'; import { Directionality } from '@angular/cdk/bidi'; import { TemplatePortal } from '@angular/cdk/portal'; import { NgControl, ControlValueAccessor } from '@angular/forms'; import { TemplateLayerRef, LayerConfig } from '../layer/index'; import { FormControlMaterialInput } from '../material-design-inputs/index'; import { FormControlHost, FormControlErrorStateAgent } from '../form-control-group/index'; import { VCLDateRange, VCLDateAdapter, VCLDateAdapterParseFormats } from '../dateadapter/index'; import { InputDirective } from '../input/index'; import { VCLCalendarDateModifier } from '../calendar/index'; export declare type DatepickerPick = 'date' | 'month' | 'time'; export declare class DatepickerComponent extends TemplateLayerRef> implements OnDestroy, FormControlMaterialInput, ControlValueAccessor, OnChanges, AfterViewInit { private _dir; private overlay; protected viewContainerRef: ViewContainerRef; private elementRef; private cdRef; private dateAdapter; ngControl?: NgControl; private formControlHost?; private _errorStateAgent?; constructor(injector: Injector, _dir: Directionality, overlay: Overlay, viewContainerRef: ViewContainerRef, elementRef: ElementRef, cdRef: ChangeDetectorRef, dateAdapter: VCLDateAdapter, ngControl?: NgControl, formControlHost?: FormControlHost, _errorStateAgent?: FormControlErrorStateAgent); private stateChangedEmitter; private _dropdownOpenedSub?; private _valueChangeSub?; private _disabled; private _cvaDisabled; private uniqueId; input: InputDirective; _hostClasses: boolean; templateRef: TemplateRef; placeholder?: string; id?: string; value: VCLDate | undefined; showWeekOfTheYear?: boolean; dateModifier?: VCLCalendarDateModifier[]; valueChange: EventEmitter; viewDate?: VCLDate; pick: DatepickerPick; afterClose: EventEmitter; errorStateAgent?: FormControlErrorStateAgent; readonly stateChanged: import("rxjs").Observable; readonly isFocused: boolean; readonly isDisabled: boolean; readonly isLabelFloating: boolean; readonly parseFormat: VCLDateAdapterParseFormats; controlType: string; materialModifierClass: any; readonly elementId: string; readonly hasError: boolean; onFocus(): void; onButtonClick(): void; onBlur(): void; createPortal(): TemplatePortal; protected getLayerConfig(): LayerConfig; ngAfterViewInit(): void; updateInput(): void; onLabelClick(event: Event): void; protected afterAttached(): void; onSelect(date: VCLDate): void; protected afterDetached(date: any): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; /** * things needed for ControlValueAccessor-Interface */ onChange: (_: any) => void; onTouched: () => void; writeValue(date: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; setDisabledState?(isDisabled: boolean): void; }