import { EventEmitter, VNode } from "../../stencil-public-runtime";
import { InteractiveComponent } from "../../utils/interactive";
import { Scale } from "../interfaces";
export declare class DatePickerDay implements InteractiveComponent {
  el: HTMLCalciteDatePickerDayElement;
  /** Day of the month to be shown. */
  day: number;
  /**
   * The DateTimeFormat used to provide screen reader labels.
   *
   * @internal
   */
  dateTimeFormat: Intl.DateTimeFormat;
  /** When `true`, interaction is prevented and the component is displayed with lower opacity. */
  disabled: boolean;
  /** Date is in the current month. */
  currentMonth: boolean;
  /**  When `true`, the component is selected. */
  selected: boolean;
  /** Date is currently highlighted as part of the range */
  highlighted: boolean;
  /** When `true`, activates the component's range mode to allow a start and end date. */
  range: boolean;
  /**
   * When `true`, highlight styling for edge dates is applied.
   *
   * @internal
   */
  rangeEdge: "start" | "end" | undefined;
  /** Date is the start of date range */
  startOfRange: boolean;
  /** Date is the end of date range */
  endOfRange: boolean;
  /** Date is being hovered and within the set range */
  rangeHover: boolean;
  /** When `true`, the component is active. */
  active: boolean;
  /** Specifies the size of the component. */
  scale: Scale;
  /** The component's value. */
  value: Date;
  onClick: () => void;
  keyDownHandler: (event: KeyboardEvent) => void;
  pointerOverHandler(): void;
  /**
   * Emitted when user selects day
   */
  calciteDaySelect: EventEmitter<void>;
  /**
   * Emitted when user hovers over a day
   *
   * @internal
   */
  calciteInternalDayHover: EventEmitter<void>;
  componentWillLoad(): void;
  render(): VNode;
  connectedCallback(): void;
  componentDidRender(): void;
  disconnectedCallback(): void;
  isTabbable(): boolean;
  private parentDatePickerEl;
}
