import { ElementChange, StructuralChange } from '../types/changeTracking'; export declare class ChangeTracker { private static instance; private changeCallback?; private structuralChangeCallback?; static getInstance(): ChangeTracker; setChangeCallback(callback: (change: ElementChange) => void): void; setStructuralChangeCallback(callback: (change: StructuralChange) => void): void; trackTextChange(element: HTMLElement, oldValue: string, newValue: string): void; trackStyleChange(element: HTMLElement, property: string, oldValue: string, newValue: string): void; trackAttributeChange(element: HTMLElement, attribute: string, oldValue: string, newValue: string): void; trackElementInsert(element: HTMLElement, parentElement: HTMLElement, html: string): void; trackElementDelete(element: HTMLElement): void; trackElementMove(element: HTMLElement, newParent: HTMLElement, position: 'before' | 'after' | 'append', sibling?: HTMLElement): void; private generateChangeId; private getElementId; private getElementLocation; private calculateLineNumber; private generateSelector; } //# sourceMappingURL=changeTracker.d.ts.map