That's because fonts is a collection of the singular font. Colors, the same for color. fontFamily is precisely what is says; a font family. It's a singular unit. There is no inconsistency here.
When applying them later in the code, they're both singular since they're specifying a specific family/color.
I agree with GP that this inconsistency shakes my confidence in the package.