import { ValueSet } from './value'; /** * Checks if the given value is not empty. * @private * @param a A value. * @returns `true` if the given value is not `undefined`, `null`, `''`, `[]` or `{}`; `false` otherwise. */ export declare const empty: (a: unknown) => boolean; /** * Checks whether the given values are equal. * @public * @param a A value. * @param b A value. * @returns `true` if the given values are equal, `false` otherwise. */ export declare const equals: (a: unknown, b: unknown) => boolean; /** * Calculates the differences between the two given objects and returns two objects containing the differences in each relative to the other. * * For each key that holds a different value in the two objects, the resulting objects will contain the differences in the values under that key. * * This function is recursive, that is, if the value under the key is an object, the function will be applied to that value recursively. * * @public * @param a An object. * @param b An object. * @returns A tuple of two objects with each containing the keys that have a different value in the corresponding argument compared to the other argument. */ export declare const diff: (a: { [key: string]: unknown; }, b: { [key: string]: unknown; }) => [{ [key: string]: unknown; }, { [key: string]: unknown; }]; /** * Calculates the differences between the two given values of a valueset and returns two objects containing the differences in each relative to the other. * * @param a An object. * @param b An object. * @param valueSet A ValueSet to use as reference for the keys and types of each property. * @returns A tuple of two objects with each containing the keys that have a different value in the corresponding argument compared to the other argument. */ export declare const diffProperties: (a: { [key: string]: unknown; }, b: { [key: string]: unknown; }, valueSet: ValueSet) => [{ [key: string]: unknown; }, { [key: string]: unknown; }]; /** * Checks if the given value is an object. * @public * @param x A value. * @returns `true` if the given value is an object, `false` otherwise. */ export declare const isObject: (x: unknown) => boolean;