UNPKG

@augment-vir/common

Version:

A collection of augments, helpers types, functions, and classes for any JavaScript environment.

20 lines (19 loc) 822 B
import { type AnyObject, type PartialWithNullable } from '@augment-vir/core'; /** * Merge all objects together but ignore any override values that are `undefined` or `null` or * missing. This only merges objects at the top level, it is not a deep merge. * * @category Object : Merge * @category Package : @augment-vir/common * @example * * ```ts * import {mergeDefinedProperties} from '@augment-vir/common'; * * mergeDefinedProperties({a: 'default', b: 'default'}, {a: 'override', b: undefined}); * // output is `{a: 'override', b: 'default'}` * ``` * * @package [`@augment-vir/common`](https://www.npmjs.com/package/@augment-vir/common) */ export declare function mergeDefinedProperties<const T extends AnyObject>(original: T, ...overrides: ReadonlyArray<PartialWithNullable<NoInfer<T>> | undefined>): T;