export default function wrap(node: HTMLElement | string): INode;
export interface INode {
/**
* Adds the given attributes to the node.
*
* @param map the attribute map
*/
addAttributes(map: {}): INode;
/**
* Removes the given attributes from the node.
*
* @param qualifiers the attributes qualifiers
*/
removeAttributes(...qualifiers: string[]): INode;
/**
* Returns the attribute value
*
* @param qualifier the attribute qualifier
*/
getAttribute(qualifier: string): string | null;
/**
* Adds the given attributes to the nodes dataset
*
* @see https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes
*/
addDataAttributes(map: {}): INode;
/**
* Adds the given classes to the node.
*
* @param classes the classes to add
*/
addClasses(...classes: string[]): INode;
/**
* Removes the given classes from the node.
*
* @param classes the classes to remove
*/
removeClasses(...classes: string[]): INode;
/**
* Check if classList contains className
*
* @param className the class which should be contained
*/
containsClass(className: string): boolean;
/**
* Appends the given node to the node.
*
* @param node the node to add
*/
appendChild(node: INode | string): INode;
/**
* Adds the given class name to the node if missing. Removes it otherwise.
*
* @param className the class name
*/
toggleClass(className: string): void;
/**
* Get the parent by class of the node
*/
getParentByClass(className: string): INode | undefined;
/**
* Returns the first element with an id attribute. Yields null if no element was found.
*/
getChildWithId(): INode | null;
toggle(): void;
onClick(callback: (e: MouseEvent) => void, options?: AddEventListenerOptions): void;
parent(): INode | null;
removeChild(node: INode): void;
unwrap(): HTMLElement;
find(selector: string): INode;
findAll(selector: string): Array;
innerText(str?: string): INode;
setStyle(map: {
[key: string]: string;
}): INode;
setName(name?: string): INode;
setId(id?: string): INode;
setRequired(required?: boolean): INode;
setAriaLabel(label?: string): INode;
}