# Interface methods for submodule: AmoebaOptimizer
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import SingleValuedNonLinearVnlOptimizerProxy as _SingleValuedNonLinearVnlOptimizerProxy


# Interface methods for class: AmoebaOptimizer
class AmoebaOptimizerProxy(_SingleValuedNonLinearVnlOptimizerProxy):
	@staticmethod
	def New():
		""""""
		...

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

	def GetNameOfClass(self):
		""""""
		...

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

	def SetCostFunction(self, costFunction) -> None:
		""""""
		...

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

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

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

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

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

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

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

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

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

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

	def SetInitialSimplexDelta(self, initialSimplexDelta, automaticInitialSimplex: bool = False) -> None:
		""""""
		...

	def GetInitialSimplexDelta(self):
		""""""
		...

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

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

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

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

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

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

	def GetOptimizer(self):
		""""""
		...

