# Interface methods for submodule: ObjectToObjectMetric
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import ObjectToObjectMetricBaseTemplateProxy as _ObjectToObjectMetricBaseTemplateProxy


# Interface methods for class: ObjectToObjectMetric
class ObjectToObjectMetricProxy(_ObjectToObjectMetricBaseTemplateProxy):
	def GetNameOfClass(self):
		""""""
		...

	def Initialize(self) -> None:
		""""""
		...

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

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

	def SetParameters(self, params) -> None:
		""""""
		...

	def GetParameters(self):
		""""""
		...

	def HasLocalSupport(self) -> bool:
		""""""
		...

	def UpdateTransformParameters(self, derivative: Sequence[float], factor: float) -> None:
		""""""
		...

	def SetFixedTransform(self, _arg) -> None:
		""""""
		...

	def GetModifiableFixedTransform(self):
		""""""
		...

	def GetFixedTransform(self):
		""""""
		...

	def SetMovingTransform(self, _arg) -> None:
		""""""
		...

	def GetModifiableMovingTransform(self):
		""""""
		...

	def GetMovingTransform(self):
		""""""
		...

	def SetTransform(self, transform) -> None:
		""""""
		...

	def GetTransform(self):
		""""""
		...

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

	def SetVirtualDomain(self, spacing: Sequence[float], origin: Sequence[float], direction, region: ImageRegion) -> None:
		""""""
		...

	def SetVirtualDomainFromImage(self, virtualImage) -> None:
		""""""
		...

	def SupportsArbitraryVirtualDomainSamples(self) -> bool:
		""""""
		...

	def GetVirtualDomainTimeStamp(self):
		""""""
		...

	def GetVirtualSpacing(self) -> Sequence[float]:
		""""""
		...

	def GetVirtualOrigin(self) -> Sequence[float]:
		""""""
		...

	def GetVirtualDirection(self):
		""""""
		...

	def GetVirtualRegion(self) -> ImageRegion:
		""""""
		...

	def GetModifiableVirtualImage(self):
		""""""
		...

	def GetVirtualImage(self):
		""""""
		...

	def ComputeParameterOffsetFromVirtualIndex(self, index: Sequence[int], numberOfLocalParameters: int) -> int:
		""""""
		...

	def ComputeParameterOffsetFromVirtualPoint(self, point: Sequence[float], numberOfLocalParameters: int) -> int:
		""""""
		...

	@overload
	def IsInsideVirtualDomain(self, point: Sequence[float]) -> bool:
		""""""
		...

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

	def GetMetricCategory(self):
		""""""
		...

