# Interface methods for submodule: ImageRegion
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import RegionProxy as _RegionProxy


# Interface methods for class: ImageRegion
class ImageRegionProxy(_RegionProxy):
	def GetNameOfClass(self):
		""""""
		...

	@staticmethod
	def GetImageDimension() -> int:
		""""""
		...

	def GetRegionType(self):
		""""""
		...

	def Print(self, os, indent = 0) -> None:
		""""""
		...

	@overload
	def SetIndex(self, index: Sequence[int]) -> None:
		""""""
		...

	@overload
	def SetIndex(self, i: int, sze: int) -> None:
		""""""
		...

	@overload
	def GetIndex(self) -> Sequence[int]:
		""""""
		...

	@overload
	def GetIndex(self, i: int) -> int:
		""""""
		...

	def GetModifiableIndex(self) -> Sequence[int]:
		""""""
		...

	@overload
	def SetSize(self, size: Sequence[int]) -> None:
		""""""
		...

	@overload
	def SetSize(self, i: int, sze: int) -> None:
		""""""
		...

	@overload
	def GetSize(self) -> Sequence[int]:
		""""""
		...

	@overload
	def GetSize(self, i: int) -> int:
		""""""
		...

	def GetModifiableSize(self) -> Sequence[int]:
		""""""
		...

	def GetUpperIndex(self) -> Sequence[int]:
		""""""
		...

	def SetUpperIndex(self, idx: Sequence[int]) -> None:
		""""""
		...

	def ComputeOffsetTable(self, offsetTable) -> None:
		""""""
		...

	@overload
	def IsInside(self, index: Sequence[int]) -> bool:
		""""""
		...

	@overload
	def IsInside(self, otherRegion: ImageRegion) -> bool:
		""""""
		...

	def GetNumberOfPixels(self) -> int:
		""""""
		...

	@overload
	def PadByRadius(self, radius: int) -> None:
		""""""
		...

	@overload
	def PadByRadius(self, radius) -> None:
		""""""
		...

	@overload
	def PadByRadius(self, radius: Sequence[int]) -> None:
		""""""
		...

	@overload
	def ShrinkByRadius(self, radius: int) -> bool:
		""""""
		...

	@overload
	def ShrinkByRadius(self, radius) -> bool:
		""""""
		...

	@overload
	def ShrinkByRadius(self, radius: Sequence[int]) -> bool:
		""""""
		...

	def Crop(self, region: ImageRegion) -> bool:
		""""""
		...

	def Slice(self, dim: int) -> ImageRegion:
		""""""
		...

