import { DateType, Languages } from '../date-picker/date.types';
/**
 * @exampleComponent limel-example-date-picker-datetime
 * @exampleComponent limel-example-date-picker-date
 * @exampleComponent limel-example-date-picker-time
 * @exampleComponent limel-example-date-picker-week
 * @exampleComponent limel-example-date-picker-month
 * @exampleComponent limel-example-date-picker-quarter
 * @exampleComponent limel-example-date-picker-year
 * @exampleComponent limel-example-date-picker-formatted
 * @exampleComponent limel-example-date-picker-programmatic-change
 * @exampleComponent limel-example-date-picker-composite
 * @exampleComponent limel-example-date-picker-custom-formatter
 */
export declare class DatePicker {
  /**
   * Set to `true` to disable the field.
   * Use `disabled` to indicate that the field can normally be interacted
   * with, but is currently disabled. This tells the user that if certain
   * requirements are met, the field may become enabled again.
   */
  disabled: boolean;
  /**
   * Set to `true` to make the field read-only.
   * Use `readonly` when the field is only there to present the data it holds,
   * and will not become possible for the current user to edit.
   */
  readonly: boolean;
  /**
   * Set to `true` to indicate that the current value of the date picker is
   * invalid.
   */
  invalid: boolean;
  /**
   * Text to display next to the date picker
   */
  label: string;
  /**
   * The placeholder text shown inside the input field, when the field is focused and empty
   */
  placeholder: string;
  /**
   * Optional helper text to display below the input field when it has focus
   */
  helperText: string;
  /**
   * Set to `true` to indicate that the field is required.
   */
  required: boolean;
  /**
   * The value of the field.
   */
  value: Date;
  /**
   * Type of date picker.
   */
  type: DateType;
  /**
   * Format to display the selected date in.
   */
  format: string;
  /**
   * Defines the localisation for translations and date formatting.
   * Property `format` customizes the localized date format.
   */
  language: Languages;
  /**
   * Custom formatting function. Will be used for date formatting.
   *
   * :::note
   * overrides `format` and `language`
   * :::
   */
  formatter?: (date: Date) => string;
  /**
   * Emitted when the date picker value is changed.
   */
  private change;
  private host;
  private internalFormat;
  private showPortal;
  private useNative;
  private nativeType;
  private nativeFormat;
  private textField;
  private datePickerCalendar;
  private portalId;
  private dateFormatter;
  constructor();
  componentWillLoad(): void;
  componentWillUpdate(): void;
  disconnectedCallback(): void;
  render(): any;
  private updateInternalFormatAndType;
  private nativeChangeHandler;
  private showCalendar;
  private preventBlurFromCalendarContainer;
  private hideCalendar;
  private fixFlatpickrFocusBug;
  private documentClickListener;
  private handleCalendarChange;
  private onInputClick;
  private handleInputElementChange;
  private pickerIsAutoClosing;
  private clearValue;
  private formatValue;
}
//# sourceMappingURL=date-picker.d.ts.map