Introduction
Strict configuration objects help catch mistakes early by making sure only allowed settings are used.
When you want to make sure a function only accepts specific options.
When you want to avoid typos in configuration keys.
When you want to get helpful errors while coding instead of bugs later.
When you want to clearly document what settings are allowed.
When you want to prevent extra or unknown properties in objects.