parameters: (kind)
return_statement: return tuple(
          chain.from_iterable(
              _extract_types(k) for k in (kind if isinstance(kind, tuple) else (kind,))
          )
      )
docstring: Extract a tuple of types from a type-like object or tuple.
docstring_summary: Extract a tuple of types from a type-like object or tuple.
docstring_tokens: Extract a tuple of types from a type - like object or tuple .
function: def extract_types(kind) -> Tuple[type, ...]:
      """Extract a tuple of types from a type-like object or tuple."""
      return tuple(
          chain.from_iterable(
              _extract_types(k) for k in (kind if isinstance(kind, tuple) else (kind,))
          )
      )
function_tokens: def extract_types ( kind ) -> Tuple [ type , ... ] : return tuple ( chain . from_iterable ( _extract_types ( k ) for k in ( kind if isinstance ( kind , tuple ) else ( kind , ) ) ) )