# Interface methods for submodule: PowellOptimizerv4
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: PowellOptimizerv4
class PowellOptimizerv4Proxy(_ObjectToObjectOptimizerBaseTemplateProxy):
	@staticmethod
	def New():
		""""""
		...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

