code: def broadcast_shapes(
      *shapes: Union[List[int], List[Tuple]]
  ) -> Tuple[int]:
      return np.broadcast_shapes(*shapes)
  
imports: from typing import Iterable, Optional, Union, Sequence, Tuple, NamedTuple, Literal, Callable, Any, List
  from numbers import Number
  from collections import namedtuple
  import numpy
  import ivy
  from ivy.functional.backends.numpy.helpers import _scalar_output_to_0d_array
  from ivy.func_wrapper import with_supported_dtypes
  from .None import backend_version
label_desc: Use image node_id 22 for calling a global function with example usage: broadcast_shapes() and returns: np