Why allow `types` to be null here?