

# Generated by the protocol buffer compiler.  DO NOT EDIT!
# sources: blickfeld/toolkit/config/preset.proto
# plugin: python-betterproto
from dataclasses import dataclass

import blickfeld_qb2.betterproto as betterproto
import blickfeld_qb2.betterproto.lib.google.protobuf as betterproto_lib_google_protobuf

from ... import base as __base__
from ...base import data as __base_data__


@dataclass(eq=False, repr=False)
class Preset(betterproto.Message):
    """
    A preset combines various settings relevant for a specific use-case. It
    indicates the type of application and its configuration in which the device
    is being used. Presets are always available for a specific license (e.g.
    only for QbProtect). The specific settings are not stored as part of this
    message.
    """

    name: str = betterproto.string_field(1)
    """Name of the preset."""

    details: str = betterproto.string_field(2)
    """Detailed explanation of the preset use-case."""

    required_license: "__base__.ProductVariant" = betterproto.enum_field(3)
    """Product variant for which the preset is licensed and intended."""

    version: "__base_data__.Version" = betterproto.message_field(4)
    """Version of the preset."""

    metadata: "betterproto_lib_google_protobuf.Struct" = betterproto.message_field(100)
    """Arbitrary metadata storage for client applications."""
