This looks like it might he useful for migrating pre-typescript code to Typescript. Identifying permutations of otherwise similar objects can be a pain, and sometimes similar APIs will return fields that have the same property name but only contain a small subset of data.