/** * Verifica se um elemento é visível no DOM (conectado, sem hidden, e com client rects). * @param el Elemento a verificar * @returns true se o elemento é visível */ export declare function isVisibleElement(el: Element | null): el is HTMLElement; /** * Procura o elemento br-menu-list mais próximo a partir de um nó, subindo pela árvore DOM incluindo shadow roots. * @param node Nó de partida * @returns Elemento br-menu-list encontrado ou null */ export declare function findClosestMenuListFrom(node: Element): HTMLElement | null; /** * Obtém o elemento ativo mais profundo, incluindo dentro de shadow roots aninhados. * @param root Raiz a partir da qual buscar (document ou ShadowRoot) * @returns Elemento ativo ou null */ export declare function getDeepActiveElement(root?: Document | ShadowRoot): Element | null; /** * Define ou remove o atributo drill-active em um elemento. * @param element Elemento alvo * @param active Se true, adiciona o atributo; se false, remove */ export declare function setDrillActive(element: HTMLElement, active: boolean): void; /** * Verifica se um nó está contido dentro de um elemento host, percorrendo a árvore DOM e shadow roots. * @param hostEl Elemento host do componente * @param node Nó a verificar * @returns true se o nó está dentro do host */ export declare function isNodeWithinHost(hostEl: HTMLElement, node: Element): boolean; export declare function collectVisibleTargetsFrom(element: Element, targets: HTMLElement[]): void; /** * Obtém os alvos focáveis de um br-menu-list (header e filhos diretos). * @param listEl Elemento br-menu-list * @returns Array de elementos focáveis */ export declare function getTargetsForMenuList(listEl: HTMLElement): HTMLElement[]; /** * Coleta recursivamente alvos de drill-down (itens e headers de listas) a partir de um elemento. * @param element Elemento de partida * @param targets Array onde os alvos serão acumulados */ export declare function collectDrillDownTargets(element: HTMLElement, targets: HTMLElement[]): void; /** * Obtém os alvos de nível superior (filhos diretos do slot body do menu). * @param shadowRoot ShadowRoot do componente menu * @returns Array de elementos focáveis de nível superior */ export declare function getTopLevelTargets(shadowRoot: ShadowRoot | null | undefined): HTMLElement[]; /** * Obtém todos os alvos visíveis do menu (recursivamente). * @param shadowRoot ShadowRoot do componente menu * @returns Array de todos os elementos focáveis visíveis */ export declare function getAllVisibleTargets(shadowRoot: ShadowRoot | null | undefined): HTMLElement[]; /** * Obtém os alvos com escopo baseado no elemento ativo atual. * Se está dentro de um menu-list, retorna apenas os alvos daquele nível. * @param deepActive Elemento ativo profundo * @param shadowRoot ShadowRoot do componente menu * @returns Array de elementos focáveis no escopo atual */ export declare function getScopedTargets(deepActive: Element, shadowRoot: ShadowRoot | null | undefined): HTMLElement[]; /** * Foca o primeiro elemento filho visível de um br-menu-list. * @param listEl Elemento br-menu-list */ export declare function focusFirstChildOfList(listEl: HTMLElement): void;