// <auto-generated/>

#nullable disable

using System;
using System.Collections.Generic;

namespace OpenAI.Realtime
{
    internal partial class InternalRealtimeServerVadTurnDetection : TurnDetectionOptions
    {
        public InternalRealtimeServerVadTurnDetection() : this(TurnDetectionKind.ServerVoiceActivityDetection, default, default, null, default, default, default)
        {
        }

        internal InternalRealtimeServerVadTurnDetection(TurnDetectionKind kind, bool? responseCreationEnabled, bool? responseInterruptionEnabled, IDictionary<string, BinaryData> additionalBinaryDataProperties, float? threshold, TimeSpan? prefixPaddingMs, TimeSpan? silenceDurationMs) : base(kind, responseCreationEnabled, responseInterruptionEnabled, additionalBinaryDataProperties)
        {
            Threshold = threshold;
            PrefixPaddingMs = prefixPaddingMs;
            SilenceDurationMs = silenceDurationMs;
        }

        public float? Threshold { get; set; }

        public TimeSpan? PrefixPaddingMs { get; set; }

        public TimeSpan? SilenceDurationMs { get; set; }
    }
}
