Deeply merge two object types.
Base object type
Overriding object type
Recursively merges nested objects. On conflicts, the right-hand type always takes precedence.
type A = { a: { x: number; y: string }; b: string };type B = { a: { y: number; z: boolean }; c: boolean };type Merged = DeepMerge< A, B >;// { a: { x: number; y: number; z: boolean }; b: string; c: boolean } Copy
type A = { a: { x: number; y: string }; b: string };type B = { a: { y: number; z: boolean }; c: boolean };type Merged = DeepMerge< A, B >;// { a: { x: number; y: number; z: boolean }; b: string; c: boolean }
Deeply merge two object types.