# Interface methods for submodule: GradientDescentOptimizerBasev4Template
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import ObjectToObjectOptimizerBaseTemplateProxy as _ObjectToObjectOptimizerBaseTemplateProxy


# Interface methods for class: GradientDescentOptimizerBasev4Template
class GradientDescentOptimizerBasev4TemplateProxy(_ObjectToObjectOptimizerBaseTemplateProxy):
	def GetNameOfClass(self):
		""""""
		...

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

	def GetStopCondition(self):
		""""""
		...

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

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

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

	def GetStopConditionDescription(self) -> str:
		""""""
		...

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

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

	def ModifyGradientByScalesOverSubRange(self, subrange: Sequence[int]) -> None:
		""""""
		...

	def ModifyGradientByLearningRateOverSubRange(self, subrange: Sequence[int]) -> None:
		""""""
		...

