import { HtmlAttrs, OptionProps } from '../../types/propTypes';
/**
 * Displays a <bs-select> field with a corresponding <bs-label> and <bs-hint>.
 *
 * @docsPage
 */
export declare class BsSelectField {
  /** Sets the disabled state on select, disabled styles on label. */
  disabled: boolean;
  /** Applies error styles to the select. */
  error?: boolean;
  /** Pass error text. */
  errorMsg?: string;
  /** Pass id for the input element.  Will also be applied to label attribute. */
  inputId?: string;
  /** Pass label text. */
  label?: string;
  /** Pass helper text. */
  hint?: string;
  /** DEPRECATED.  Use `hint` and/or `errorMsg`. */
  hints?: string | string[];
  /** Pass a default placeholder option, which will have no value. */
  placeholder: string;
  /** Sets the required state on the select, append required* indicator to label. */
  required?: boolean;
  /** Sets the select value. */
  value: string | number;
  /** List additional attributes by name (comma-separated) to pass through to <select>. */
  passAttrs: string;
  /** @mapTo OptionProps */
  data: OptionProps[];
  /** Native attributes to pass through to the select element. */
  attrs: HtmlAttrs;
  inputIdGen: string;
  get hintMsg(): string;
  get hintDeprecated(): string;
  get inputIdAttr(): string;
  /** Adds an id to associate a hint to an select. */
  hintId: string;
  hostEl: HTMLElement;
  componentWillLoad(): void;
  get validValue(): string | number;
  render(): any;
}
