import { ObjectWithImmutables, Immutable } from './types'; /** * Checks that the current value is exactly the same as the other previous one. Accepts value of type * function, number, boolean, string, undefined or null */ export declare const strictEqualityCheck: () => (current: T) => boolean; /** * Equality check that verifies the values of each key of an object. * Each value must be a primitive (boolean, number or string) * * For null or undefined values see nullableShallowObjectEqualityCheck */ export declare const shallowObjectEqualityCheck: () => (current: ObjectWithImmutables) => boolean; /** * Does a shallow object equality check for each element in an array * * For null or undefined values see nullableShallowObjectArrayEqualityCheck */ export declare const shallowObjectArrayEqualityCheck: () => (current: ObjectWithImmutables[]) => boolean; /** * Shallow equality check of primitives in an array * * For null or undefined values see nullableShallowArrayEqualityCheck */ export declare const shallowArrayEqualityCheck: () => (current: Immutable[]) => boolean; /** * Equality check that verifies the values of each key of an object. * Each value must be a primitive (boolean, number or string) * * Supports nullable values */ export declare const nullableShallowObjectEqualityCheck: () => (value: ObjectWithImmutables | null | undefined) => boolean; /** * Does a shallow object equality check for each element in an array * * Supports nullable values */ export declare const nullableShallowObjectArrayEqualityCheck: () => (value: ObjectWithImmutables[] | null | undefined) => boolean; /** * Shallow equality check of primitives in an array * * Supports nullable values */ export declare const nullableShallowArrayEqualityCheck: () => (value: Immutable[] | null | undefined) => boolean; /** * The default equality check that assumes data can be mutated. * It is used internally by default, so there is no need to provide it. */ export declare const defaultEqualityCheck: () => (current: T) => boolean;