@pengzhanbo/utils - v3.4.1
    Preparing search index...

    Function deepMerge

    • Deep merge

      The first argument is the target object, the rest are the sources. The target object will be mutated and returned.

      深度合并

      第一个参数是目标对象,其余的是源对象。 目标对象将被修改并返回。

      Type Parameters

      • T extends Record<PropertyKey, any>
      • S extends Record<PropertyKey, any> = T

      Parameters

      • target: T
      • ...sources: S[]

      Returns MergeInsertions<
          {
              [K in string
              | number
              | symbol]: K extends keyof S & keyof T
                  ? MergeInsertions<
                      {
                          [K in string
                          | number
                          | symbol]: K extends keyof S[K] & keyof T[K]
                              ? MergeInsertions<
                                  {
                                      [K in string
                                      | number
                                      | symbol]: K extends keyof (...) & keyof (...)
                                          ? MergeInsertions<{ [K in (...)]: (...) }>
                                          : K extends keyof (...)
                                              ? (...)[(...)]
                                              : (...) extends (...) ? (...) : (...)
                                  },
                              >
                              : K extends keyof S[K]
                                  ? S[K][K]
                                  : K extends keyof T[K] ? T[K][K] : never
                      },
                  >
                  : K extends keyof S ? S[K] : K extends keyof T ? T[K] : never
          },
      >