For example: addJson(). I had to do addJson<{}>() so it wouldn't mess the type of a property where the first source had it as required, but the second had it as optional.
Maybe all it needs is the default {} in the type, or maybe the merging type needs some work for the particular case of required-to-optional.