/** * This method is like `set` except that it accepts `customizer` which is invoked to produce the * value to be set. If `customizer` returns `undefined` the value is not set. * * @since 1.0.0 * * @template T The type of the object. * @param {T} object - The object to modify. * @param {(any[] | string)} path - The path of the property to set. * @param {*} value - The value to set. * @param {Function} customizer - The function to customize assigned values. * @returns {T} - Returns the modified object. * * @example * * const object = { 'a': [{ 'b': { 'c': 3 } }] }; * * setWith(object, '[0].a.b.c', 4, (value) => value === 3 ? 1 : value); * // => { 'a': [{ 'b': { 'c': 1 } }] } */ declare const setWith: (object: T, path: any[] | string, value: any, customizer: Function) => T; export default setWith;