def METHOD_NAME(self) -> MessageComponent:
    """Union[:class:`Button`, :class:`BaseSelectMenu`]: The component the user interacted with"""
    for action_row in self.message.components:
        for METHOD_NAME in action_row.children:
            if METHOD_NAME.custom_id == self.data.custom_id:
                return METHOD_NAME
    raise Exception("MessageInteraction is malformed - no component found")  # noqa: TRY002