/**
* Object that can be snapshotted ("saved") any time and then reverted to a given state.
*/exportdeclareclassSnapshotObject<T> {
value: T;
private copyFn;
private snapshots;
constructor(value: T, copyFn: (t: T) => T);
makeSnapshot(): number;
revert(id: number): void;
}