import type { Attributes, Func } from '../interface/index.js'; import { ClassList } from './class-list.js'; import type { Event } from './event.js'; import { Node } from './node.js'; import { Style } from './style.js'; export declare class Element extends Node { tagName: string; props: Record; style: Style; dataset: Record; innerHTML: string; constructor(); private _stopPropagation; get id(): string; set id(val: string); get className(): string; set className(val: string); get cssText(): string; get classList(): ClassList; get children(): Element[]; get attributes(): Attributes[]; get textContent(): string; set textContent(text: string); hasAttribute(qualifiedName: string): boolean; hasAttributes(): boolean; get focus(): () => void; set focus(value: () => void); blur(): void; setAttribute(qualifiedName: string, value: any): void; removeAttribute(qualifiedName: string): void; getAttribute(qualifiedName: string): string; getElementsByTagName(tagName: string): Element[]; getElementsByClassName(className: string): Element[]; dispatchEvent(event: Event): boolean; addEventListener(type: any, handler: any, options: any): void; removeEventListener(type: any, handler: any, sideEffect?: boolean): void; static extend(methodName: string, options: Func | Record): void; }