in src/ConfigurationLoader.hack [30:38]
public static function fromJSON(string $json, string $path): Config {
$decoded = \json_decode($json, /* as array = */ true);
invariant(
$decoded is KeyedContainer<_, _>,
'Expected configuration file to contain a JSON object, got %s',
\gettype($decoded),
);
return self::fromData($decoded, $path);
}