import type { MenuButton } from '..'; /** * Page object for `nimble-menu-button` component to provide consistent ways * of querying and interacting with the component during tests. * * This page object is intended to be used to interact with a `nimble-menu-button`, * not the menu slotted into the button or the menu items. */ export declare class MenuButtonPageObject { protected readonly menuButtonElement: MenuButton; constructor(menuButtonElement: MenuButton); /** * @returns Whether or not the menu is open. */ isOpen(): boolean; /** * Opens the menu. * @returns A promise that resolves when the menu opens. */ openMenu(): Promise; /** * Closes the menu by pressing Escape. * Throws an error if the menu is not open. */ closeMenuWithEscape(): void; /** * Gets the text in the menu button. * @returns The trimmed text that is slotted into the menu button. */ getLabelText(): string; /** * @returns Whether or not the menu button is focused. */ isFocused(): boolean; /** * @internal * Focuses and clicks the menu button. */ clickMenuButton(): void; /** * @internal * Presses the Enter key on the menu button. */ pressEnterKey(): void; /** * @internal * Presses the Space key on the menu button. */ pressSpaceKey(): void; /** * @internal * Presses the Arrow Up key on the menu button. */ pressArrowUpKey(): void; /** * @internal * Presses the Arrow Down key on the menu button. */ pressArrowDownKey(): void; /** * @internal */ getTitle(): string; /** * @internal */ dispatchEvent(event: Event): void; }