/*
 * This file is auto-generated, do not modify!
 *
 * SPDX-License-Identifier: LGPL-2.1-or-later
 */

#pragma once
#include <fu-input-stream.h>
/**
 * FuSynapticsPrometheusCmd:
 */
typedef enum {
    /**
     * FU_SYNAPTICS_PROMETHEUS_CMD_GET_VERSION:
     */
    FU_SYNAPTICS_PROMETHEUS_CMD_GET_VERSION = 0x01,
    /**
     * FU_SYNAPTICS_PROMETHEUS_CMD_BOOTLDR_PATCH:
     */
    FU_SYNAPTICS_PROMETHEUS_CMD_BOOTLDR_PATCH = 0x7d,
    /**
     * FU_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND:
     */
    FU_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND = 0x8e,
}  FuSynapticsPrometheusCmd;
/**
 * FuSynapticsPrometheusProduct:
 */
typedef enum {
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_PROMETHEUS:
     *
     * b1422
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_PROMETHEUS = 65,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_PROMETHEUSPBL:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_PROMETHEUSPBL = 66,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_PROMETHEUSMSBL:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_PROMETHEUSMSBL = 67,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TRITON:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TRITON = 69,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TRITONPBL:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TRITONPBL = 70,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TRITONMSBL:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TRITONMSBL = 71,
}  FuSynapticsPrometheusProduct;
/**
 * FuSynapticsPrometheusResult:
 */
typedef enum {
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_OK:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_OK = 0,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_OPERATION_CANCELED:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_OPERATION_CANCELED = 103,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_INVALID:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_INVALID = 110,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_BAD_PARAM:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_BAD_PARAM = 111,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_NULL_POINTER:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_NULL_POINTER = 112,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_UNEXPECTED_FORMAT:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_UNEXPECTED_FORMAT = 114,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_TIMEOUT:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_TIMEOUT = 117,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_OBJECT_DOESNT_EXIST:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_OBJECT_DOESNT_EXIST = 118,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_ERROR:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_GEN_ERROR = 119,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_SENSOR_MALFUNCTIONED:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_SENSOR_MALFUNCTIONED = 202,
    /**
     * FU_SYNAPTICS_PROMETHEUS_RESULT_SYS_OUT_OF_MEMORY:
     */
    FU_SYNAPTICS_PROMETHEUS_RESULT_SYS_OUT_OF_MEMORY = 602,
}  FuSynapticsPrometheusResult;
const gchar *fu_synaptics_prometheus_result_to_string(FuSynapticsPrometheusResult val) G_GNUC_CONST;
/**
 * FuSynapticsPrometheusProductType:
 */
typedef enum {
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_DENALI:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_DENALI,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_HAYES:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_HAYES,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_SHASTA:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_SHASTA,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_STELLER:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_STELLER,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_WHITNEY:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_WHITNEY,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_PROMETHEUS:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_PROMETHEUS,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_PACIFIC_PEAK:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_PACIFIC_PEAK,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_MORGAN:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_MORGAN,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_OX6101:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_OX6101,
    /**
     * FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_TRITON:
     */
    FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_TRITON,
}  FuSynapticsPrometheusProductType;
#define FU_SYNAPTICS_PROMETHEUS_PRODUCT_TYPE_LAST 10
/**
 * FuSynapticsPrometheusFirmwareTag:
 */
typedef enum {
    /**
     * FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_MFW_UPDATE_HEADER:
     */
    FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_MFW_UPDATE_HEADER = 0x0001,
    /**
     * FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_MFW_UPDATE_PAYLOAD:
     */
    FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_MFW_UPDATE_PAYLOAD = 0x0002,
    /**
     * FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_CFG_UPDATE_HEADER:
     */
    FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_CFG_UPDATE_HEADER = 0x0003,
    /**
     * FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_CFG_UPDATE_PAYLOAD:
     */
    FU_SYNAPTICS_PROMETHEUS_FIRMWARE_TAG_CFG_UPDATE_PAYLOAD = 0x0004,
}  FuSynapticsPrometheusFirmwareTag;
const gchar *fu_synaptics_prometheus_firmware_tag_to_string(FuSynapticsPrometheusFirmwareTag val) G_GNUC_CONST;
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusRequest;

FuStructSynapticsPrometheusRequest *fu_struct_synaptics_prometheus_request_ref(FuStructSynapticsPrometheusRequest *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_request_unref(FuStructSynapticsPrometheusRequest *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusRequest, fu_struct_synaptics_prometheus_request_unref)
FuStructSynapticsPrometheusRequest *fu_struct_synaptics_prometheus_request_new(void) G_GNUC_WARN_UNUSED_RESULT;
void fu_struct_synaptics_prometheus_request_set_cmd(FuStructSynapticsPrometheusRequest *st, FuSynapticsPrometheusCmd value) G_GNUC_NON_NULL(1);

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REQUEST_OFFSET_CMD 0x0
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REQUEST_SIZE 0x1
#endif

#ifndef __GI_SCANNER__
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusReplyGeneric;

FuStructSynapticsPrometheusReplyGeneric *fu_struct_synaptics_prometheus_reply_generic_ref(FuStructSynapticsPrometheusReplyGeneric *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_reply_generic_unref(FuStructSynapticsPrometheusReplyGeneric *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusReplyGeneric, fu_struct_synaptics_prometheus_reply_generic_unref)
FuStructSynapticsPrometheusReplyGeneric *fu_struct_synaptics_prometheus_reply_generic_parse(const guint8 *buf, gsize bufsz, gsize offset, GError **error) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_reply_generic_get_status(const FuStructSynapticsPrometheusReplyGeneric *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GENERIC_OFFSET_STATUS 0x0
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GENERIC_SIZE 0x2
#endif

#ifndef __GI_SCANNER__
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusReplyGetVersion;

FuStructSynapticsPrometheusReplyGetVersion *fu_struct_synaptics_prometheus_reply_get_version_ref(FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_reply_get_version_unref(FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusReplyGetVersion, fu_struct_synaptics_prometheus_reply_get_version_unref)
FuStructSynapticsPrometheusReplyGetVersion *fu_struct_synaptics_prometheus_reply_get_version_parse(const guint8 *buf, gsize bufsz, gsize offset, GError **error) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_reply_get_version_get_status(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_reply_get_version_get_buildtime(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_reply_get_version_get_buildnum(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_vmajor(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_vminor(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_target(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
FuSynapticsPrometheusProduct fu_struct_synaptics_prometheus_reply_get_version_get_product(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_siliconrev(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_formalrel(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_platform(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_patch(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
const guint8 *fu_struct_synaptics_prometheus_reply_get_version_get_serial_number(const FuStructSynapticsPrometheusReplyGetVersion *st, gsize *bufsz) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_security0(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_security1(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_reply_get_version_get_patchsig(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_iface(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
const guint8 *fu_struct_synaptics_prometheus_reply_get_version_get_otpsig(const FuStructSynapticsPrometheusReplyGetVersion *st, gsize *bufsz) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_reply_get_version_get_otpspare1(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_reply_get_version_get_device_type(const FuStructSynapticsPrometheusReplyGetVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_STATUS 0x0
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_BUILDTIME 0x2
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_BUILDNUM 0x6
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_VMAJOR 0xA
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_VMINOR 0xB
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_TARGET 0xC
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_PRODUCT 0xD
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_SILICONREV 0xE
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_FORMALREL 0xF
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_PLATFORM 0x10
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_PATCH 0x11
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_SERIAL_NUMBER 0x12
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_SECURITY0 0x18
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_SECURITY1 0x19
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_PATCHSIG 0x1A
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_IFACE 0x1E
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_OTPSIG 0x1F
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_OTPSPARE1 0x22
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_OFFSET_DEVICE_TYPE 0x25
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_SIZE_SERIAL_NUMBER 0x6
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_N_ELEMENTS_SERIAL_NUMBER 6
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_SIZE_OTPSIG 0x3
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_N_ELEMENTS_OTPSIG 3
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_GET_VERSION_SIZE 0x26
#endif

#ifndef __GI_SCANNER__
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusMfwHdr;

FuStructSynapticsPrometheusMfwHdr *fu_struct_synaptics_prometheus_mfw_hdr_ref(FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_mfw_hdr_unref(FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusMfwHdr, fu_struct_synaptics_prometheus_mfw_hdr_unref)
FuStructSynapticsPrometheusMfwHdr *fu_struct_synaptics_prometheus_mfw_hdr_new(void) G_GNUC_WARN_UNUSED_RESULT;
FuStructSynapticsPrometheusMfwHdr *fu_struct_synaptics_prometheus_mfw_hdr_parse_stream(GInputStream *stream, gsize offset, GError **error) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_mfw_hdr_get_product(const FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_mfw_hdr_get_id(const FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_mfw_hdr_get_buildtime(const FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_mfw_hdr_get_buildnum(const FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_mfw_hdr_get_vmajor(const FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_mfw_hdr_get_vminor(const FuStructSynapticsPrometheusMfwHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
const guint8 *fu_struct_synaptics_prometheus_mfw_hdr_get_unused(const FuStructSynapticsPrometheusMfwHdr *st, gsize *bufsz) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
void fu_struct_synaptics_prometheus_mfw_hdr_set_product(FuStructSynapticsPrometheusMfwHdr *st, guint32 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_mfw_hdr_set_id(FuStructSynapticsPrometheusMfwHdr *st, guint32 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_mfw_hdr_set_buildtime(FuStructSynapticsPrometheusMfwHdr *st, guint32 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_mfw_hdr_set_buildnum(FuStructSynapticsPrometheusMfwHdr *st, guint32 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_mfw_hdr_set_vmajor(FuStructSynapticsPrometheusMfwHdr *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_mfw_hdr_set_vminor(FuStructSynapticsPrometheusMfwHdr *st, guint8 value) G_GNUC_NON_NULL(1);
gboolean fu_struct_synaptics_prometheus_mfw_hdr_set_unused(FuStructSynapticsPrometheusMfwHdr *st, const guint8 *buf, gsize bufsz, GError **error) G_GNUC_NON_NULL(1, 2) G_GNUC_WARN_UNUSED_RESULT;

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_OFFSET_PRODUCT 0x0
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_OFFSET_ID 0x4
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_OFFSET_BUILDTIME 0x8
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_OFFSET_BUILDNUM 0xC
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_OFFSET_VMAJOR 0x10
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_OFFSET_VMINOR 0x11
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_OFFSET_UNUSED 0x12
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_SIZE_UNUSED 0x6
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_N_ELEMENTS_UNUSED 6
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_SIZE 0x18
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_DEFAULT_ID 0xFF
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_DEFAULT_BUILDTIME 0xFF
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_DEFAULT_BUILDNUM 0xFF
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_DEFAULT_VMAJOR 10
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_MFW_HDR_DEFAULT_VMINOR 1
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusHdr;

FuStructSynapticsPrometheusHdr *fu_struct_synaptics_prometheus_hdr_ref(FuStructSynapticsPrometheusHdr *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_hdr_unref(FuStructSynapticsPrometheusHdr *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusHdr, fu_struct_synaptics_prometheus_hdr_unref)
FuStructSynapticsPrometheusHdr *fu_struct_synaptics_prometheus_hdr_new(void) G_GNUC_WARN_UNUSED_RESULT;
FuStructSynapticsPrometheusHdr *fu_struct_synaptics_prometheus_hdr_parse_stream(GInputStream *stream, gsize offset, GError **error) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
FuSynapticsPrometheusFirmwareTag fu_struct_synaptics_prometheus_hdr_get_tag(const FuStructSynapticsPrometheusHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_hdr_get_bufsz(const FuStructSynapticsPrometheusHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
void fu_struct_synaptics_prometheus_hdr_set_tag(FuStructSynapticsPrometheusHdr *st, FuSynapticsPrometheusFirmwareTag value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_hdr_set_bufsz(FuStructSynapticsPrometheusHdr *st, guint32 value) G_GNUC_NON_NULL(1);

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_HDR_OFFSET_TAG 0x0
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_HDR_OFFSET_BUFSZ 0x2
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_HDR_SIZE 0x6
#endif

#ifndef __GI_SCANNER__
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusCfgHdr;

FuStructSynapticsPrometheusCfgHdr *fu_struct_synaptics_prometheus_cfg_hdr_ref(FuStructSynapticsPrometheusCfgHdr *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_cfg_hdr_unref(FuStructSynapticsPrometheusCfgHdr *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusCfgHdr, fu_struct_synaptics_prometheus_cfg_hdr_unref)
FuStructSynapticsPrometheusCfgHdr *fu_struct_synaptics_prometheus_cfg_hdr_parse_stream(GInputStream *stream, gsize offset, GError **error) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_cfg_hdr_get_product(const FuStructSynapticsPrometheusCfgHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_cfg_hdr_get_id1(const FuStructSynapticsPrometheusCfgHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_cfg_hdr_get_id2(const FuStructSynapticsPrometheusCfgHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_cfg_hdr_get_version(const FuStructSynapticsPrometheusCfgHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CFG_HDR_OFFSET_PRODUCT 0x0
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CFG_HDR_OFFSET_ID1 0x4
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CFG_HDR_OFFSET_ID2 0x8
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CFG_HDR_OFFSET_VERSION 0xC
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CFG_HDR_SIZE 0x10
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CFG_HDR_DEFAULT_PRODUCT 65
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusIotaConfigVersion;

FuStructSynapticsPrometheusIotaConfigVersion *fu_struct_synaptics_prometheus_iota_config_version_ref(FuStructSynapticsPrometheusIotaConfigVersion *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_iota_config_version_unref(FuStructSynapticsPrometheusIotaConfigVersion *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusIotaConfigVersion, fu_struct_synaptics_prometheus_iota_config_version_unref)
FuStructSynapticsPrometheusIotaConfigVersion *fu_struct_synaptics_prometheus_iota_config_version_parse(const guint8 *buf, gsize bufsz, gsize offset, GError **error) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_iota_config_version_get_config_id1(const FuStructSynapticsPrometheusIotaConfigVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_iota_config_version_get_config_id2(const FuStructSynapticsPrometheusIotaConfigVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_iota_config_version_get_version(const FuStructSynapticsPrometheusIotaConfigVersion *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_IOTA_CONFIG_VERSION_OFFSET_CONFIG_ID1 0x0
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_IOTA_CONFIG_VERSION_OFFSET_CONFIG_ID2 0x4
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_IOTA_CONFIG_VERSION_OFFSET_VERSION 0x8
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_IOTA_CONFIG_VERSION_SIZE 0x10
#endif

#ifndef __GI_SCANNER__
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusReplyIotaFindHdr;

FuStructSynapticsPrometheusReplyIotaFindHdr *fu_struct_synaptics_prometheus_reply_iota_find_hdr_ref(FuStructSynapticsPrometheusReplyIotaFindHdr *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_reply_iota_find_hdr_unref(FuStructSynapticsPrometheusReplyIotaFindHdr *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusReplyIotaFindHdr, fu_struct_synaptics_prometheus_reply_iota_find_hdr_unref)
FuStructSynapticsPrometheusReplyIotaFindHdr *fu_struct_synaptics_prometheus_reply_iota_find_hdr_parse(const guint8 *buf, gsize bufsz, gsize offset, GError **error) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_reply_iota_find_hdr_get_status(const FuStructSynapticsPrometheusReplyIotaFindHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_reply_iota_find_hdr_get_fullsize(const FuStructSynapticsPrometheusReplyIotaFindHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_reply_iota_find_hdr_get_nbytes(const FuStructSynapticsPrometheusReplyIotaFindHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_reply_iota_find_hdr_get_itype(const FuStructSynapticsPrometheusReplyIotaFindHdr *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_IOTA_FIND_HDR_OFFSET_STATUS 0x0
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_IOTA_FIND_HDR_OFFSET_FULLSIZE 0x2
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_IOTA_FIND_HDR_OFFSET_NBYTES 0x6
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_IOTA_FIND_HDR_OFFSET_ITYPE 0x8
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_REPLY_IOTA_FIND_HDR_SIZE 0xA
#endif

#ifndef __GI_SCANNER__
#endif
typedef struct {
  GByteArray *buf;
  guint refcount;
} FuStructSynapticsPrometheusCmdIotaFind;

FuStructSynapticsPrometheusCmdIotaFind *fu_struct_synaptics_prometheus_cmd_iota_find_ref(FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_cmd_iota_find_unref(FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FuStructSynapticsPrometheusCmdIotaFind, fu_struct_synaptics_prometheus_cmd_iota_find_unref)
FuStructSynapticsPrometheusCmdIotaFind *fu_struct_synaptics_prometheus_cmd_iota_find_new(void) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_cmd_iota_find_get_itype(const FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint16 fu_struct_synaptics_prometheus_cmd_iota_find_get_flags(const FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_cmd_iota_find_get_maxniotas(const FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint8 fu_struct_synaptics_prometheus_cmd_iota_find_get_firstidx(const FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_cmd_iota_find_get_offset(const FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
guint32 fu_struct_synaptics_prometheus_cmd_iota_find_get_nbytes(const FuStructSynapticsPrometheusCmdIotaFind *st) G_GNUC_NON_NULL(1) G_GNUC_WARN_UNUSED_RESULT;
void fu_struct_synaptics_prometheus_cmd_iota_find_set_itype(FuStructSynapticsPrometheusCmdIotaFind *st, guint16 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_cmd_iota_find_set_flags(FuStructSynapticsPrometheusCmdIotaFind *st, guint16 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_cmd_iota_find_set_maxniotas(FuStructSynapticsPrometheusCmdIotaFind *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_cmd_iota_find_set_firstidx(FuStructSynapticsPrometheusCmdIotaFind *st, guint8 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_cmd_iota_find_set_offset(FuStructSynapticsPrometheusCmdIotaFind *st, guint32 value) G_GNUC_NON_NULL(1);
void fu_struct_synaptics_prometheus_cmd_iota_find_set_nbytes(FuStructSynapticsPrometheusCmdIotaFind *st, guint32 value) G_GNUC_NON_NULL(1);

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND_OFFSET_ITYPE 0x0
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND_OFFSET_FLAGS 0x2
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND_OFFSET_MAXNIOTAS 0x4
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND_OFFSET_FIRSTIDX 0x5
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND_OFFSET_OFFSET 0x8
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND_OFFSET_NBYTES 0xC
#endif

#ifndef __GI_SCANNER__
#define FU_STRUCT_SYNAPTICS_PROMETHEUS_CMD_IOTA_FIND_SIZE 0x10
#endif

#ifndef __GI_SCANNER__
#endif
