/** * Compara recursivamente dois objetos ou valores para determinar se são profundamente iguais. * * Esta função verifica a igualdade de valores primitivos, objetos, arrays e datas. * Para objetos e arrays, a comparação é feita elemento por elemento e propriedade por propriedade. * * @template T O tipo dos objetos a serem comparados. * @param {T} obj1 O primeiro objeto ou valor para comparação. * @param {T} obj2 O segundo objeto ou valor para comparação. * @param {boolean} [ignoreConstructor=true] Se `true`, a propriedade `constructor` será ignorada durante a comparação de objetos. * @returns {boolean} Retorna `true` se os objetos forem profundamente iguais, caso contrário, `false`. * * @example * ```ts * const objA = { * a: 1, * b: { * c: [10, 20], * d: new Date('2023-01-01') * } * }; * * const objB = { * a: 1, * b: { * c: [10, 20], * d: new Date('2023-01-01') * } * }; * * const objC = { a: 1, b: { c: [10, 99] } }; // Valor diferente no array aninhado * * console.log(deepEqual(objA, objB)); // => true * console.log(deepEqual(objA, objC)); // => false * ``` */ export declare const deepEqual: (obj1: T, obj2: T, ignoreConstructor?: boolean) => boolean; //# sourceMappingURL=deepEqual.d.ts.map