/**
* @param array<mixed> $config
*
* @return array<mixed>
*/
private function resolveFilesystemConfig(array
$config): array
{ $options =
new OptionsResolver();
$options->
setRequired(['type'
]);
$options->
setDefined(['config', 'visibility', 'disable_asserts', 'url', 'private'
]);
$options->
setDefault('config',
[]);
$options->
setDefault('visibility', Visibility::
PUBLIC);
$options->
setDefault('disable_asserts', false
);
$options->
setDefault('private', false
);
$options->
setAllowedTypes('type', 'string'
);
$options->
setAllowedTypes('config', 'array'
);
$options->
setAllowedTypes('disable_asserts', 'bool'
);
$options->
setAllowedValues('visibility',
[Visibility::
PUBLIC, Visibility::
PRIVATE]);