export default MenuElement; /** * An element which satisfies the accessibility requirements of an ARIA `menu`. Does not support submenus. * * @see {@link https://w3c.github.io/aria/#menu} * @see {@link https://www.w3.org/WAI/ARIA/apg/patterns/menubar/} * @see {@link https://www.w3.org/WAI/ARIA/apg/patterns/menu-button/} */ declare class MenuElement extends HTMLElement { static get observedAttributes(): readonly ["menubutton", "menuanchor", "openwitharrows"]; /** * Returns the first following sibling that is a `menuitem` element, and `null` otherwise. * * The returned result is with respect to the provided `item`. * @param {HTMLElement} item * @returns {Element | null} */ static #getNextMenuItem(item: HTMLElement): Element | null; /** * Returns the first preceding sibling that is a `menuitem` element, and `null` otherwise. * * The returned result is with respect to the provided `item`. * @param {HTMLElement} item * @returns {Element | null} */ static #getPreviousMenuItem(item: HTMLElement): Element | null; /** * @param {PointerEvent} event * @returns {void} */ static #handleMenuButtonClick(event: PointerEvent): void; /** * Used to determine if a `menubutton` was `:focus`ed by a `click` event. * @param {PointerEvent} event * @returns {void} */ static #handleMenuButtonPointerdown(event: PointerEvent): void; /** * @param {KeyboardEvent} event * @returns {void} */ static #handleMenuButtonKeydown(event: KeyboardEvent): void; /** * @param {MutationRecord[]} mutations * @returns {void} */ static #watchExpansion(mutations: MutationRecord[]): void; /** * @param {FocusEvent} event * @returns {void} */ static #handleDelegatedMenuItemFocusin(event: FocusEvent): void; /** * @param {FocusEvent} event * @returns {void} */ static #handleDelegatedMenuItemFocusout(event: FocusEvent): void; /** * @param {PointerEvent} event * @returns {void} */ static #handleDelegatedMenutItemHover(event: PointerEvent): void; /** * @param {KeyboardEvent} event * @returns {void} */ static #handleDelegatedMenuItemKeydown(event: KeyboardEvent): void; /** * @param {PointerEvent} event * @returns {void} */ static #handleDelegatedMenuItemClick(event: PointerEvent): void; /** * @param {PointerEvent} event * @returns {void} */ static #handleDelegatedPointerdown(event: PointerEvent): void; /** * A {@link MutationObserver} callback which watches for and initializes newly added `menuitem`s * @param {MutationRecord[]} mutations * @returns {void} */ static #watchChildNodes(mutations: MutationRecord[]): void; /** "On Mount" for Custom Elements @returns {void} */ connectedCallback(): void; /** "On Unmount" for Custom Elements @returns {void} */ disconnectedCallback(): void; /** * @param {typeof MenuElement.observedAttributes[number]} name * @param {string | null} oldValue * @param {string | null} newValue * @returns {void} */ attributeChangedCallback(name: (typeof MenuElement.observedAttributes)[number], oldValue: string | null, newValue: string | null): void; set openWithArrows(value: boolean); /** Indicates that `ArrowUp` and `ArrowDown` can be used as an alternative way to open the `menu`. @returns {boolean} */ get openWithArrows(): boolean; /** @returns {HTMLButtonElement | null} The `menubutton` which controls this `menu` */ get menuButtonElement(): HTMLButtonElement | null; /** * @returns {HTMLElement | null} The element to which this `menu` is "anchored". (i.e., the element with * respect to which this `menu` is positioned.) Must be a _positioned_ element, such as `position: relative`. */ get menuAnchorElement(): HTMLElement | null; #private; } //# sourceMappingURL=MenuElement.d.ts.map