# Interface methods for submodule: SingleValuedVnlCostFunctionAdaptor
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import vnl_cost_functionProxy as _vnl_cost_functionProxy


# Interface methods for class: SingleValuedVnlCostFunctionAdaptor
class SingleValuedVnlCostFunctionAdaptorProxy(_vnl_cost_functionProxy):
	def SetCostFunction(self, costFunction) -> None:
		""""""
		...

	def GetCostFunction(self):
		""""""
		...

	def f(self, inparameters: vnl_vector) -> float:
		""""""
		...

	def gradf(self, inparameters: vnl_vector, gradient: vnl_vector) -> None:
		""""""
		...

	def compute(self, x: vnl_vector, fun, g) -> None:
		""""""
		...

	def ConvertExternalToInternalGradient(self, input: Sequence[float], output: vnl_vector) -> None:
		""""""
		...

	def SetScales(self, scales: Sequence[float]) -> None:
		""""""
		...

	def SetNegateCostFunction(self, flag: bool) -> None:
		""""""
		...

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

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

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

	def AddObserver(self, event, arg1) -> int:
		""""""
		...

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

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

	def GetCachedCurrentParameters(self):
		""""""
		...

