/** * * carbon-angular v0.0.0 | datepicker.component.d.ts * * Copyright 2014, 2026 IBM * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { EventEmitter, ElementRef, OnDestroy, TemplateRef, OnChanges, SimpleChanges, AfterViewChecked, AfterViewInit, OnInit, SimpleChange } from "@angular/core"; import { Options } from "flatpickr/dist/types/options"; import { DatePickerInput } from "carbon-components-angular/datepicker-input"; import { I18n } from "carbon-components-angular/i18n"; import * as i0 from "@angular/core"; /** * Get started with importing the module: * * ```typescript * import { DatePickerModule } from 'carbon-components-angular'; * ``` * * [See demo](../../?path=/story/components-date-picker--single) */ export declare class DatePicker implements OnInit, OnDestroy, OnChanges, AfterViewChecked, AfterViewInit { protected elementRef: ElementRef; protected i18n: I18n; private static datePickerCount; /** * Select calendar range mode */ range: boolean; /** * Format of date * * For reference: https://flatpickr.js.org/formatting/ */ dateFormat: string; /** * Language of the flatpickr calendar. * * For reference of the possible locales: * https://github.com/flatpickr/flatpickr/blob/master/src/l10n/index.ts */ language: string; label: string | TemplateRef; helperText: string | TemplateRef; rangeHelperText: string | TemplateRef; rangeLabel: string; placeholder: string; /** * Aria label added to datepicker's calendar container. */ ariaLabel: string; /** * The pattern for the underlying input element */ inputPattern: string; id: string; set value(v: (Date | string)[]); get value(): (Date | string)[]; /** * @deprecated since v5 - Use `cdsLayer` directive instead * Set to `"light"` to apply the light style */ theme: "light" | "dark"; disabled: boolean; readonly: boolean; /** * Set to `true` to display the invalid state. */ invalid: boolean; /** * Value displayed if datepicker is in an invalid state. */ invalidText: string | TemplateRef; /** * Set to `true` to show a warning (contents set by warningText) */ warn: boolean; /** * Sets the warning text */ warnText: string | TemplateRef; size: "sm" | "md" | "lg"; /** * Set to `true` to display the invalid state for the second datepicker input. */ rangeInvalid: boolean; /** * Value displayed if the second datepicker input is in an invalid state. */ rangeInvalidText: string | TemplateRef; /** * Set to `true` to show a warning in the second datepicker input (contents set by rangeWarningText) */ rangeWarn: boolean; /** * Sets the warning text for the second datepicker input */ rangeWarnText: string | TemplateRef; skeleton: boolean; plugins: any[]; set flatpickrOptions(options: Partial); get flatpickrOptions(): Partial; input: DatePickerInput; rangeInput: DatePickerInput; valueChange: EventEmitter; /** * We are overriding onClose event even if users pass it via flatpickr options * Emits an event when date picker closes */ onClose: EventEmitter; protected _value: any[]; protected _flatpickrOptions: Partial; protected flatpickrBaseOptions: { mode: string; dateFormat: string; plugins: any[]; onOpen: () => void; onClose: (date: any) => void; onDayCreate: (_dObj: any, _dStr: any, _fp: any, dayElem: any) => void; nextArrow: string; prevArrow: string; value: (string | Date)[]; }; protected flatpickrInstance: any; constructor(elementRef: ElementRef, i18n: I18n); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngAfterViewInit(): void; ngAfterViewChecked(): void; onFocus(): void; onFocusOut(): 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; /** * `ControlValueAccessor` method to programmatically disable the DatePicker. * * ex: `this.formGroup.get("myDatePicker").disable();` * * @param isDisabled `true` to disable the DatePicker */ setDisabledState(isDisabled: boolean): 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; /** * Handles opening the calendar "properly" when the calendar icon is clicked. */ openCalendar(datepickerInput: DatePickerInput): void; protected updateCalendarListeners(): void; /** * Handles the initialization of event listeners for the datepicker input and range input fields. */ protected addInputListeners(): void; /** * Resets the flatpickr instance while keeping the date values (or updating them if newDates is provided) * * Used to pick up input changes or locale changes. * * @param newDates An optional SimpleChange of date values */ protected resetFlatpickrInstance(newDates?: SimpleChange): void; /** * Carbon uses a number of specific classnames for parts of the flatpickr - this idempotent method applies them if needed. */ protected updateClassNames(): void; protected updateAttributes(): 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 preventCalendarClose: (event: any) => any; 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; /** * Right arrow HTML passed to flatpickr */ protected rightArrowHTML(): string; /** * Left arrow HTML passed to flatpickr */ protected leftArrowHTML(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }