///
/// BufferConfig.kt
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
/// https://github.com/mrousavy/nitro
/// Copyright © 2025 Marc Rousavy @ Margelo
///

package com.margelo.nitro.video

import androidx.annotation.Keep
import com.facebook.proguard.annotations.DoNotStrip
import com.margelo.nitro.core.*


/**
 * Represents the JavaScript object/struct "BufferConfig".
 */
@DoNotStrip
@Keep
data class BufferConfig
  @DoNotStrip
  @Keep
  constructor(
    @DoNotStrip
    @Keep
    val livePlayback: LivePlaybackParams?,
    @DoNotStrip
    @Keep
    val minBufferMs: Double?,
    @DoNotStrip
    @Keep
    val maxBufferMs: Double?,
    @DoNotStrip
    @Keep
    val bufferForPlaybackMs: Double?,
    @DoNotStrip
    @Keep
    val bufferForPlaybackAfterRebufferMs: Double?,
    @DoNotStrip
    @Keep
    val backBufferDurationMs: Double?,
    @DoNotStrip
    @Keep
    val preferredForwardBufferDurationMs: Double?,
    @DoNotStrip
    @Keep
    val preferredPeakBitRate: Double?,
    @DoNotStrip
    @Keep
    val preferredMaximumResolution: Resolution?,
    @DoNotStrip
    @Keep
    val preferredPeakBitRateForExpensiveNetworks: Double?,
    @DoNotStrip
    @Keep
    val preferredMaximumResolutionForExpensiveNetworks: Resolution?
  ) {
  /* main constructor */
}
