import { JsxteJson } from "jsxte"; import { VirtualTextNode } from "./virtual-text-node"; export type ElementName = keyof JSX.IntrinsicElements | ""; export type JsonAttribute = [ attributeName: string, value?: string | undefined ]; export declare class VirtualElement { static createVirtual(elemJson: JsxteJson | string): VirtualElement | VirtualTextNode; static createFor(name: string, element: HTMLElement): any; readonly elementName: ElementName; readonly element: HTMLElement; private ref?; private lastUpdatedAttributes; private children; private readonly attributes; constructor(elemJson: JsxteJson); private setAttribute; updateAttributes(attributes: JsonAttribute[]): void; updateChildren(children: Array): void; getChildElements(): Array; update(elemJson: JsxteJson): void; cleanup(): void; }