import { Node, Element, HTMLCollection } from "./interfaces"; /** * Represents a collection of elements. */ export declare class HTMLCollectionImpl implements HTMLCollection { _live: boolean; _root: Node; _filter: ((element: Element) => boolean); protected static reservedNames: string[]; /** * Initializes a new instance of `HTMLCollection`. * * @param root - root node * @param filter - node filter */ private constructor(); /** @inheritdoc */ get length(): number; /** @inheritdoc */ item(index: number): Element | null; /** @inheritdoc */ namedItem(key: string): Element | null; /** @inheritdoc */ [Symbol.iterator](): Iterator; /** @inheritdoc */ [index: number]: Element | undefined; /** @inheritdoc */ [key: string]: any; /** * Implements a proxy get trap to provide array-like access. */ get(target: HTMLCollection, key: PropertyKey, receiver: any): Element | null | undefined; /** * Implements a proxy set trap to provide array-like access. */ set(target: HTMLCollection, key: PropertyKey, value: Element, receiver: any): boolean; /** * Creates a new `HTMLCollection`. * * @param root - root node * @param filter - node filter */ static _create(root: Node, filter?: ((element: Element) => boolean)): HTMLCollectionImpl; }