import { EventEmitter } from '../../stencil-public-runtime';
import { Alignment } from '../types';
import { CheckableFormCompoment, IndeterminateFormCompoment } from '../../utils';
/** @slot - A slot for adding text and a component that can be labeled. */
export declare class Checkbox implements CheckableFormCompoment, IndeterminateFormCompoment {
  host: HTMLAbdsCheckboxElement;
  /** Sets name attribute. */
  name: string;
  /**  Aligns input and label. */
  alignment: Alignment;
  /** Sets checked state. */
  checked: boolean;
  /** Disables checkbox interaction.  */
  disabled: boolean;
  /** Sets error state. */
  error: boolean;
  /** Sets indeterminate state. */
  indeterminate: boolean;
  /** Sets required state. */
  required: boolean;
  /** Sets custom error message for required state. */
  requiredMessage: string;
  /** Sets tooltip text in embedded abds-label. */
  tooltip: string;
  /**
   * Form submission value if selected. Default for checked checkbox is **on**:
   * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#attr-value
   */
  value: string;
  /** initial render status */
  private isInitialRender;
  /** instance validation */
  private validator;
  /** toggle element */
  private toggleEl;
  /** text to be used for label */
  private labelText;
  /** hidden input element */
  hiddenInput: HTMLInputElement | null;
  private toggle;
  private onKeyDown;
  /** icon to be used by abds-icon */
  private icon;
  /**
   * Sets focus on native `input` in `abds-checkbox`.
   * @internal
   */
  setFocus(): Promise<void>;
  /** Emitted when checkbox checked status is changed */
  abdsChange: EventEmitter;
  componentWillLoad(): void;
  componentWillRender(): void;
  componentDidRender(): void;
  connectedCallback(): void;
  disconnectedCallback(): void;
  render(): any;
}
