/* auto-generated, do not modify */
#pragma once
#include <fwupd-common.h>
typedef enum {
    FU_LOGITECH_HIDPP_FEATURE_ROOT = 0x0000,
    FU_LOGITECH_HIDPP_FEATURE_I_FEATURE_SET = 0x0001,
    FU_LOGITECH_HIDPP_FEATURE_I_FIRMWARE_INFO = 0x0003,
    FU_LOGITECH_HIDPP_FEATURE_GET_DEVICE_NAME_TYPE = 0x0005,
    FU_LOGITECH_HIDPP_FEATURE_DFU_CONTROL = 0x00C1,
    FU_LOGITECH_HIDPP_FEATURE_DFU_CONTROL_SIGNED = 0x00C2,
    FU_LOGITECH_HIDPP_FEATURE_DFU_CONTROL_BOLT = 0x00C3,
    FU_LOGITECH_HIDPP_FEATURE_DFU = 0x00D0,
    FU_LOGITECH_HIDPP_FEATURE_BATTERY_LEVEL_STATUS = 0x1000,
    FU_LOGITECH_HIDPP_FEATURE_UNIFIED_BATTERY = 0x1004,
    FU_LOGITECH_HIDPP_FEATURE_KBD_REPROGRAMMABLE_KEYS = 0x1B00,
    FU_LOGITECH_HIDPP_FEATURE_SPECIAL_KEYS_BUTTONS = 0x1B04,
    FU_LOGITECH_HIDPP_FEATURE_MOUSE_POINTER_BASIC = 0x2200,
    FU_LOGITECH_HIDPP_FEATURE_ADJUSTABLE_DPI = 0x2201,
    FU_LOGITECH_HIDPP_FEATURE_ADJUSTABLE_REPORT_RATE = 0x8060,
    FU_LOGITECH_HIDPP_FEATURE_COLOR_LED_EFFECTS = 0x8070,
    FU_LOGITECH_HIDPP_FEATURE_ONBOARD_PROFILES = 0x8100,
    FU_LOGITECH_HIDPP_FEATURE_MOUSE_BUTTON_SPY = 0x8110,
} FuLogitechHidppFeature;
const gchar *fu_logitech_hidpp_feature_to_string(FuLogitechHidppFeature val);
typedef enum {
    FU_LOGITECH_HIDPP_DEVICE_IDX_WIRED = 0x00,
    FU_LOGITECH_HIDPP_DEVICE_IDX_RECEIVER = 0xFF,
} FuLogitechHidppDeviceIdx;
const gchar *fu_logitech_hidpp_device_idx_to_string(FuLogitechHidppDeviceIdx val);
typedef enum {
    FU_LOGITECH_HIDPP_REPORT_ID_SHORT = 0x10,
    FU_LOGITECH_HIDPP_REPORT_ID_LONG = 0x11,
    FU_LOGITECH_HIDPP_REPORT_ID_VERY_LONG = 0x12,
} FuLogitechHidppReportId;
const gchar *fu_logitech_hidpp_report_id_to_string(FuLogitechHidppReportId val);
typedef enum {
    FU_LOGITECH_HIDPP_REGISTER_HIDPP_NOTIFICATIONS = 0x00,
    FU_LOGITECH_HIDPP_REGISTER_ENABLE_INDIVIDUAL_FEATURES = 0x01,
    FU_LOGITECH_HIDPP_REGISTER_BATTERY_STATUS = 0x07,
    FU_LOGITECH_HIDPP_REGISTER_BATTERY_MILEAGE = 0x0D,
    FU_LOGITECH_HIDPP_REGISTER_PROFILE = 0x0F,
    FU_LOGITECH_HIDPP_REGISTER_LED_STATUS = 0x51,
    FU_LOGITECH_HIDPP_REGISTER_LED_INTENSITY = 0x54,
    FU_LOGITECH_HIDPP_REGISTER_LED_COLOR = 0x57,
    FU_LOGITECH_HIDPP_REGISTER_OPTICAL_SENSOR_SETTINGS = 0x61,
    FU_LOGITECH_HIDPP_REGISTER_CURRENT_RESOLUTION = 0x63,
    FU_LOGITECH_HIDPP_REGISTER_USB_REFRESH_RATE = 0x64,
    FU_LOGITECH_HIDPP_REGISTER_GENERIC_MEMORY_MANAGEMENT = 0xA0,
    FU_LOGITECH_HIDPP_REGISTER_HOT_CONTROL = 0xA1,
    FU_LOGITECH_HIDPP_REGISTER_READ_MEMORY = 0xA2,
    FU_LOGITECH_HIDPP_REGISTER_DEVICE_CONNECTION_DISCONNECTION = 0xB2,
    FU_LOGITECH_HIDPP_REGISTER_PAIRING_INFORMATION = 0xB5,
    FU_LOGITECH_HIDPP_REGISTER_DEVICE_FIRMWARE_UPDATE_MODE = 0xF0,
    FU_LOGITECH_HIDPP_REGISTER_DEVICE_FIRMWARE_INFORMATION = 0xF1,
} FuLogitechHidppRegister;
const gchar *fu_logitech_hidpp_register_to_string(FuLogitechHidppRegister val);
typedef enum {
    FU_LOGITECH_HIDPP_SUBID_VENDOR_SPECIFIC_KEYS = 0x03,
    FU_LOGITECH_HIDPP_SUBID_POWER_KEYS = 0x04,
    FU_LOGITECH_HIDPP_SUBID_ROLLER = 0x05,
    FU_LOGITECH_HIDPP_SUBID_MOUSE_EXTRA_BUTTONS = 0x06,
    FU_LOGITECH_HIDPP_SUBID_BATTERY_CHARGING_LEVEL = 0x07,
    FU_LOGITECH_HIDPP_SUBID_USER_INTERFACE_EVENT = 0x08,
    FU_LOGITECH_HIDPP_SUBID_F_LOCK_STATUS = 0x09,
    FU_LOGITECH_HIDPP_SUBID_CALCULATOR_RESULT = 0x0A,
    FU_LOGITECH_HIDPP_SUBID_MENU_NAVIGATE = 0x0B,
    FU_LOGITECH_HIDPP_SUBID_FN_KEY = 0x0C,
    FU_LOGITECH_HIDPP_SUBID_BATTERY_MILEAGE = 0x0D,
    FU_LOGITECH_HIDPP_SUBID_UART_RX = 0x0E,
    FU_LOGITECH_HIDPP_SUBID_BACKLIGHT_DURATION_UPDATE = 0x17,
    FU_LOGITECH_HIDPP_SUBID_DEVICE_DISCONNECTION = 0x40,
    FU_LOGITECH_HIDPP_SUBID_DEVICE_CONNECTION = 0x41,
    FU_LOGITECH_HIDPP_SUBID_DEVICE_DISCOVERY = 0x42,
    FU_LOGITECH_HIDPP_SUBID_PIN_CODE_REQUEST = 0x43,
    FU_LOGITECH_HIDPP_SUBID_RECEIVER_WORKING_MODE = 0x44,
    FU_LOGITECH_HIDPP_SUBID_ERROR_MESSAGE = 0x45,
    FU_LOGITECH_HIDPP_SUBID_RF_LINK_CHANGE = 0x46,
    FU_LOGITECH_HIDPP_SUBID_HCI = 0x48,
    FU_LOGITECH_HIDPP_SUBID_LINK_QUALITY = 0x49,
    FU_LOGITECH_HIDPP_SUBID_DEVICE_LOCKING_CHANGED = 0x4a,
    FU_LOGITECH_HIDPP_SUBID_WIRELESS_DEVICE_CHANGE = 0x4B,
    FU_LOGITECH_HIDPP_SUBID_ACL = 0x51,
    FU_LOGITECH_HIDPP_SUBID_VOIP_TELEPHONY_EVENT = 0x5B,
    FU_LOGITECH_HIDPP_SUBID_LED = 0x60,
    FU_LOGITECH_HIDPP_SUBID_GESTURE_AND_AIR = 0x65,
    FU_LOGITECH_HIDPP_SUBID_TOUCHPAD_MULTI_TOUCH = 0x66,
    FU_LOGITECH_HIDPP_SUBID_TRACEABILITY = 0x78,
    FU_LOGITECH_HIDPP_SUBID_SET_REGISTER = 0x80,
    FU_LOGITECH_HIDPP_SUBID_GET_REGISTER = 0x81,
    FU_LOGITECH_HIDPP_SUBID_SET_LONG_REGISTER = 0x82,
    FU_LOGITECH_HIDPP_SUBID_GET_LONG_REGISTER = 0x83,
    FU_LOGITECH_HIDPP_SUBID_SET_VERY_LONG_REGISTER = 0x84,
    FU_LOGITECH_HIDPP_SUBID_GET_VERY_LONG_REGISTER = 0x85,
    FU_LOGITECH_HIDPP_SUBID_ERROR_MSG = 0x8F,
    FU_LOGITECH_HIDPP_SUBID_ERROR_MSG_20 = 0xFF,
} FuLogitechHidppSubid;
const gchar *fu_logitech_hidpp_subid_to_string(FuLogitechHidppSubid val);
typedef enum {
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_GENERAL_ERROR = 0x01,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_READ = 0x10,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE = 0x20,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_INVALID_ADDR = 0x21,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_VERIFY_FAIL = 0x22,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_NONZERO_START = 0x23,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_INVALID_CRC = 0x24,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_ERASE_PAGE = 0x30,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_ERASE_PAGE_INVALID_ADDR = 0x31,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_ERASE_PAGE_NONZERO_START = 0x33,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_GET_HW_PLATFORM_ID = 0x40,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_GET_FW_VERSION = 0x50,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_GET_CHECKSUM = 0x60,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_REBOOT = 0x70,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_GET_MEMINFO = 0x80,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_GET_BL_VERSION = 0x90,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_GET_INIT_FW_VERSION = 0xa0,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_READ_SIGNATURE = 0xb0,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_RAM_BUFFER = 0xc0,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_RAM_BUFFER_INVALID_ADDR = 0xc1,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_RAM_BUFFER_OVERFLOW = 0xc2,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_FLASH_RAM = 0xd0,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_FLASH_RAM_INVALID_ADDR = 0xd1,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_FLASH_RAM_WRONG_CRC = 0xd2,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_FLASH_RAM_PAGE0_INVALID = 0xd3,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_FLASH_RAM_INVALID_ORDER = 0xd4,
    FU_LOGITECH_HIDPP_BOOTLOADER_CMD_WRITE_SIGNATURE = 0xe0,
} FuLogitechHidppBootloaderCmd;
