mapKeys package:monoidmap-internal

Applies a function to all the keys of a MonoidMap that are associated with non-null values. If the resultant map would contain more than one value for the same key, values are combined together in ascending key order with the (<>) operator. Satisfies the following property for all possible keys k:
get k (mapKeys f m) ==
foldMap
(`get` m)
(filter ((==) k . f) (nonNullKeys m))
Applies a function to all the keys of a MonoidMap that are associated with non-null values, with a combining function for values. If the resultant map would contain more than one value for the same key, values are combined together in ascending key order with the given combining function. Satisfies the following property:
mapKeysWith c f == fromListWith c . fmap (first f) . toList