from typing import Any

import numpy as np
from pandas._typing import AnyArrayLike as AnyArrayLike
from pandas.core.dtypes.generic import ABCIndexClass as ABCIndexClass, ABCSeries as ABCSeries

def is_list_like_indexer(key: Any) -> bool: ...
def is_scalar_indexer(indexer: Any, arr_value: Any) -> bool: ...
def is_empty_indexer(indexer: Any, arr_value: np.ndarray) -> bool: ...
def check_setitem_lengths(indexer: Any, value: Any, values: Any) -> None: ...
def validate_indices(indices: np.ndarray, n: int) -> None: ...
def maybe_convert_indices(indices: Any, n: int) -> Any: ...
def length_of_indexer(indexer: Any, target: Any = ...) -> int: ...
def deprecate_ndim_indexing(result: Any) -> None: ...
def check_array_indexer(array: AnyArrayLike, indexer: Any) -> Any: ...
