`ImmutableMap.copyOf` is unnecessary. `types` is already immutable, so it's safe to return the view created by `transformValues`. In any case, the result of this method is always fed into an ExtractionResult, which copies the map internally.