public static function isFile($value, $message = null)
    {
        if (!is_string($value) || !is_file($value)) {
            throw new InvalidArgumentException(sprintf(
                $message ?: 'Expected file, but got %s',
                Helper::valueToString($value)
            ));
        }
    }