/**
 * Deep merge utility for form default values.
 *
 * Merges default values with provided values, where provided values take precedence.
 * Only merges where the provided value is undefined.
 */
/**
 * Deep merge defaults into a target value.
 *
 * - Provided values take precedence over defaults
 * - Only fills in undefined values from defaults
 * - Recursively merges nested objects
 * - Arrays are NOT merged (provided array replaces default)
 *
 * @param defaults - Default values to use when target values are undefined
 * @param provided - Provided values that take precedence
 * @returns Merged result
 *
 * @example
 * ```typescript
 * const defaults = { name: 'John', settings: { theme: 'dark', lang: 'en' } }
 * const provided = { settings: { theme: 'light' } }
 * const result = deepMergeDefaults(defaults, provided)
 * // { name: 'John', settings: { theme: 'light', lang: 'en' } }
 * ```
 */
export declare function deepMergeDefaults<T>(defaults: unknown, provided: T | undefined | null): T;
