import { PartialVendureConfig, VendureConfig } from './vendure-config'; /** * @description * Performs a deep merge of two VendureConfig objects. Unlike `Object.assign()` the `target` object is * not mutated, instead the function returns a new object which is the result of deeply merging the * values of `source` into `target`. * * Arrays do not get merged, they are treated as a single value that will be replaced. So if merging the * `plugins` array, you must explicitly concatenate the array. * * @example * ```ts * const result = mergeConfig(defaultConfig, { * assetOptions: { * uploadMaxFileSize: 5000, * }, * plugins: [ * ...defaultConfig.plugins, * MyPlugin, * ] * }; * ``` * * @docsCategory configuration */ export declare function mergeConfig(target: T, source: PartialVendureConfig, depth?: number): T;