"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var camera_av_stream_management_element_exports = {};
__export(camera_av_stream_management_element_exports, {
  CameraAvStreamManagement: () => CameraAvStreamManagement
});
module.exports = __toCommonJS(camera_av_stream_management_element_exports);
var import_MatterDefinition = require("../MatterDefinition.js");
var import_elements = require("../../elements/index.js");
/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
const CameraAvStreamManagement = (0, import_elements.ClusterElement)(
  { name: "CameraAvStreamManagement", id: 1361, classification: "application" },
  (0, import_elements.AttributeElement)({ name: "ClusterRevision", id: 65533, type: "ClusterRevision", default: 1 }),
  (0, import_elements.AttributeElement)(
    { name: "FeatureMap", id: 65532, type: "FeatureMap" },
    (0, import_elements.FieldElement)({ name: "ADO", conformance: "O.a+", constraint: "0", title: "Audio" }),
    (0, import_elements.FieldElement)({ name: "VDO", conformance: "O.a+", constraint: "1", title: "Video" }),
    (0, import_elements.FieldElement)({ name: "SNP", conformance: "O.a+", constraint: "2", title: "Snapshot" }),
    (0, import_elements.FieldElement)({ name: "PRIV", conformance: "O", constraint: "3", title: "Privacy" }),
    (0, import_elements.FieldElement)({ name: "SPKR", conformance: "[ADO]", constraint: "4", title: "Speaker" }),
    (0, import_elements.FieldElement)({ name: "ICTL", conformance: "[VDO | SNP]", constraint: "5", title: "ImageControl" }),
    (0, import_elements.FieldElement)({ name: "WMARK", conformance: "[VDO | SNP]", constraint: "6", title: "Watermark" }),
    (0, import_elements.FieldElement)({ name: "OSD", conformance: "[VDO | SNP]", constraint: "7", title: "OnScreenDisplay" }),
    (0, import_elements.FieldElement)({ name: "STOR", conformance: "O", constraint: "8", title: "LocalStorage" }),
    (0, import_elements.FieldElement)({ name: "HDR", conformance: "[VDO | SNP]", constraint: "9", title: "HighDynamicRange" }),
    (0, import_elements.FieldElement)({ name: "NV", conformance: "[VDO | SNP]", constraint: "10", title: "NightVision" })
  ),
  (0, import_elements.AttributeElement)({ name: "MaxConcurrentEncoders", id: 0, type: "uint8", access: "R V", conformance: "VDO | SNP", quality: "F" }),
  (0, import_elements.AttributeElement)(
    { name: "MaxEncodedPixelRate", id: 1, type: "uint32", access: "R V", conformance: "VDO | SNP", quality: "F" }
  ),
  (0, import_elements.AttributeElement)({
    name: "VideoSensorParams",
    id: 2,
    type: "VideoSensorParamsStruct",
    access: "R V",
    conformance: "VDO",
    quality: "F"
  }),
  (0, import_elements.AttributeElement)({ name: "NightVisionUsesInfrared", id: 3, type: "bool", access: "R V", conformance: "NV", quality: "F" }),
  (0, import_elements.AttributeElement)({
    name: "MinViewportResolution",
    id: 4,
    type: "VideoResolutionStruct",
    access: "R V",
    conformance: "VDO",
    quality: "F"
  }),
  (0, import_elements.AttributeElement)(
    {
      name: "RateDistortionTradeOffPoints",
      id: 5,
      type: "list",
      access: "R V",
      conformance: "VDO",
      quality: "F"
    },
    (0, import_elements.FieldElement)({ name: "entry", type: "RateDistortionTradeOffPointsStruct" })
  ),
  (0, import_elements.AttributeElement)({ name: "MaxContentBufferSize", id: 6, type: "uint32", access: "R V", conformance: "M", quality: "F" }),
  (0, import_elements.AttributeElement)({
    name: "MicrophoneCapabilities",
    id: 7,
    type: "AudioCapabilitiesStruct",
    access: "R V",
    conformance: "ADO",
    quality: "F"
  }),
  (0, import_elements.AttributeElement)({
    name: "SpeakerCapabilities",
    id: 8,
    type: "AudioCapabilitiesStruct",
    access: "R V",
    conformance: "SPKR",
    quality: "F"
  }),
  (0, import_elements.AttributeElement)({
    name: "TwoWayTalkSupport",
    id: 9,
    type: "TwoWayTalkSupportTypeEnum",
    access: "R V",
    conformance: "SPKR",
    quality: "F"
  }),
  (0, import_elements.AttributeElement)(
    { name: "SnapshotCapabilities", id: 10, type: "list", access: "R V", conformance: "SNP", quality: "F" },
    (0, import_elements.FieldElement)({ name: "entry", type: "SnapshotCapabilitiesStruct" })
  ),
  (0, import_elements.AttributeElement)({ name: "MaxNetworkBandwidth", id: 11, type: "uint32", access: "R V", conformance: "M", quality: "F" }),
  (0, import_elements.AttributeElement)({ name: "CurrentFrameRate", id: 12, type: "uint16", access: "R V", conformance: "VDO" }),
  (0, import_elements.AttributeElement)({ name: "HdrModeEnabled", id: 13, type: "bool", access: "RW M", conformance: "HDR", quality: "N" }),
  (0, import_elements.AttributeElement)(
    { name: "SupportedStreamUsages", id: 14, type: "list", access: "R V", conformance: "M", quality: "F" },
    (0, import_elements.FieldElement)({ name: "entry", type: "StreamUsageEnum" })
  ),
  (0, import_elements.AttributeElement)(
    { name: "AllocatedVideoStreams", id: 15, type: "list", access: "R V", conformance: "VDO", quality: "N" },
    (0, import_elements.FieldElement)({ name: "entry", type: "VideoStreamStruct" })
  ),
  (0, import_elements.AttributeElement)(
    { name: "AllocatedAudioStreams", id: 16, type: "list", access: "R V", conformance: "ADO", quality: "N" },
    (0, import_elements.FieldElement)({ name: "entry", type: "AudioStreamStruct" })
  ),
  (0, import_elements.AttributeElement)(
    { name: "AllocatedSnapshotStreams", id: 17, type: "list", access: "R V", conformance: "SNP", quality: "N" },
    (0, import_elements.FieldElement)({ name: "entry", type: "SnapshotStreamStruct" })
  ),
  (0, import_elements.AttributeElement)(
    { name: "StreamUsagePriorities", id: 18, type: "list", access: "R V", conformance: "M", quality: "N" },
    (0, import_elements.FieldElement)({ name: "entry", type: "StreamUsageEnum" })
  ),
  (0, import_elements.AttributeElement)({
    name: "SoftRecordingPrivacyModeEnabled",
    id: 19,
    type: "bool",
    access: "RW VO",
    conformance: "PRIV",
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "SoftLivestreamPrivacyModeEnabled",
    id: 20,
    type: "bool",
    access: "RW VO",
    conformance: "PRIV",
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({ name: "HardPrivacyModeOn", id: 21, type: "bool", access: "R V", conformance: "O", default: true }),
  (0, import_elements.AttributeElement)({ name: "NightVision", id: 22, type: "TriStateAutoEnum", access: "RW M", conformance: "NV", quality: "N" }),
  (0, import_elements.AttributeElement)({ name: "NightVisionIllum", id: 23, type: "TriStateAutoEnum", access: "RW M", conformance: "[NV]", quality: "N" }),
  (0, import_elements.AttributeElement)({ name: "Viewport", id: 24, type: "ViewportStruct", access: "RW M", conformance: "VDO", quality: "N" }),
  (0, import_elements.AttributeElement)({ name: "SpeakerMuted", id: 25, type: "bool", access: "RW M", conformance: "SPKR", quality: "N" }),
  (0, import_elements.AttributeElement)({
    name: "SpeakerVolumeLevel",
    id: 26,
    type: "uint8",
    access: "RW M",
    conformance: "SPKR",
    constraint: "speakerMinLevel to speakerMaxLevel",
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "SpeakerMaxLevel",
    id: 27,
    type: "uint8",
    access: "R M",
    conformance: "SPKR",
    constraint: "speakerMinLevel to 254"
  }),
  (0, import_elements.AttributeElement)({
    name: "SpeakerMinLevel",
    id: 28,
    type: "uint8",
    access: "R M",
    conformance: "SPKR",
    constraint: "max speakerMaxLevel"
  }),
  (0, import_elements.AttributeElement)({ name: "MicrophoneMuted", id: 29, type: "bool", access: "RW M", conformance: "ADO", quality: "N" }),
  (0, import_elements.AttributeElement)({
    name: "MicrophoneVolumeLevel",
    id: 30,
    type: "uint8",
    access: "RW M",
    conformance: "ADO",
    constraint: "microphoneMinLevel to microphoneMaxLevel",
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "MicrophoneMaxLevel",
    id: 31,
    type: "uint8",
    access: "R M",
    conformance: "ADO",
    constraint: "microphoneMinLevel to 254"
  }),
  (0, import_elements.AttributeElement)({
    name: "MicrophoneMinLevel",
    id: 32,
    type: "uint8",
    access: "R M",
    conformance: "ADO",
    constraint: "max microphoneMaxLevel"
  }),
  (0, import_elements.AttributeElement)({
    name: "MicrophoneAgcEnabled",
    id: 33,
    type: "bool",
    access: "RW M",
    conformance: "[ADO]",
    default: true,
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "ImageRotation",
    id: 34,
    type: "uint16",
    access: "RW M",
    conformance: "[ICTL].b+",
    constraint: "max 359",
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "ImageFlipHorizontal",
    id: 35,
    type: "bool",
    access: "RW M",
    conformance: "[ICTL].b+",
    default: true,
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "ImageFlipVertical",
    id: 36,
    type: "bool",
    access: "RW M",
    conformance: "[ICTL].b+",
    default: true,
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "LocalVideoRecordingEnabled",
    id: 37,
    type: "bool",
    access: "RW M",
    conformance: "VDO & STOR",
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "LocalSnapshotRecordingEnabled",
    id: 38,
    type: "bool",
    access: "RW M",
    conformance: "SNP & STOR",
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "StatusLightEnabled",
    id: 39,
    type: "bool",
    access: "RW M",
    conformance: "O",
    default: true,
    quality: "N"
  }),
  (0, import_elements.AttributeElement)({
    name: "StatusLightBrightness",
    id: 40,
    type: "ThreeLevelAutoEnum",
    access: "RW M",
    conformance: "O",
    quality: "N"
  }),
  (0, import_elements.CommandElement)(
    {
      name: "AudioStreamAllocate",
      id: 0,
      access: "M",
      conformance: "ADO",
      direction: "request",
      response: "AudioStreamAllocateResponse"
    },
    (0, import_elements.FieldElement)({
      name: "StreamUsage",
      id: 0,
      type: "StreamUsageEnum",
      conformance: "M",
      constraint: "recording, analysis, liveView"
    }),
    (0, import_elements.FieldElement)({ name: "AudioCodec", id: 1, type: "AudioCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "ChannelCount", id: 2, type: "uint8", conformance: "M", constraint: "1 to 8" }),
    (0, import_elements.FieldElement)({ name: "SampleRate", id: 3, type: "uint32", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "BitRate", id: 4, type: "uint32", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "BitDepth", id: 5, type: "uint8", conformance: "M", constraint: "8, 16, 24, 32" })
  ),
  (0, import_elements.CommandElement)(
    { name: "AudioStreamAllocateResponse", id: 1, conformance: "ADO", direction: "response" },
    (0, import_elements.FieldElement)({ name: "AudioStreamId", id: 0, type: "AudioStreamID", conformance: "M" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "AudioStreamDeallocate",
      id: 2,
      access: "M",
      conformance: "ADO",
      direction: "request",
      response: "status"
    },
    (0, import_elements.FieldElement)({ name: "AudioStreamId", id: 0, type: "AudioStreamID", conformance: "M" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "VideoStreamAllocate",
      id: 3,
      access: "M",
      conformance: "VDO",
      direction: "request",
      response: "VideoStreamAllocateResponse"
    },
    (0, import_elements.FieldElement)({
      name: "StreamUsage",
      id: 0,
      type: "StreamUsageEnum",
      conformance: "M",
      constraint: "recording, analysis, liveView"
    }),
    (0, import_elements.FieldElement)({ name: "VideoCodec", id: 1, type: "VideoCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MinFrameRate", id: 2, type: "uint16", conformance: "M", constraint: "1 to maxFrameRate" }),
    (0, import_elements.FieldElement)({ name: "MaxFrameRate", id: 3, type: "uint16", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "MinResolution", id: 4, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MaxResolution", id: 5, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MinBitRate", id: 6, type: "uint32", conformance: "M", constraint: "1 to maxBitRate" }),
    (0, import_elements.FieldElement)({ name: "MaxBitRate", id: 7, type: "uint32", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "KeyFrameInterval", id: 8, type: "uint16", conformance: "M", constraint: "0 to 65500" }),
    (0, import_elements.FieldElement)({ name: "WatermarkEnabled", id: 9, type: "bool", conformance: "WMARK" }),
    (0, import_elements.FieldElement)({ name: "OsdEnabled", id: 10, type: "bool", conformance: "OSD" })
  ),
  (0, import_elements.CommandElement)(
    { name: "VideoStreamAllocateResponse", id: 4, conformance: "VDO", direction: "response" },
    (0, import_elements.FieldElement)({ name: "VideoStreamId", id: 0, type: "VideoStreamID", conformance: "M" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "VideoStreamModify",
      id: 5,
      access: "M",
      conformance: "VDO & (WMARK | OSD)",
      direction: "request",
      response: "status"
    },
    (0, import_elements.FieldElement)({ name: "VideoStreamId", id: 0, type: "VideoStreamID", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "WatermarkEnabled", id: 1, type: "bool", conformance: "[WMARK].d+" }),
    (0, import_elements.FieldElement)({ name: "OsdEnabled", id: 2, type: "bool", conformance: "[OSD].d+" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "VideoStreamDeallocate",
      id: 6,
      access: "M",
      conformance: "VDO",
      direction: "request",
      response: "status"
    },
    (0, import_elements.FieldElement)({ name: "VideoStreamId", id: 0, type: "VideoStreamID", conformance: "M" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "SnapshotStreamAllocate",
      id: 7,
      access: "M",
      conformance: "SNP",
      direction: "request",
      response: "SnapshotStreamAllocateResponse"
    },
    (0, import_elements.FieldElement)({ name: "ImageCodec", id: 0, type: "ImageCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MaxFrameRate", id: 1, type: "uint16", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "MinResolution", id: 2, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MaxResolution", id: 3, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "Quality", id: 4, type: "uint8", conformance: "M", constraint: "1 to 100" }),
    (0, import_elements.FieldElement)({ name: "WatermarkEnabled", id: 5, type: "bool", conformance: "WMARK" }),
    (0, import_elements.FieldElement)({ name: "OsdEnabled", id: 6, type: "bool", conformance: "OSD" })
  ),
  (0, import_elements.CommandElement)(
    { name: "SnapshotStreamAllocateResponse", id: 8, conformance: "SNP", direction: "response" },
    (0, import_elements.FieldElement)({ name: "SnapshotStreamId", id: 0, type: "SnapshotStreamID", conformance: "M" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "SnapshotStreamModify",
      id: 9,
      access: "M",
      conformance: "SNP & (WMARK | OSD)",
      direction: "request",
      response: "status"
    },
    (0, import_elements.FieldElement)({ name: "SnapshotStreamId", id: 0, type: "SnapshotStreamID", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "WatermarkEnabled", id: 1, type: "bool", conformance: "[WMARK].d+" }),
    (0, import_elements.FieldElement)({ name: "OsdEnabled", id: 2, type: "bool", conformance: "[OSD].d+" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "SnapshotStreamDeallocate",
      id: 10,
      access: "M",
      conformance: "SNP",
      direction: "request",
      response: "status"
    },
    (0, import_elements.FieldElement)({ name: "SnapshotStreamId", id: 0, type: "SnapshotStreamID", conformance: "M" })
  ),
  (0, import_elements.CommandElement)(
    {
      name: "SetStreamPriorities",
      id: 11,
      access: "A",
      conformance: "M",
      direction: "request",
      response: "status"
    },
    (0, import_elements.FieldElement)(
      { name: "StreamPriorities", id: 0, type: "list", conformance: "M", constraint: "desc" },
      (0, import_elements.FieldElement)({ name: "entry", type: "StreamUsageEnum" })
    )
  ),
  (0, import_elements.CommandElement)(
    {
      name: "CaptureSnapshot",
      id: 12,
      access: "O",
      conformance: "SNP",
      direction: "request",
      quality: "L",
      response: "CaptureSnapshotResponse"
    },
    (0, import_elements.FieldElement)({ name: "SnapshotStreamId", id: 0, type: "SnapshotStreamID", conformance: "M", quality: "X" }),
    (0, import_elements.FieldElement)({ name: "RequestedResolution", id: 1, type: "VideoResolutionStruct", conformance: "M" })
  ),
  (0, import_elements.CommandElement)(
    { name: "CaptureSnapshotResponse", id: 13, conformance: "SNP", direction: "response", quality: "L" },
    (0, import_elements.FieldElement)({ name: "Data", id: 0, type: "octstr", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "ImageCodec", id: 1, type: "ImageCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "Resolution", id: 2, type: "VideoResolutionStruct", conformance: "M" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "VideoCodecEnum", type: "enum8" },
    (0, import_elements.FieldElement)({ name: "H264", id: 0, conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "Hevc", id: 1, conformance: "O" }),
    (0, import_elements.FieldElement)({ name: "Vvc", id: 2, conformance: "O" }),
    (0, import_elements.FieldElement)({ name: "Av1", id: 3, conformance: "O" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "AudioCodecEnum", type: "enum8" },
    (0, import_elements.FieldElement)({ name: "Opus", id: 0, conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "AacLc", id: 1, conformance: "O" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "ImageCodecEnum", type: "enum8" },
    (0, import_elements.FieldElement)({ name: "Jpeg", id: 0, conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "Heic", id: 1, conformance: "O" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "TwoWayTalkSupportTypeEnum", type: "enum8" },
    (0, import_elements.FieldElement)({ name: "NotSupported", id: 0, conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "HalfDuplex", id: 1, conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "FullDuplex", id: 2, conformance: "M" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "TriStateAutoEnum", type: "enum8" },
    (0, import_elements.FieldElement)({ name: "Off", id: 0, conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "On", id: 1, conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "Auto", id: 2, conformance: "M" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "VideoSensorParamsStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "SensorWidth", id: 0, type: "uint16", conformance: "M", constraint: "min 64" }),
    (0, import_elements.FieldElement)({ name: "SensorHeight", id: 1, type: "uint16", conformance: "M", constraint: "min 64" }),
    (0, import_elements.FieldElement)({ name: "MaxFps", id: 2, type: "uint16", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "MaxHdrfps", id: 3, type: "uint16", conformance: "HDR", constraint: "1 to maxFps" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "VideoResolutionStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "Width", id: 0, type: "uint16", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "Height", id: 1, type: "uint16", conformance: "M", constraint: "min 1" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "RateDistortionTradeOffPointsStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "Codec", id: 0, type: "VideoCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "Resolution", id: 1, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MinBitRate", id: 2, type: "uint32", conformance: "M", constraint: "min 1" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "SnapshotCapabilitiesStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "Resolution", id: 0, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MaxFrameRate", id: 1, type: "uint16", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "ImageCodec", id: 2, type: "ImageCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "RequiresEncodedPixels", id: 3, type: "bool", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "RequiresHardwareEncoder", id: 4, type: "bool", conformance: "RequiresEncodedPixels == true" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "AudioCapabilitiesStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "MaxNumberOfChannels", id: 0, type: "uint8", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)(
      { name: "SupportedCodecs", id: 1, type: "list", conformance: "M", constraint: "min 1" },
      (0, import_elements.FieldElement)({ name: "entry", type: "AudioCodecEnum" })
    ),
    (0, import_elements.FieldElement)(
      { name: "SupportedSampleRates", id: 2, type: "list", conformance: "M", constraint: "min 1" },
      (0, import_elements.FieldElement)({ name: "entry", type: "uint32" })
    ),
    (0, import_elements.FieldElement)(
      { name: "SupportedBitDepths", id: 3, type: "list", conformance: "M", constraint: "min 1" },
      (0, import_elements.FieldElement)({ name: "entry", type: "uint8" })
    )
  ),
  (0, import_elements.DatatypeElement)(
    { name: "VideoStreamStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "VideoStreamId", id: 0, type: "VideoStreamID", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "StreamUsage", id: 1, type: "StreamUsageEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "VideoCodec", id: 2, type: "VideoCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MinFrameRate", id: 3, type: "uint16", conformance: "M", constraint: "1 to maxFrameRate" }),
    (0, import_elements.FieldElement)({ name: "MaxFrameRate", id: 4, type: "uint16", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "MinResolution", id: 5, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MaxResolution", id: 6, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MinBitRate", id: 7, type: "uint32", conformance: "M", constraint: "1 to maxBitRate" }),
    (0, import_elements.FieldElement)({ name: "MaxBitRate", id: 8, type: "uint32", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "KeyFrameInterval", id: 9, type: "uint16", conformance: "M", constraint: "0 to 65500" }),
    (0, import_elements.FieldElement)({ name: "WatermarkEnabled", id: 10, type: "bool", conformance: "WMARK", default: true }),
    (0, import_elements.FieldElement)({ name: "OsdEnabled", id: 11, type: "bool", conformance: "OSD", default: true }),
    (0, import_elements.FieldElement)({ name: "ReferenceCount", id: 12, type: "uint8", conformance: "M", default: 0 })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "AudioStreamStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "AudioStreamId", id: 0, type: "AudioStreamID", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "StreamUsage", id: 1, type: "StreamUsageEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "AudioCodec", id: 2, type: "AudioCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "ChannelCount", id: 3, type: "uint8", conformance: "M", constraint: "1 to 8" }),
    (0, import_elements.FieldElement)({ name: "SampleRate", id: 4, type: "uint32", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "BitRate", id: 5, type: "uint32", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "BitDepth", id: 6, type: "uint8", conformance: "M", constraint: "8, 16, 24, 32" }),
    (0, import_elements.FieldElement)({ name: "ReferenceCount", id: 7, type: "uint8", conformance: "M" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "SnapshotStreamStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "SnapshotStreamId", id: 0, type: "SnapshotStreamID", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "ImageCodec", id: 1, type: "ImageCodecEnum", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "FrameRate", id: 2, type: "uint16", conformance: "M", constraint: "min 1" }),
    (0, import_elements.FieldElement)({ name: "MinResolution", id: 3, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "MaxResolution", id: 4, type: "VideoResolutionStruct", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "Quality", id: 5, type: "uint8", conformance: "M", constraint: "1 to 100" }),
    (0, import_elements.FieldElement)({ name: "ReferenceCount", id: 6, type: "uint8", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "EncodedPixels", id: 7, type: "bool", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "HardwareEncoder", id: 8, type: "bool", conformance: "M" }),
    (0, import_elements.FieldElement)({ name: "WatermarkEnabled", id: 9, type: "bool", conformance: "WMARK" }),
    (0, import_elements.FieldElement)({ name: "OsdEnabled", id: 10, type: "bool", conformance: "OSD" })
  ),
  (0, import_elements.DatatypeElement)(
    { name: "AVMetadataStruct", type: "struct" },
    (0, import_elements.FieldElement)({ name: "UtcTime", id: 1, type: "epoch-us", conformance: "M", quality: "X" }),
    (0, import_elements.FieldElement)(
      { name: "MotionZonesActive", id: 2, type: "list", conformance: "O", constraint: "min 1" },
      (0, import_elements.FieldElement)({ name: "entry", type: "ZoneManagement.ZoneID" })
    ),
    (0, import_elements.FieldElement)({ name: "BlackAndWhiteActive", id: 3, type: "bool", conformance: "O" }),
    (0, import_elements.FieldElement)({ name: "UserDefined", id: 4, type: "octstr", conformance: "O", constraint: "max 256" })
  ),
  (0, import_elements.DatatypeElement)({ name: "VideoStreamID", type: "uint16" }),
  (0, import_elements.DatatypeElement)({ name: "AudioStreamID", type: "uint16" }),
  (0, import_elements.DatatypeElement)({ name: "SnapshotStreamID", type: "uint16" })
);
import_MatterDefinition.MatterDefinition.children.push(CameraAvStreamManagement);
//# sourceMappingURL=camera-av-stream-management.element.js.map
