import { AnyType, TypeToData, TypeToSnapshotIn } from '../types/schemas'; import { SnapshotInOf, SnapshotOutOf } from './SnapshotOf'; /** * From snapshot options. */ export interface FromSnapshotOptions { /** * Pass `true` to generate new internal ids for models rather than reusing them. (Default is `false`) */ generateNewIds: boolean; } /** * Given a type deserializes a data structure from its snapshot form. * * @template TType Object type. * @param type Type. * @param snapshot Snapshot, even if a primitive. * @param options Options. * @returns The deserialized object. */ export declare function fromSnapshot(type: TType, snapshot: TypeToSnapshotIn, options?: Partial): TypeToData; /** * Deserializes a data structure from its snapshot form. * * @template T Object type. * @param snapshot Snapshot, even if a primitive. * @param options Options. * @returns The deserialized object. */ export declare function fromSnapshot(snapshot: SnapshotInOf | SnapshotOutOf, options?: Partial): T; export declare const observableOptions: { deep: boolean; };