export class HTMLElementCacheKey {
    /**
     *
     * @param {HTMLElement} el
     */
    static fromElement(el: HTMLElement): HTMLElementCacheKey;
    /**
     *
     * @type {KeyValuePair[]}
     */
    attributes: KeyValuePair<any, any>[];
    /**
     *
     * @type {KeyValuePair[]}
     */
    style: KeyValuePair<any, any>[];
    /**
     *
     * @type {string}
     */
    tag: string;
    /**
     *
     * @type {number}
     * @private
     */
    private __hash;
    /**
     *
     * @param {string} name
     * @param {string} value
     */
    setAttribute(name: string, value: string): void;
    /**
     *
     * @param {string} name
     * @returns {string|null}
     */
    getAttribute(name: string): string | null;
    update(): void;
    toJSON(): {
        attributes: {};
        styles: {};
    };
    /**
     *
     * @param {HTMLElement} el
     */
    initializeFromElement(el: HTMLElement): void;
    hash(): number;
    /**
     *
     * @param {HTMLElementCacheKey} other
     * @returns {boolean}
     */
    equals(other: HTMLElementCacheKey): boolean;
    reset(): void;
    /**
     * @template T
     * @returns {HTMLElement|T}
     */
    createElement<T>(): HTMLElement | T;
    #private;
}
import { KeyValuePair } from "../../core/collection/KeyValuePair.js";
//# sourceMappingURL=HTMLElementCacheKey.d.ts.map