import { EventEmitter, ElementRef, OnDestroy, TemplateRef, OnChanges, SimpleChanges, AfterViewChecked } from '@angular/core'; export declare class DatePicker implements OnDestroy, OnChanges, AfterViewChecked { protected elementRef: ElementRef; private static datePickerCount; /** * Select calendar range mode */ range: boolean; /** * Format of date * * For reference: https://flatpickr.js.org/formatting/ */ dateFormat: string; /** * Date picker label. */ label: string | TemplateRef; /** * Label for date range selector. */ rangeLabel: string; /** * Sets the placeholder text. */ placeholder: string; /** * Sets the pattern to follow. */ pattern: string; /** * Date picker id. */ id: string; /** * Sets the value. */ value: (Date | string)[]; /** * Set to `true` to disable the `Datepicker` */ disabled: boolean; /** * Set to `true` to display invalid state. */ invalid: boolean; /** * Feedback message to display when `Datepicker` is invalid. */ invalidText: string | TemplateRef; /** * Skeleton state. */ skeleton: boolean; /** * Array of date picker plugins. */ plugins: any[]; /** * Flatpickr options */ flatpickrOptions: any; /** * Emits event notifying other classes of a change. */ valueChange: EventEmitter; protected _value: any[]; protected _flatpickrOptions: { allowInput: boolean; }; protected flatpickrBaseOptions: { mode: string; dateFormat: string; locale: import("flatpickr/dist/types/locale").CustomLocale; plugins: any[]; onOpen: () => void; value: (string | Date)[]; }; protected flatpickrInstance: any; constructor(elementRef: ElementRef); ngOnChanges(changes: SimpleChanges): void; ngAfterViewChecked(): void; onFocus(): void; /** * Writes a value from the model to the component. Expects the value to be `null` or `(Date | string)[]` * @param value value received from the model */ writeValue(value: (Date | string)[]): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; onTouched: () => any; propagateChange: (_: any) => void; /** * Cleans up our flatpickr instance */ ngOnDestroy(): void; /** * Handles the `valueChange` event from the primary/single input */ onValueChange(event: string): void; /** * Handles the `valueChange` event from the range input */ onRangeValueChange(event: string): void; /** * Carbon uses a number of specific classnames for parts of the flatpickr - this idempotent method applies them if needed. */ protected updateClassNames(): void; /** * Applies the given date value array to both the flatpickr instance and the `input`(s) * @param dates the date values to apply */ protected setDateValues(dates: (Date | string)[]): void; protected doSelect(selectedValue: (Date | string)[]): void; protected didDateValueChange(currentValue: any, previousValue: any): boolean; /** * More advanced checking of the loaded state of flatpickr */ protected isFlatpickrLoaded(): boolean; }