/// <reference types="node" />
import { EventEmitter } from '../../stencil-public-runtime';
import { BalOptionValue } from '../bal-select-option/bal-select-option.type';
export declare class Select {
  element: HTMLElement;
  inputElement: HTMLInputElement;
  dropdownElement: HTMLBalDropdownElement;
  optionElements: Map<string, HTMLBalSelectOptionElement>;
  clearScrollToValue: NodeJS.Timeout;
  textToScrollTo: string;
  label: string;
  remote: boolean;
  expanded: boolean;
  inverted: boolean;
  disabled: boolean;
  typeahead: boolean;
  loading: boolean;
  placeholder: string;
  scrollable: number;
  value: BalOptionValue<any>;
  options: BalOptionValue<any>[];
  optionsChanged(): void;
  balChange: EventEmitter<BalOptionValue<any>>;
  balInput: EventEmitter<string>;
  balBlur: EventEmitter<FocusEvent>;
  balFocus: EventEmitter<FocusEvent>;
  balClick: EventEmitter<MouseEvent>;
  balKeyDown: EventEmitter<KeyboardEvent>;
  balKeyPress: EventEmitter<KeyboardEvent>;
  balKeyUp: EventEmitter<KeyboardEvent>;
  optionSelect(event: CustomEvent<BalOptionValue<any>>): Promise<void>;
  clear(): Promise<void>;
  onInputClick(event: MouseEvent): Promise<void>;
  onInput(event: InputEvent): void;
  onKeyPress(event: KeyboardEvent): void;
  render(): any;
  private scrollToText;
  private dispatchEventToOptions;
  private buildCustomEvent;
}
