# Interface methods for submodule: DisplacementFieldTransform
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import TransformProxy as _TransformProxy


# Interface methods for class: DisplacementFieldTransform
class DisplacementFieldTransformProxy(_TransformProxy):
	def GetNameOfClass(self):
		""""""
		...

	@staticmethod
	def New():
		""""""
		...

	def Clone(self):
		""""""
		...

	def SetDisplacementField(self, field) -> None:
		""""""
		...

	def GetModifiableDisplacementField(self):
		""""""
		...

	def GetDisplacementField(self):
		""""""
		...

	def SetInverseDisplacementField(self, inverseField) -> None:
		""""""
		...

	def GetModifiableInverseDisplacementField(self):
		""""""
		...

	def GetInverseDisplacementField(self):
		""""""
		...

	def SetInterpolator(self, interpolator) -> None:
		""""""
		...

	def GetModifiableInterpolator(self):
		""""""
		...

	def GetInterpolator(self):
		""""""
		...

	def SetInverseInterpolator(self, interpolator) -> None:
		""""""
		...

	def GetModifiableInverseInterpolator(self):
		""""""
		...

	def GetInverseInterpolator(self):
		""""""
		...

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

	def TransformPoint(self, inputPoint: Sequence[float]) -> Sequence[float]:
		""""""
		...

	@overload
	def TransformVector(self, arg0: Sequence[float]) -> Sequence[float]:
		""""""
		...

	@overload
	def TransformVector(self, arg0):
		""""""
		...

	@overload
	def TransformVector(self, arg0: vnl_vector_fixed) -> vnl_vector_fixed:
		""""""
		...

	def TransformDiffusionTensor(self, arg0):
		""""""
		...

	@overload
	def TransformCovariantVector(self, arg0: Sequence[float]) -> Sequence[float]:
		""""""
		...

	@overload
	def TransformCovariantVector(self, arg0):
		""""""
		...

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

	def SetFixedParameters(self, arg0) -> None:
		""""""
		...

	@overload
	def ComputeJacobianWithRespectToParameters(self, arg0: Sequence[float], j) -> None:
		""""""
		...

	@overload
	def ComputeJacobianWithRespectToParameters(self, arg0: Sequence[int], j) -> None:
		""""""
		...

	@overload
	def ComputeJacobianWithRespectToPosition(self, point: Sequence[float], jacobian: vnl_matrix_fixed) -> None:
		""""""
		...

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

	def ComputeInverseJacobianWithRespectToPosition(self, point: Sequence[float], jacobian: vnl_matrix_fixed) -> None:
		""""""
		...

	@overload
	def GetInverseJacobianOfForwardFieldWithRespectToPosition(self, point: Sequence[float], jacobian: vnl_matrix_fixed, useSVD: bool = False) -> None:
		""""""
		...

	@overload
	def GetInverseJacobianOfForwardFieldWithRespectToPosition(self, index: Sequence[int], jacobian: vnl_matrix_fixed, useSVD: bool = False) -> None:
		""""""
		...

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

	def GetInverse(self, inverse) -> bool:
		""""""
		...

	def GetInverseTransform(self):
		""""""
		...

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

	def GetTransformCategory(self):
		""""""
		...

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

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

	def GetCoordinateTolerance(self) -> float:
		""""""
		...

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

	def GetDirectionTolerance(self) -> float:
		""""""
		...

