TypeScript Thing.RecursiveCompare