# Interface methods for submodule: RegularStepGradientDescentOptimizerv4
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import GradientDescentOptimizerv4TemplateProxy as _GradientDescentOptimizerv4TemplateProxy


# Interface methods for class: RegularStepGradientDescentOptimizerv4
class RegularStepGradientDescentOptimizerv4Proxy(_GradientDescentOptimizerv4TemplateProxy):
	def GetNameOfClass(self):
		""""""
		...

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

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

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

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

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

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

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

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

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

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

	def StartOptimization(self, doOnlyInitialization: bool = False) -> None:
		""""""
		...

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

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

