import type { IMirror, SerializedNodeWithId, SnapshotNodeId } from './types'; import { InteractionId } from './types'; export type IdNodeMap = Map; export type NodeMetaMap = WeakMap; export declare function isValidCssSelector(selector: string): boolean | Element; export declare class Mirror implements IMirror { private idNodeMap; private nodeIdMap; private nodeMetaMap; static UNSERIALIZED_NODE_ID: SnapshotNodeId; getId(n: Node | undefined | null): SnapshotNodeId; getNode(id: SnapshotNodeId): Node | null; getIds(): SnapshotNodeId[]; getMeta(n: Node): SerializedNodeWithId | null; removeNodeFromMap(n: Node): void; has(id: SnapshotNodeId): boolean; hasNode(node: Node): boolean; add(n: Node, meta: SerializedNodeWithId): void; replace(id: SnapshotNodeId, n: Node): void; reset(): void; static create(): Mirror; } export declare function getInteractionId(node: Node | null): InteractionId; export declare function getElementByInteractionId(interactionId: InteractionId, doc: Document): Node | null;