import { EventEmitter } from '../../stencil-public-runtime';
export declare class Input {
  private inputId;
  private inputEl?;
  el: HTMLElement;
  /**
   * The name of the control, which is submitted with the form data.
   */
  name: string;
  /**
   * Defines the type of the input (text, number, email ...).
   */
  type: string;
  /**
   * Placeholder of the input
   */
  placeholder: string;
  /**
   * The tabindex of the control.
   */
  balTabindex: number;
  /**
   * Defines the max length of the value.
   */
  maxLength: number | undefined;
  /**
   * Defines the min length of the value.
   */
  minLength: number | undefined;
  /**
   * If `true` this component can be placed on dark background
   */
  inverted: boolean;
  /**
   * If `true` the input is readonly
   */
  readonly: boolean;
  /**
   * If `true` the input is disabled
   */
  disabled: boolean;
  /**
   * If `true` the input gets a clickable cursor style
   */
  clickable: boolean;
  /**
   * The autocomplete attribute specifies whether or not an input field should have autocomplete enabled.
   */
  autoComplete: boolean;
  /**
   * If `true` on mobile device the number keypad is active
   */
  numberKeyboard: boolean;
  /**
   * If `true` the input only allows numbers
   */
  onlyNumbers: boolean;
  /**
   * The value of the control.
   */
  value: string;
  protected valueChanged(): void;
  /**
   * Emitted when a keyboard input occurred.
   */
  balInput: EventEmitter<string>;
  private onInput;
  /**
   * Emitted when a keyboard input occurred.
   */
  balBlur: EventEmitter<FocusEvent>;
  /**
   * Emitted when the input has clicked.
   */
  balClick: EventEmitter<MouseEvent>;
  /**
   * Emitted when a keyboard key has pressed.
   */
  balKeyPress: EventEmitter<KeyboardEvent>;
  /**
   * Emitted when the input has focus.
   */
  balFocus: EventEmitter<FocusEvent>;
  /**
   * Sets the focus on the input element.
   */
  setFocus(): Promise<void>;
  render(): any;
  private updateInputValue;
  private filterNumbers;
}
