import { AnyType, TypeToData, TypeToSnapshotOut } from '../types/schemas'; import { SnapshotOutOf } from './SnapshotOf'; /** * Retrieves an immutable snapshot for a data structure. * Since returned snapshots are immutable they will respect shallow equality, this is, * if no changes are made then the snapshot will be kept the same. * * @template T Object type. * @param nodeOrPrimitive Data structure, including primtives. * @returns The snapshot. */ export declare function getSnapshot(type: T, nodeOrPrimitive: TypeToData): TypeToSnapshotOut; /** * Retrieves an immutable snapshot for a data structure. * Since returned snapshots are immutable they will respect shallow equality, this is, * if no changes are made then the snapshot will be kept the same. * * @template T Object type. * @param nodeOrPrimitive Data structure, including primtives. * @returns The snapshot. */ export declare function getSnapshot(nodeOrPrimitive: T): SnapshotOutOf;