from ..util.exception import ShapeIncompatibleError as ShapeIncompatibleError
from typing import Any

def validate_parameter_type(param: Any, name: str = 'parameter') -> None: ...
def validate_parameters(*params: Any, names: list[str] | None = None) -> None: ...
def validate_limit_bounds(lower: Any, upper: Any) -> tuple[Any, Any]: ...
def validate_value_in_limits(value: Any, lower: Any = None, upper: Any = None, name: str = 'value') -> None: ...
def calculate_limit_tolerance(lower: Any, upper: Any, exact: bool = False) -> Any: ...
def check_at_limit(value: Any, lower: Any = None, upper: Any = None, exact: bool = False) -> bool: ...
def validate_parameter_shapes(*params: Any, require_same: bool = True) -> None: ...
def validate_parameter_names(*names: str) -> None: ...
def format_parameter_error(expected_type: str, actual_type: type, param_name: str = 'parameter') -> str: ...
def validate_stepsize(stepsize: Any, param_name: str = 'parameter') -> None: ...
