// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi;

namespace Pulumiverse.Fortios.Outputs
{

    [OutputType]
    public sealed class SwitchcontrollerManagedswitchIgmpSnooping
    {
        /// <summary>
        /// Maximum time to retain a multicast snooping entry for which no packets have been seen (15 - 3600 sec, default = 300).
        /// </summary>
        public readonly int? AgingTime;
        /// <summary>
        /// Enable/disable unknown multicast flooding. Valid values: `enable`, `disable`.
        /// </summary>
        public readonly string? FloodUnknownMulticast;
        /// <summary>
        /// Enable/disable overriding the global IGMP snooping configuration. Valid values: `enable`, `disable`.
        /// </summary>
        public readonly string? LocalOverride;
        /// <summary>
        /// Configure IGMP snooping VLAN. The structure of `vlans` block is documented below.
        /// </summary>
        public readonly ImmutableArray<Outputs.SwitchcontrollerManagedswitchIgmpSnoopingVlan> Vlans;

        [OutputConstructor]
        private SwitchcontrollerManagedswitchIgmpSnooping(
            int? agingTime,

            string? floodUnknownMulticast,

            string? localOverride,

            ImmutableArray<Outputs.SwitchcontrollerManagedswitchIgmpSnoopingVlan> vlans)
        {
            AgingTime = agingTime;
            FloodUnknownMulticast = floodUnknownMulticast;
            LocalOverride = localOverride;
            Vlans = vlans;
        }
    }
}
