/** * Compares two values deeply to determine if they are equal. * * This function handles various data types including arrays, objects, dates, regular expressions, * and even React elements. It also includes custom handling for DOM elements and avoids traversing * React-specific circular references like `_owner`. * * @template T - The type of the values being compared. * @param {T} a - The first value to compare. * @param {T} b - The second value to compare. * @returns {boolean} `true` if the values are deeply equal, otherwise `false`. * * @example * ```typescript * deepEquals({ a: 1, b: [2, 3] }, { a: 1, b: [2, 3] }); // true * deepEquals([1, 2, 3], [1, 2, 3]); // true * deepEquals(new Date('2023-01-01'), new Date('2023-01-01')); // true * deepEquals({ a: 1 }, { a: 2 }); // false * ``` */ declare const deepEquals: (a: T, b: T) => boolean; export default deepEquals;