import type { MudletMap, MudletRoom } from '../../mapIO'; import type { MudletLabel, MudletArea } from 'mudlet-map-binary-reader'; export interface PropertyChange { from: any; to: any; } export type PropertyDiff = Record; export interface EntityDiff { added: T[]; deleted: T[]; updated: Record; } export interface MapDiff { rooms: EntityDiff; labels: EntityDiff; areas: EntityDiff; map: PropertyDiff; } export declare function getPropertyDiff(obj1: unknown, obj2: unknown): PropertyDiff; /** Compute a structural diff between two in-memory maps (v1 = old, v2 = new). */ export declare function computeMapDiff(v1: MudletMap, v2: MudletMap): MapDiff; export interface DiffCounts { rooms: { added: number; deleted: number; updated: number; }; labels: { added: number; deleted: number; updated: number; }; areas: { added: number; deleted: number; updated: number; }; map: number; total: number; } export declare function countDiff(diff: MapDiff): DiffCounts;