def METHOD_NAME(self, **kwargs) -> t.Dict[Button, bool]:
    """
    Args:
        **kwargs: Key: setting, value: required option or a list of them
            `sort=['rarity', 'level'], ...` or `sort='rarity'`,
            or `sort=None` means don't change this setting
    Returns:
        dict: Key: option_button, value: whether should be active
    """
    # Add defaults
    required_options = copy.deepcopy(self.settings_default)
    required_options.update(kwargs)
    # option_button: Whether should be active
    # {BUTTON_1: True, BUTTON_2: False, ...}
    status: t.Dict[Button, bool] = {}
    for key, option_button in self.settings.items():
        setting, option_name = key
        required = required_options[setting]
        if required is not None:
            required = required if isinstance(required, list) else [required]
            status[option_button] = option_name in required
    return status