import { ElementArrayFinder, ElementFinder } from "protractor";
import { MenuItemAtom } from "./menu-item.atom";
import { Atom } from "../../atom";
import { ButtonAtom } from "../button/button.atom";
export declare class MenuAtom extends Atom {
    static CSS_CLASS: string;
    static getAllMenuItems: () => ElementArrayFinder;
    menuContentId: string;
    private getPopupBox;
    getMenuButton: () => ButtonAtom;
    getMenuButtonIconName: () => Promise<string>;
    toggleMenu: () => Promise<void>;
    getMenuItemByContainingText: (text: string) => MenuItemAtom;
    itemCount: () => Promise<number>;
    isMenuOpened: () => Promise<boolean>;
    mouseDownOnMenuButton: () => Promise<void>;
    mouseUp: () => Promise<void>;
    getMenuItemByIndex: (idx: number) => MenuItemAtom;
    getMenuItems: () => Promise<MenuItemAtom[]>;
    getItemTextArray: () => Promise<string[]>;
    getHeaderTextArray: () => Promise<string[]>;
    clickHeaderByIndex: (idx: number) => Promise<void>;
    clickDividerByIndex: (idx: number) => Promise<void>;
    /**
     * Returns array of checked checkboxes
     * @returns {Promise<MenuItemAtom[]>}
     */
    getSelectedMenuCheckboxes(): Promise<MenuItemAtom[]>;
    /**
     * Returns array of checked switches
     * @returns {Promise<MenuItemAtom[]>}
     */
    getSelectedMenuSwitches(): Promise<MenuItemAtom[]>;
    getSelectedCheckboxesCount: () => Promise<number>;
    getSelectedSwitchesCount: () => Promise<number>;
    getAppendToBodyMenu: () => ElementFinder;
    getAppendToBodyMenuDividers: () => ElementArrayFinder;
    private getItemElements;
    private getHeaderElements;
    private getSelectedCheckboxElements;
    private getSelectedSwitchElements;
    private getElementByCssContainingText;
}
