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

#pragma once
#include <libfwupd/fwupd-build.h>
/**
 * FwupdRemoteKind:
 *
 * The kind of remote.
 */
typedef enum {
    /**
     * FWUPD_REMOTE_KIND_UNKNOWN:
     *
     * Unknown kind.
     */
    FWUPD_REMOTE_KIND_UNKNOWN,
    /**
     * FWUPD_REMOTE_KIND_DOWNLOAD:
     *
     * Requires files to be downloaded.
     */
    FWUPD_REMOTE_KIND_DOWNLOAD,
    /**
     * FWUPD_REMOTE_KIND_LOCAL:
     *
     * Reads files from the local machine.
     */
    FWUPD_REMOTE_KIND_LOCAL,
    /**
     * FWUPD_REMOTE_KIND_DIRECTORY:
     *
     * Reads directory from the local machine.
     */
    FWUPD_REMOTE_KIND_DIRECTORY,
}  FwupdRemoteKind;
#define FWUPD_REMOTE_KIND_LAST 4
const gchar *fwupd_remote_kind_to_string(FwupdRemoteKind val) G_GNUC_CONST;
FwupdRemoteKind fwupd_remote_kind_from_string(const gchar *val) G_GNUC_CONST G_GNUC_NON_NULL(1);
/**
 * FwupdRemoteFlags:
 *
 * The flags available for the remote.
 */
typedef enum {
    /**
     * FWUPD_REMOTE_FLAG_NONE:
     *
     * No flags set.
     */
    FWUPD_REMOTE_FLAG_NONE = 0,
    /**
     * FWUPD_REMOTE_FLAG_ENABLED:
     *
     * Is enabled.
     */
    FWUPD_REMOTE_FLAG_ENABLED = 1 << 0,
    /**
     * FWUPD_REMOTE_FLAG_APPROVAL_REQUIRED:
     *
     * Requires approval for each firmware.
     */
    FWUPD_REMOTE_FLAG_APPROVAL_REQUIRED = 1 << 1,
    /**
     * FWUPD_REMOTE_FLAG_AUTOMATIC_REPORTS:
     *
     * Send firmware reports automatically.
     */
    FWUPD_REMOTE_FLAG_AUTOMATIC_REPORTS = 1 << 2,
    /**
     * FWUPD_REMOTE_FLAG_AUTOMATIC_SECURITY_REPORTS:
     *
     * Send security reports automatically.
     */
    FWUPD_REMOTE_FLAG_AUTOMATIC_SECURITY_REPORTS = 1 << 3,
    /**
     * FWUPD_REMOTE_FLAG_ALLOW_P2P_METADATA:
     *
     * Use peer-to-peer locations for metadata.
     */
    FWUPD_REMOTE_FLAG_ALLOW_P2P_METADATA = 1 << 4,
    /**
     * FWUPD_REMOTE_FLAG_ALLOW_P2P_FIRMWARE:
     *
     * Use peer-to-peer locations for firmware.
     */
    FWUPD_REMOTE_FLAG_ALLOW_P2P_FIRMWARE = 1 << 5,
    /**
     * FWUPD_REMOTE_FLAG_NO_PHASED_UPDATES:
     *
     * Do not slow deployment using phased updates.
     */
    FWUPD_REMOTE_FLAG_NO_PHASED_UPDATES = 1 << 6,
    /**
     * FWUPD_REMOTE_FLAG_REQUIRES_AUTH:
     *
     * A username and/or password is required
     */
    FWUPD_REMOTE_FLAG_REQUIRES_AUTH = 1 << 7,
}  FwupdRemoteFlags;
const gchar *fwupd_remote_flag_to_string(FwupdRemoteFlags val) G_GNUC_CONST;
FwupdRemoteFlags fwupd_remote_flag_from_string(const gchar *val) G_GNUC_CONST G_GNUC_NON_NULL(1);
