import { ComponentInterface, EventEmitter } from '../../../stencil-public-runtime';
import { Loggable, LogInstance } from '../../../utils/log';
import { BalConfigObserver, BalConfigState } from '../../../interfaces';
import { BalAriaForm, BalAriaFormLinking } from '../../../utils/form';
export declare class InputDate implements ComponentInterface, Loggable, BalConfigObserver, BalAriaFormLinking {
  private inputId;
  private inheritedAttributes;
  private maskAdapter;
  nativeInput: HTMLInputElement;
  log: LogInstance;
  el: HTMLElement;
  focused: boolean;
  isGrouped: boolean;
  ariaForm: BalAriaForm;
  createLogger(log: LogInstance): void;
  name: string;
  invalid: boolean;
  required: boolean;
  disabled: boolean;
  readonly: boolean;
  placeholder?: string;
  clickable: boolean;
  autocomplete: BalProps.BalInputAutocomplete;
  hasIconRight: boolean;
  value: string | undefined;
  inputValue: string | undefined;
  initialValue: string;
  valueChanged(newValue: string | undefined, oldValue: string | undefined): void;
  balKeyPress: EventEmitter<BalEvents.BalInputDateKeyPressDetail>;
  balChange: EventEmitter<BalEvents.BalInputDateChangeDetail>;
  balInput: EventEmitter<BalEvents.BalInputDateInputDetail>;
  balBlur: EventEmitter<BalEvents.BalInputDateBlurDetail>;
  balFocus: EventEmitter<BalEvents.BalInputDateFocusDetail>;
  connectedCallback(): void;
  componentDidLoad(): void;
  componentWillRender(): void;
  configChanged(config: BalConfigState): Promise<void>;
  resetHandler(event: UIEvent): void;
  listenOnClick(event: MouseEvent): void;
  setFocus(): Promise<void>;
  setBlur(): Promise<void>;
  getInputElement(): Promise<HTMLInputElement>;
  setAriaForm(ariaForm: BalAriaForm): Promise<void>;
  render(): any;
}
