def METHOD_NAME(self, state_props: StateProps) -> None:
    super(StateMap, self).METHOD_NAME(state_props)
    self.items_path = state_props.get(ItemsPath) or ItemsPath()
    self.item_selector = state_props.get(ItemSelector)
    self.parameters = state_props.get(Parameters)
    self.max_concurrency = state_props.get(MaxConcurrency) or MaxConcurrency()
    self.result_path = state_props.get(ResultPath)
    self.result_selector = state_props.get(ResultSelector)
    self.retry = state_props.get(RetryDecl)
    self.catch = state_props.get(CatchDecl)
    item_processor = state_props.get(ItemProcessor)
    iterator = state_props.get(Iterator)
    if item_processor and iterator:
        raise ValueError(
            f"Duplicate ItemProcessor/Iterator definitions in props '{state_props}'."
        )
    self.iteration_component = item_processor or iterator
    # TODO: error if parameters and itemselector both declared?
    if not self.iteration_component:
        raise ValueError(f"Missing ItemProcessor/Iterator definition in props '{state_props}'.")