import { EventEmitter } from '../../stencil-public-runtime';
import { CssClassMap } from '../../interfaces';
/**
 *  @slot - Allows menu items to be added to the dropdown menu.
 */
export declare class Cardmenu {
  /**
   * The host element.
   */
  element: HTMLElement;
  /**
   * If 'true' the menu is in an open state.
   */
  toggle: boolean;
  /**
   * Emitted when the menu is toggled.
   */
  toggleEvent: EventEmitter;
  /**
   * If 'true' the viewport is 'Mobile' width
   */
  isMobile: boolean;
  /**
   * If 'true' the menu will close when an item is selected
   */
  closeOnSelect?: boolean;
  /**
   * Listen for mousedown events and handle them
   */
  handleClick(event: Event): void;
  /**
   * Listen for window resize events and handle
   */
  handleWindowResize(): void;
  private getMenuItems;
  private getFocusedIndex;
  private getToggleButton;
  /**
   * Listen for keydown events and handle
   *
   */
  handleKeyDown(event: KeyboardEvent): void;
  componentWillLoad(): void;
  componentDidLoad(): void;
  /**
   * Checks if screen width is a mobile width
   *
   * @return Boolean
   */
  checkIfMobile(): boolean;
  /**
   * Toggles the opening and closing of the menu.
   *
   * @return Boolean
   */
  toggleMenu(): Boolean;
  /**
   * Get the map of CSS classes for the button.
   *
   * @return CssClassMap
   */
  getMenuClassMap(): CssClassMap;
  render(): any;
}
