import type { Element, ChildNode } from 'parse5/dist/tree-adapters/default.js'; /** * @param {Node} node * @param {string} attributeName * @returns {string | undefined} */ export declare function getAttribute(node: any, attributeName: any): any; /** * @param {Node} node * @param {string} attributeName * @param {string | null | undefined} value */ export declare function setAttribute(node: any, attributeName: any, value: any): void; /** * @param {Node} node * @param {string} attributeName * @returns {boolean} */ export declare function hasAttribute(node: any, attributeName: any): boolean; /** * @param {Node} node * @returns {Map} */ export declare function getAttributeMap(node: any): Map; /** * @param {Node} node * @returns {node is Element} */ export declare function isCustomElement(node: any): any; /** * @param {Element | Node} node * @param {ElementCallbackFn} selector * @param {ElementCallbackFn} recursive * @returns {Generator} */ export declare function traverse(node: any, selector?: (_: any) => boolean, recursive?: (_: any) => boolean): any; export declare function traverseHighest(node: any, selector?: (_: any) => boolean): any; /** * @param {Node} node * @param {ElementCallbackFn} selector * @returns {Array} */ export declare function filter(node: any, selector?: (_: any) => boolean): any[]; /** * @param {Node} node * @param {ElementCallbackFn} selector * @returns {Element | null} */ export declare function find(node: any, selector?: (_: any) => boolean): any; /** * @param {Node} node * @returns {node is Element} */ export declare function isElement(node: any): boolean; export declare const ast: { getAttribute: typeof getAttribute; getAttributeMap: typeof getAttributeMap; hasAttribute: typeof hasAttribute; setAttribute: typeof setAttribute; isCustomElement: typeof isCustomElement; traverse: typeof traverse; filter: typeof filter; find: typeof find; traverseHighest: typeof traverseHighest; }; export interface Node { tagName?: string; nodeName?: string; childNodes?: Array; attrs?: Array; } export interface Attribute { name: string; value: string; } export type ChildElement = ChildNode & Element; export type nodeCallbackFn = (node: ChildNode) => boolean; export type ElementCallbackFn = (element: Element) => boolean;