TYPING: check-untyped-defs for util._decorators
- [X] closes #27404 
xref #27568

```
$ mypy pandas/util/_decorators.py --check-untyped-defs --follow-imports skip
pandas\util\_decorators.py:181: error: Item "function" of "Union[Dict[Any, Any], Callable[[Any], Any]]" has no attribute "get"
pandas\util\_decorators.py:183: error: "Dict[Any, Any]" not callable
pandas\util\_decorators.py:201: error: Argument 1 to "get" of "Mapping" has incompatible type "Optional[str]"; expected "str"
pandas\util\_decorators.py:207: error: Invalid index type "Optional[str]" for "Dict[str, Any]"; expected type "str"
pandas\util\_decorators.py:293: error: Item "Tuple[Any, ...]" of "Union[Tuple[Any, ...], Dict[str, Any]]" has no attribute "update"
```

```
$ mypy pandas/util/_decorators.py --disallow-any-generics --follow-imports skip
pandas\util\_decorators.py:12: error: Missing type parameters for generic type
pandas\util\_decorators.py:18: error: Missing type parameters for generic type
pandas\util\_decorators.py:93: error: Missing type parameters for generic type
pandas\util\_decorators.py:95: error: Missing type parameters for generic type
pandas\util\_decorators.py:217: error: Missing type parameters for generic type
pandas\util\_decorators.py:282: error: Missing type parameters for generic type
pandas\util\_decorators.py:323: error: Missing type parameters for generic type
```

also fixes following errors arising from more precise typing...

```
pandas\core\indexes\interval.py:790: error: Signature of "get_loc" incompatible with supertype "Index"
pandas\core\indexes\interval.py:985: error: Too many arguments for "get_indexer_non_unique" of "IntervalIndex"
pandas\core\groupby\generic.py:889: error: Incompatible types in assignment (expression has type "Callable[[DefaultArg(Any, 'func_or_funcs'), VarArg(Any), KwArg(Any)], Any]", base class "SelectionMixin" defined the type as "Callable[[Arg(Any, 'func'), VarArg(Any), KwArg(Any)], Any]")
pandas\core\groupby\generic.py:1470: error: Incompatible types in assignment (expression has type "Callable[[DefaultArg(Any, 'arg'), VarArg(Any), KwArg(Any)], Any]", base class "NDFrameGroupBy" defined the type as "Callable[[Arg(Any, 'func'), VarArg(Any), KwArg(Any)], Any]")
pandas\core\window\rolling.py:913: error: Incompatible types in assignment (expression has type "Callable[[Arg(Any, 'arg'), VarArg(Any), KwArg(Any)], Any]", base class "_Window" defined the type as "Callable[[Arg(Any, 'func'), VarArg(Any), KwArg(Any)], Any]")
pandas\core\window\rolling.py:1794: error: Incompatible types in assignment (expression has type "Callable[[Arg(Any, 'arg'), VarArg(Any), KwArg(Any)], Any]", base class "_Window" defined the type as "Callable[[Arg(Any, 
'func'), VarArg(Any), KwArg(Any)], Any]")
pandas\core\window\expanding.py:142: error: Incompatible types in assignment (expression has type "Callable[[Arg(Any, 'arg'), VarArg(Any), KwArg(Any)], Any]", base class "_Window" defined the type as "Callable[[Arg(Any, 'func'), VarArg(Any), KwArg(Any)], Any]")
pandas\core\window\ewm.py:212: error: Incompatible types in assignment (expression has type "Callable[[Arg(Any, 'arg'), VarArg(Any), KwArg(Any)], Any]", base class "_Window" defined the type as "Callable[[Arg(Any, 'func'), VarArg(Any), KwArg(Any)], Any]")
```
This should also close #27404 - updated OP to reflect that Thanks @simonjayhawkins 