import type { CustomEqualCreatorOptions } from './internalTypes'; import { sameValueZeroEqual } from './utils'; export { sameValueZeroEqual }; export * from './internalTypes'; /** * Whether the items passed are deeply-equal in value. */ export declare const deepEqual: (a: A, b: B) => boolean; /** * Whether the items passed are deeply-equal in value based on strict comparison. */ export declare const strictDeepEqual: (a: A, b: B) => boolean; /** * Whether the items passed are deeply-equal in value, including circular references. */ export declare const circularDeepEqual: (a: A, b: B) => boolean; /** * Whether the items passed are deeply-equal in value, including circular references, * based on strict comparison. */ export declare const strictCircularDeepEqual: (a: A, b: B) => boolean; /** * Whether the items passed are shallowly-equal in value. */ export declare const shallowEqual: (a: A, b: B) => boolean; /** * Whether the items passed are shallowly-equal in value based on strict comparison */ export declare const strictShallowEqual: (a: A, b: B) => boolean; /** * Whether the items passed are shallowly-equal in value, including circular references. */ export declare const circularShallowEqual: (a: A, b: B) => boolean; /** * Whether the items passed are shallowly-equal in value, including circular references, * based on strict comparison. */ export declare const strictCircularShallowEqual: (a: A, b: B) => boolean; /** * Create a custom equality comparison method. * * This can be done to create very targeted comparisons in extreme hot-path scenarios * where the standard methods are not performant enough, but can also be used to provide * support for legacy environments that do not support expected features like * `RegExp.prototype.flags` out of the box. */ export declare function createCustomEqual(options?: CustomEqualCreatorOptions): (a: A, b: B) => boolean;