diff --git a/numpydoc/validate.py b/numpydoc/validate.py
index 91aca6b..3675737 100644
--- a/numpydoc/validate.py
+++ b/numpydoc/validate.py
@@ -564,6 +564,10 @@ def validate(obj_name):
             else:
                 if doc.parameter_type(param)[-1] == ".":
                     errs.append(error("PR05", param_name=param))
+                # skip common_type_error checks when the param type is a set of
+                # options
+                if "{" in doc.parameter_type(param):
+                    continue
                 common_type_errors = [
                     ("integer", "int"),
                     ("boolean", "bool"),

diff --git a/numpydoc/tests/test_validate.py b/numpydoc/tests/test_validate.py
index ecbe703..60cebcd 100644
--- a/numpydoc/tests/test_validate.py
+++ b/numpydoc/tests/test_validate.py
@@ -458,6 +458,28 @@ class GoodDocStrings:
         """
         pass
 
+    def valid_options_in_parameter_description_sets(self, bar):
+        """
+        Ensure a PR06 error is not raised when type is member of a set.
+
+        Literal keywords like 'integer' are valid when specified in a set of
+        valid options for a keyword parameter.
+
+        Parameters
+        ----------
+        bar : {'integer', 'boolean'}
+            The literal values of 'integer' and 'boolean' are part of an
+            options set and thus should not be subject to PR06 warnings.
+
+        See Also
+        --------
+        related : Something related.
+
+        Examples
+        --------
+        >>> result = 1 + 1
+        """
+
 
 class BadGenericDocStrings:
     """Everything here has a bad docstring
@@ -1089,6 +1111,7 @@ class TestValidator:
             "multiple_variables_on_one_line",
             "other_parameters",
             "warnings",
+            "valid_options_in_parameter_description_sets",
         ],
     )
     def test_good_functions(self, capsys, func):

How to specify that parameter can equal the string 'integer'?
Say I have the following:
```python
def foo(bar: str) -> None:
    """
    Parameters
    ----------
    bar : {'integer', 'float'}
        Some description.
    """
    if bar not in {'integer', 'float'}:
        raise ValueError('bar is neither "integer" nor "float"')
```

The parameter `bar` is a `str`, and can only take on the values `'integer'` and `'float'`. However, if I run `numpydoc` on it, it reports:
```console
$ python -m numpydoc t.foo --validate
t.foo:SS01:No summary found (a short summary in a single line should be present at the beginning of the docstring)
t.foo:ES01:No extended summary found
t.foo:PR06:Parameter "bar" type should use "int" instead of "integer"
t.foo:SA01:See Also section not found
t.foo:EX01:No examples section found
```
The first 2 and last 2 errors are expected, but the middle one (`PR06`) feels like a false positive.

Noticed when trying to validate `pandas.to_numeric` (https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.to_numeric.html), which has a parameter `downcast` which can be equal to the string `'integer'`
numpydoc/tests/test_validate.py::TestValidator::test_good_functions[valid_options_in_parameter_description_sets]
numpydoc/tests/test_validate.py::test_validate.BadExamples.indentation_is_not_a_multiple_of_four numpydoc/tests/test_validate.py::test_validate.BadExamples.missing_whitespace_after_comma numpydoc/tests/test_validate.py::test_validate.BadExamples.missing_whitespace_around_arithmetic_operator numpydoc/tests/test_validate.py::test_validate.BadGenericDocStrings.sections_in_wrong_order numpydoc/tests/test_validate.py::test_validate.GoodDocStrings numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.contains numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.empty_returns numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.good_imports numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.head numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.head1 numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.mode numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.multiple_variables_on_one_line numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.no_returns numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.other_parameters numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.plot numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.random_letters numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.sample numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.sample_values numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.summary_starts_with_number numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.swap numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.valid_options_in_parameter_description_sets numpydoc/tests/test_validate.py::test_validate.GoodDocStrings.warnings numpydoc/tests/test_validate.py::TestValidator::test_one_liner numpydoc/tests/test_validate.py::TestValidator::test_good_class numpydoc/tests/test_validate.py::TestValidator::test_good_functions[plot] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[swap] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[sample] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[random_letters] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[sample_values] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[head] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[head1] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[summary_starts_with_number] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[contains] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[mode] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[good_imports] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[no_returns] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[empty_returns] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[multiple_variables_on_one_line] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[other_parameters] numpydoc/tests/test_validate.py::TestValidator::test_good_functions[warnings] numpydoc/tests/test_validate.py::TestValidator::test_bad_class numpydoc/tests/test_validate.py::TestValidator::test_bad_generic_functions[func] numpydoc/tests/test_validate.py::TestValidator::test_bad_generic_functions[astype] numpydoc/tests/test_validate.py::TestValidator::test_bad_generic_functions[astype1] numpydoc/tests/test_validate.py::TestValidator::test_bad_generic_functions[astype2] numpydoc/tests/test_validate.py::TestValidator::test_bad_generic_functions[astype3] numpydoc/tests/test_validate.py::TestValidator::test_bad_generic_functions[plot] numpydoc/tests/test_validate.py::TestValidator::test_bad_generic_functions[directives_without_two_colons] numpydoc/tests/test_validate.py::TestValidatorClass::test_raises_for_invalid_module_name[unknown_mod] numpydoc/tests/test_validate.py::TestValidatorClass::test_raises_for_invalid_module_name[unknown_mod.MyClass] numpydoc/tests/test_validate.py::TestValidatorClass::test_raises_for_invalid_attribute_name[datetime.BadClassName] numpydoc/tests/test_validate.py::TestValidatorClass::test_raises_for_invalid_attribute_name[datetime.bad_method_name]