HackerRank "Ransom Note" challenge
This code reads like a story, very nice, though at times a bit verbose.

The value returned from addValueOrIncrementCount is never used,
so you could drop the return statement.

decrementCountIfPossible returns a count, or null if the count cannot be decremented. It would be simpler and more natural to use if it returned boolean, because the returned count is not used anyway.

In mapWordCounts the variable occurrences is declared but never used.

Note that the map of word counts for ransomMap is not really necessary.
It's possible to simply loop over the words, updating the magazineMap,
and return false whenever the magazineMap doesn't have the required word.

You could use the || operator to simplify addValueOrIncrementCount:

const addValueOrIncrementCount = (value, map) =&gt; {
    map.set(value, 1 + (map.get(value) || 0))
}