All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azure.appservice.kotlin.inputs.WindowsWebAppSlotSiteConfigArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.appservice.kotlin.inputs

import com.pulumi.azure.appservice.inputs.WindowsWebAppSlotSiteConfigArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property alwaysOn If this Windows Web App Slot is Always On enabled. Defaults to `true`.
 * @property apiDefinitionUrl The URL to the API Definition for this Windows Web App Slot.
 * @property apiManagementApiId The API Management API ID this Windows Web App Slot os associated with.
 * @property appCommandLine The App command line to launch.
 * @property applicationStack A `application_stack` block as defined above.
 * @property autoHealEnabled Should Auto heal rules be enabled. Required with `auto_heal_setting`.
 * @property autoHealSetting A `auto_heal_setting` block as defined above. Required with `auto_heal`.
 * @property autoSwapSlotName The Windows Web App Slot Name to automatically swap to when deployment to that slot is successfully completed.
 * > **Note:** This must be a valid slot name on the target Windows Web App Slot.
 * @property containerRegistryManagedIdentityClientId The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry.
 * @property containerRegistryUseManagedIdentity Should connections for Azure Container Registry use Managed Identity.
 * @property cors A `cors` block as defined above.
 * @property defaultDocuments Specifies a list of Default Documents for the Windows Web App Slot.
 * @property detailedErrorLoggingEnabled
 * @property ftpsState
 * @property handlerMappings One or more `handler_mapping` blocks as defined below.
 * @property healthCheckEvictionTimeInMin The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Only valid in conjunction with `health_check_path`.
 * @property healthCheckPath The path to the Health Check.
 * @property http2Enabled Should the HTTP2 be enabled?
 * @property ipRestrictionDefaultAction The Default action for traffic that does not match any `ip_restriction` rule. possible values include `Allow` and `Deny`. Defaults to `Allow`.
 * @property ipRestrictions One or more `ip_restriction` blocks as defined above.
 * @property loadBalancingMode The Site load balancing. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted.
 * @property localMysqlEnabled Use Local MySQL. Defaults to `false`.
 * @property managedPipelineMode Managed pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`.
 * @property minimumTlsVersion The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.
 * @property remoteDebuggingEnabled Should Remote Debugging be enabled. Defaults to `false`.
 * @property remoteDebuggingVersion The Remote Debugging Version. Possible values include `VS2017`, `VS2019` and `VS2022`
 * @property scmIpRestrictionDefaultAction The Default action for traffic that does not match any `scm_ip_restriction` rule. possible values include `Allow` and `Deny`. Defaults to `Allow`.
 * @property scmIpRestrictions One or more `scm_ip_restriction` blocks as defined above.
 * @property scmMinimumTlsVersion The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.
 * @property scmType
 * @property scmUseMainIpRestriction Should the Windows Web App Slot `ip_restriction` configuration be used for the SCM also.
 * @property use32BitWorker Should the Windows Web App Slot use a 32-bit worker. The default value varies from different service plans.
 * @property virtualApplications One or more `virtual_application` blocks as defined below.
 * @property vnetRouteAllEnabled Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to `false`.
 * @property websocketsEnabled Should Web Sockets be enabled. Defaults to `false`.
 * @property windowsFxVersion
 * @property workerCount The number of Workers for this Windows App Service Slot.
 */
public data class WindowsWebAppSlotSiteConfigArgs(
    public val alwaysOn: Output? = null,
    public val apiDefinitionUrl: Output? = null,
    public val apiManagementApiId: Output? = null,
    public val appCommandLine: Output? = null,
    public val applicationStack: Output? = null,
    public val autoHealEnabled: Output? = null,
    public val autoHealSetting: Output? = null,
    public val autoSwapSlotName: Output? = null,
    public val containerRegistryManagedIdentityClientId: Output? = null,
    public val containerRegistryUseManagedIdentity: Output? = null,
    public val cors: Output? = null,
    public val defaultDocuments: Output>? = null,
    public val detailedErrorLoggingEnabled: Output? = null,
    public val ftpsState: Output? = null,
    public val handlerMappings: Output>? = null,
    public val healthCheckEvictionTimeInMin: Output? = null,
    public val healthCheckPath: Output? = null,
    public val http2Enabled: Output? = null,
    public val ipRestrictionDefaultAction: Output? = null,
    public val ipRestrictions: Output>? = null,
    public val loadBalancingMode: Output? = null,
    public val localMysqlEnabled: Output? = null,
    public val managedPipelineMode: Output? = null,
    public val minimumTlsVersion: Output? = null,
    public val remoteDebuggingEnabled: Output? = null,
    public val remoteDebuggingVersion: Output? = null,
    public val scmIpRestrictionDefaultAction: Output? = null,
    public val scmIpRestrictions: Output>? =
        null,
    public val scmMinimumTlsVersion: Output? = null,
    public val scmType: Output? = null,
    public val scmUseMainIpRestriction: Output? = null,
    public val use32BitWorker: Output? = null,
    public val virtualApplications: Output>? =
        null,
    public val vnetRouteAllEnabled: Output? = null,
    public val websocketsEnabled: Output? = null,
    public val windowsFxVersion: Output? = null,
    public val workerCount: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.appservice.inputs.WindowsWebAppSlotSiteConfigArgs =
        com.pulumi.azure.appservice.inputs.WindowsWebAppSlotSiteConfigArgs.builder()
            .alwaysOn(alwaysOn?.applyValue({ args0 -> args0 }))
            .apiDefinitionUrl(apiDefinitionUrl?.applyValue({ args0 -> args0 }))
            .apiManagementApiId(apiManagementApiId?.applyValue({ args0 -> args0 }))
            .appCommandLine(appCommandLine?.applyValue({ args0 -> args0 }))
            .applicationStack(applicationStack?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .autoHealEnabled(autoHealEnabled?.applyValue({ args0 -> args0 }))
            .autoHealSetting(autoHealSetting?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .autoSwapSlotName(autoSwapSlotName?.applyValue({ args0 -> args0 }))
            .containerRegistryManagedIdentityClientId(
                containerRegistryManagedIdentityClientId?.applyValue({ args0 ->
                    args0
                }),
            )
            .containerRegistryUseManagedIdentity(
                containerRegistryUseManagedIdentity?.applyValue({ args0 ->
                    args0
                }),
            )
            .cors(cors?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .defaultDocuments(defaultDocuments?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .detailedErrorLoggingEnabled(detailedErrorLoggingEnabled?.applyValue({ args0 -> args0 }))
            .ftpsState(ftpsState?.applyValue({ args0 -> args0 }))
            .handlerMappings(
                handlerMappings?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .healthCheckEvictionTimeInMin(healthCheckEvictionTimeInMin?.applyValue({ args0 -> args0 }))
            .healthCheckPath(healthCheckPath?.applyValue({ args0 -> args0 }))
            .http2Enabled(http2Enabled?.applyValue({ args0 -> args0 }))
            .ipRestrictionDefaultAction(ipRestrictionDefaultAction?.applyValue({ args0 -> args0 }))
            .ipRestrictions(
                ipRestrictions?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .loadBalancingMode(loadBalancingMode?.applyValue({ args0 -> args0 }))
            .localMysqlEnabled(localMysqlEnabled?.applyValue({ args0 -> args0 }))
            .managedPipelineMode(managedPipelineMode?.applyValue({ args0 -> args0 }))
            .minimumTlsVersion(minimumTlsVersion?.applyValue({ args0 -> args0 }))
            .remoteDebuggingEnabled(remoteDebuggingEnabled?.applyValue({ args0 -> args0 }))
            .remoteDebuggingVersion(remoteDebuggingVersion?.applyValue({ args0 -> args0 }))
            .scmIpRestrictionDefaultAction(scmIpRestrictionDefaultAction?.applyValue({ args0 -> args0 }))
            .scmIpRestrictions(
                scmIpRestrictions?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .scmMinimumTlsVersion(scmMinimumTlsVersion?.applyValue({ args0 -> args0 }))
            .scmType(scmType?.applyValue({ args0 -> args0 }))
            .scmUseMainIpRestriction(scmUseMainIpRestriction?.applyValue({ args0 -> args0 }))
            .use32BitWorker(use32BitWorker?.applyValue({ args0 -> args0 }))
            .virtualApplications(
                virtualApplications?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .vnetRouteAllEnabled(vnetRouteAllEnabled?.applyValue({ args0 -> args0 }))
            .websocketsEnabled(websocketsEnabled?.applyValue({ args0 -> args0 }))
            .windowsFxVersion(windowsFxVersion?.applyValue({ args0 -> args0 }))
            .workerCount(workerCount?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [WindowsWebAppSlotSiteConfigArgs].
 */
@PulumiTagMarker
public class WindowsWebAppSlotSiteConfigArgsBuilder internal constructor() {
    private var alwaysOn: Output? = null

    private var apiDefinitionUrl: Output? = null

    private var apiManagementApiId: Output? = null

    private var appCommandLine: Output? = null

    private var applicationStack: Output? = null

    private var autoHealEnabled: Output? = null

    private var autoHealSetting: Output? = null

    private var autoSwapSlotName: Output? = null

    private var containerRegistryManagedIdentityClientId: Output? = null

    private var containerRegistryUseManagedIdentity: Output? = null

    private var cors: Output? = null

    private var defaultDocuments: Output>? = null

    private var detailedErrorLoggingEnabled: Output? = null

    private var ftpsState: Output? = null

    private var handlerMappings: Output>? = null

    private var healthCheckEvictionTimeInMin: Output? = null

    private var healthCheckPath: Output? = null

    private var http2Enabled: Output? = null

    private var ipRestrictionDefaultAction: Output? = null

    private var ipRestrictions: Output>? = null

    private var loadBalancingMode: Output? = null

    private var localMysqlEnabled: Output? = null

    private var managedPipelineMode: Output? = null

    private var minimumTlsVersion: Output? = null

    private var remoteDebuggingEnabled: Output? = null

    private var remoteDebuggingVersion: Output? = null

    private var scmIpRestrictionDefaultAction: Output? = null

    private var scmIpRestrictions: Output>? =
        null

    private var scmMinimumTlsVersion: Output? = null

    private var scmType: Output? = null

    private var scmUseMainIpRestriction: Output? = null

    private var use32BitWorker: Output? = null

    private var virtualApplications: Output>? =
        null

    private var vnetRouteAllEnabled: Output? = null

    private var websocketsEnabled: Output? = null

    private var windowsFxVersion: Output? = null

    private var workerCount: Output? = null

    /**
     * @param value If this Windows Web App Slot is Always On enabled. Defaults to `true`.
     */
    @JvmName("iadkqkmngygxiior")
    public suspend fun alwaysOn(`value`: Output) {
        this.alwaysOn = value
    }

    /**
     * @param value The URL to the API Definition for this Windows Web App Slot.
     */
    @JvmName("iuneicdhatfamkcj")
    public suspend fun apiDefinitionUrl(`value`: Output) {
        this.apiDefinitionUrl = value
    }

    /**
     * @param value The API Management API ID this Windows Web App Slot os associated with.
     */
    @JvmName("iauiyohtxakaepgp")
    public suspend fun apiManagementApiId(`value`: Output) {
        this.apiManagementApiId = value
    }

    /**
     * @param value The App command line to launch.
     */
    @JvmName("xrrcaerlsmfibspu")
    public suspend fun appCommandLine(`value`: Output) {
        this.appCommandLine = value
    }

    /**
     * @param value A `application_stack` block as defined above.
     */
    @JvmName("osybbywkleokqhfd")
    public suspend fun applicationStack(`value`: Output) {
        this.applicationStack = value
    }

    /**
     * @param value Should Auto heal rules be enabled. Required with `auto_heal_setting`.
     */
    @JvmName("alvoocvorgignspr")
    public suspend fun autoHealEnabled(`value`: Output) {
        this.autoHealEnabled = value
    }

    /**
     * @param value A `auto_heal_setting` block as defined above. Required with `auto_heal`.
     */
    @JvmName("rgohdwupoarxuasa")
    public suspend fun autoHealSetting(`value`: Output) {
        this.autoHealSetting = value
    }

    /**
     * @param value The Windows Web App Slot Name to automatically swap to when deployment to that slot is successfully completed.
     * > **Note:** This must be a valid slot name on the target Windows Web App Slot.
     */
    @JvmName("ygjoyphldmdyggcb")
    public suspend fun autoSwapSlotName(`value`: Output) {
        this.autoSwapSlotName = value
    }

    /**
     * @param value The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry.
     */
    @JvmName("wuvcytwarpqogias")
    public suspend fun containerRegistryManagedIdentityClientId(`value`: Output) {
        this.containerRegistryManagedIdentityClientId = value
    }

    /**
     * @param value Should connections for Azure Container Registry use Managed Identity.
     */
    @JvmName("jwptybaxiymdnrmy")
    public suspend fun containerRegistryUseManagedIdentity(`value`: Output) {
        this.containerRegistryUseManagedIdentity = value
    }

    /**
     * @param value A `cors` block as defined above.
     */
    @JvmName("xscouworgghetrni")
    public suspend fun cors(`value`: Output) {
        this.cors = value
    }

    /**
     * @param value Specifies a list of Default Documents for the Windows Web App Slot.
     */
    @JvmName("uttvqakcslinnmrm")
    public suspend fun defaultDocuments(`value`: Output>) {
        this.defaultDocuments = value
    }

    @JvmName("xhswvqlqaxnlyjpn")
    public suspend fun defaultDocuments(vararg values: Output) {
        this.defaultDocuments = Output.all(values.asList())
    }

    /**
     * @param values Specifies a list of Default Documents for the Windows Web App Slot.
     */
    @JvmName("nsswjehwxfmeiikl")
    public suspend fun defaultDocuments(values: List>) {
        this.defaultDocuments = Output.all(values)
    }

    /**
     * @param value
     */
    @JvmName("vpwnpfpykcrtlkif")
    public suspend fun detailedErrorLoggingEnabled(`value`: Output) {
        this.detailedErrorLoggingEnabled = value
    }

    /**
     * @param value
     */
    @JvmName("tvqffphblpajnnhe")
    public suspend fun ftpsState(`value`: Output) {
        this.ftpsState = value
    }

    /**
     * @param value One or more `handler_mapping` blocks as defined below.
     */
    @JvmName("slqrjvnxxtwwusxa")
    public suspend fun handlerMappings(`value`: Output>) {
        this.handlerMappings = value
    }

    @JvmName("vklwksnbqespgpxm")
    public suspend fun handlerMappings(vararg values: Output) {
        this.handlerMappings = Output.all(values.asList())
    }

    /**
     * @param values One or more `handler_mapping` blocks as defined below.
     */
    @JvmName("rvqgaddeqecgcpqy")
    public suspend fun handlerMappings(values: List>) {
        this.handlerMappings = Output.all(values)
    }

    /**
     * @param value The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Only valid in conjunction with `health_check_path`.
     */
    @JvmName("xlqjcrpqnqltqves")
    public suspend fun healthCheckEvictionTimeInMin(`value`: Output) {
        this.healthCheckEvictionTimeInMin = value
    }

    /**
     * @param value The path to the Health Check.
     */
    @JvmName("ldnmtkwocmhscncw")
    public suspend fun healthCheckPath(`value`: Output) {
        this.healthCheckPath = value
    }

    /**
     * @param value Should the HTTP2 be enabled?
     */
    @JvmName("qxcyeicwruotmdta")
    public suspend fun http2Enabled(`value`: Output) {
        this.http2Enabled = value
    }

    /**
     * @param value The Default action for traffic that does not match any `ip_restriction` rule. possible values include `Allow` and `Deny`. Defaults to `Allow`.
     */
    @JvmName("otcwsekopuyfqmwg")
    public suspend fun ipRestrictionDefaultAction(`value`: Output) {
        this.ipRestrictionDefaultAction = value
    }

    /**
     * @param value One or more `ip_restriction` blocks as defined above.
     */
    @JvmName("ugifdygolwqaufeq")
    public suspend fun ipRestrictions(`value`: Output>) {
        this.ipRestrictions = value
    }

    @JvmName("yworvyyorieiwbbb")
    public suspend fun ipRestrictions(vararg values: Output) {
        this.ipRestrictions = Output.all(values.asList())
    }

    /**
     * @param values One or more `ip_restriction` blocks as defined above.
     */
    @JvmName("tjpsrjbifqgctkku")
    public suspend fun ipRestrictions(values: List>) {
        this.ipRestrictions = Output.all(values)
    }

    /**
     * @param value The Site load balancing. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted.
     */
    @JvmName("rwvnfrghmggyuaax")
    public suspend fun loadBalancingMode(`value`: Output) {
        this.loadBalancingMode = value
    }

    /**
     * @param value Use Local MySQL. Defaults to `false`.
     */
    @JvmName("eusoatusjykrrihg")
    public suspend fun localMysqlEnabled(`value`: Output) {
        this.localMysqlEnabled = value
    }

    /**
     * @param value Managed pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`.
     */
    @JvmName("wgfdxvpxpkjrpvlh")
    public suspend fun managedPipelineMode(`value`: Output) {
        this.managedPipelineMode = value
    }

    /**
     * @param value The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.
     */
    @JvmName("phlcdloistetebwi")
    public suspend fun minimumTlsVersion(`value`: Output) {
        this.minimumTlsVersion = value
    }

    /**
     * @param value Should Remote Debugging be enabled. Defaults to `false`.
     */
    @JvmName("fslwjecjjmhnmogp")
    public suspend fun remoteDebuggingEnabled(`value`: Output) {
        this.remoteDebuggingEnabled = value
    }

    /**
     * @param value The Remote Debugging Version. Possible values include `VS2017`, `VS2019` and `VS2022`
     */
    @JvmName("axabyowvcwrkpiup")
    public suspend fun remoteDebuggingVersion(`value`: Output) {
        this.remoteDebuggingVersion = value
    }

    /**
     * @param value The Default action for traffic that does not match any `scm_ip_restriction` rule. possible values include `Allow` and `Deny`. Defaults to `Allow`.
     */
    @JvmName("qnoyqntabmpxrrjd")
    public suspend fun scmIpRestrictionDefaultAction(`value`: Output) {
        this.scmIpRestrictionDefaultAction = value
    }

    /**
     * @param value One or more `scm_ip_restriction` blocks as defined above.
     */
    @JvmName("umolufdmqrdhegfh")
    public suspend fun scmIpRestrictions(`value`: Output>) {
        this.scmIpRestrictions = value
    }

    @JvmName("lmtvnvnylmffkeah")
    public suspend fun scmIpRestrictions(vararg values: Output) {
        this.scmIpRestrictions = Output.all(values.asList())
    }

    /**
     * @param values One or more `scm_ip_restriction` blocks as defined above.
     */
    @JvmName("cruqlqxkisxointq")
    public suspend fun scmIpRestrictions(values: List>) {
        this.scmIpRestrictions = Output.all(values)
    }

    /**
     * @param value The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.
     */
    @JvmName("oqyvdmiyxhljxehp")
    public suspend fun scmMinimumTlsVersion(`value`: Output) {
        this.scmMinimumTlsVersion = value
    }

    /**
     * @param value
     */
    @JvmName("kiahqfhaitalocrp")
    public suspend fun scmType(`value`: Output) {
        this.scmType = value
    }

    /**
     * @param value Should the Windows Web App Slot `ip_restriction` configuration be used for the SCM also.
     */
    @JvmName("fwvbwgavjlwowaak")
    public suspend fun scmUseMainIpRestriction(`value`: Output) {
        this.scmUseMainIpRestriction = value
    }

    /**
     * @param value Should the Windows Web App Slot use a 32-bit worker. The default value varies from different service plans.
     */
    @JvmName("dolnjwsjkmjpctxd")
    public suspend fun use32BitWorker(`value`: Output) {
        this.use32BitWorker = value
    }

    /**
     * @param value One or more `virtual_application` blocks as defined below.
     */
    @JvmName("nrlvmahyhwcduxeg")
    public suspend fun virtualApplications(`value`: Output>) {
        this.virtualApplications = value
    }

    @JvmName("reurnvkeunblndpg")
    public suspend fun virtualApplications(vararg values: Output) {
        this.virtualApplications = Output.all(values.asList())
    }

    /**
     * @param values One or more `virtual_application` blocks as defined below.
     */
    @JvmName("mdqqoypqiswxmice")
    public suspend fun virtualApplications(values: List>) {
        this.virtualApplications = Output.all(values)
    }

    /**
     * @param value Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to `false`.
     */
    @JvmName("ucjajakoetyekaod")
    public suspend fun vnetRouteAllEnabled(`value`: Output) {
        this.vnetRouteAllEnabled = value
    }

    /**
     * @param value Should Web Sockets be enabled. Defaults to `false`.
     */
    @JvmName("qbfbbrvwbyrjlllb")
    public suspend fun websocketsEnabled(`value`: Output) {
        this.websocketsEnabled = value
    }

    /**
     * @param value
     */
    @JvmName("bhygsdjwdqvfcekp")
    public suspend fun windowsFxVersion(`value`: Output) {
        this.windowsFxVersion = value
    }

    /**
     * @param value The number of Workers for this Windows App Service Slot.
     */
    @JvmName("qnjdsgvryleyhxlq")
    public suspend fun workerCount(`value`: Output) {
        this.workerCount = value
    }

    /**
     * @param value If this Windows Web App Slot is Always On enabled. Defaults to `true`.
     */
    @JvmName("bxmhjjghvvpgbooo")
    public suspend fun alwaysOn(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.alwaysOn = mapped
    }

    /**
     * @param value The URL to the API Definition for this Windows Web App Slot.
     */
    @JvmName("pstgmbnrwbmhbpsf")
    public suspend fun apiDefinitionUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.apiDefinitionUrl = mapped
    }

    /**
     * @param value The API Management API ID this Windows Web App Slot os associated with.
     */
    @JvmName("cbkegcdpmrixddfp")
    public suspend fun apiManagementApiId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.apiManagementApiId = mapped
    }

    /**
     * @param value The App command line to launch.
     */
    @JvmName("icgraogqkndcapim")
    public suspend fun appCommandLine(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.appCommandLine = mapped
    }

    /**
     * @param value A `application_stack` block as defined above.
     */
    @JvmName("pgcauicrksnbtgnc")
    public suspend fun applicationStack(`value`: WindowsWebAppSlotSiteConfigApplicationStackArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.applicationStack = mapped
    }

    /**
     * @param argument A `application_stack` block as defined above.
     */
    @JvmName("kltylvlsfjvpawpe")
    public suspend fun applicationStack(argument: suspend WindowsWebAppSlotSiteConfigApplicationStackArgsBuilder.() -> Unit) {
        val toBeMapped = WindowsWebAppSlotSiteConfigApplicationStackArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.applicationStack = mapped
    }

    /**
     * @param value Should Auto heal rules be enabled. Required with `auto_heal_setting`.
     */
    @JvmName("geaqaidxhmmhlevk")
    public suspend fun autoHealEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoHealEnabled = mapped
    }

    /**
     * @param value A `auto_heal_setting` block as defined above. Required with `auto_heal`.
     */
    @JvmName("cdxqbslrdllmsjex")
    public suspend fun autoHealSetting(`value`: WindowsWebAppSlotSiteConfigAutoHealSettingArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoHealSetting = mapped
    }

    /**
     * @param argument A `auto_heal_setting` block as defined above. Required with `auto_heal`.
     */
    @JvmName("ugwwlirwogilnpim")
    public suspend fun autoHealSetting(argument: suspend WindowsWebAppSlotSiteConfigAutoHealSettingArgsBuilder.() -> Unit) {
        val toBeMapped = WindowsWebAppSlotSiteConfigAutoHealSettingArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.autoHealSetting = mapped
    }

    /**
     * @param value The Windows Web App Slot Name to automatically swap to when deployment to that slot is successfully completed.
     * > **Note:** This must be a valid slot name on the target Windows Web App Slot.
     */
    @JvmName("osnacacajhiyxhml")
    public suspend fun autoSwapSlotName(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autoSwapSlotName = mapped
    }

    /**
     * @param value The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry.
     */
    @JvmName("vutiwatwpsitmdva")
    public suspend fun containerRegistryManagedIdentityClientId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerRegistryManagedIdentityClientId = mapped
    }

    /**
     * @param value Should connections for Azure Container Registry use Managed Identity.
     */
    @JvmName("ejgnxpxuqfatwqpc")
    public suspend fun containerRegistryUseManagedIdentity(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.containerRegistryUseManagedIdentity = mapped
    }

    /**
     * @param value A `cors` block as defined above.
     */
    @JvmName("efxrtkurqsmskvbs")
    public suspend fun cors(`value`: WindowsWebAppSlotSiteConfigCorsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.cors = mapped
    }

    /**
     * @param argument A `cors` block as defined above.
     */
    @JvmName("lghpoiwltfbegdlo")
    public suspend fun cors(argument: suspend WindowsWebAppSlotSiteConfigCorsArgsBuilder.() -> Unit) {
        val toBeMapped = WindowsWebAppSlotSiteConfigCorsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.cors = mapped
    }

    /**
     * @param value Specifies a list of Default Documents for the Windows Web App Slot.
     */
    @JvmName("hjtpgrimnijxlmsq")
    public suspend fun defaultDocuments(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.defaultDocuments = mapped
    }

    /**
     * @param values Specifies a list of Default Documents for the Windows Web App Slot.
     */
    @JvmName("vdcffxnbpglrxcoq")
    public suspend fun defaultDocuments(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.defaultDocuments = mapped
    }

    /**
     * @param value
     */
    @JvmName("gmyijhwocvahpvyu")
    public suspend fun detailedErrorLoggingEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.detailedErrorLoggingEnabled = mapped
    }

    /**
     * @param value
     */
    @JvmName("ygamjyohktxhrkjk")
    public suspend fun ftpsState(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ftpsState = mapped
    }

    /**
     * @param value One or more `handler_mapping` blocks as defined below.
     */
    @JvmName("faywnwecnypxgped")
    public suspend fun handlerMappings(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.handlerMappings = mapped
    }

    /**
     * @param argument One or more `handler_mapping` blocks as defined below.
     */
    @JvmName("ajumintmpnoeoalb")
    public suspend fun handlerMappings(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigHandlerMappingArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.handlerMappings = mapped
    }

    /**
     * @param argument One or more `handler_mapping` blocks as defined below.
     */
    @JvmName("kvivsftatswvmkse")
    public suspend fun handlerMappings(vararg argument: suspend WindowsWebAppSlotSiteConfigHandlerMappingArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigHandlerMappingArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.handlerMappings = mapped
    }

    /**
     * @param argument One or more `handler_mapping` blocks as defined below.
     */
    @JvmName("iysffcpowrpxksma")
    public suspend fun handlerMappings(argument: suspend WindowsWebAppSlotSiteConfigHandlerMappingArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WindowsWebAppSlotSiteConfigHandlerMappingArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.handlerMappings = mapped
    }

    /**
     * @param values One or more `handler_mapping` blocks as defined below.
     */
    @JvmName("sssvllfylpofbmki")
    public suspend fun handlerMappings(vararg values: WindowsWebAppSlotSiteConfigHandlerMappingArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.handlerMappings = mapped
    }

    /**
     * @param value The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Only valid in conjunction with `health_check_path`.
     */
    @JvmName("xmuilwitdaqddnwy")
    public suspend fun healthCheckEvictionTimeInMin(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.healthCheckEvictionTimeInMin = mapped
    }

    /**
     * @param value The path to the Health Check.
     */
    @JvmName("mhkqkwmgghfnbres")
    public suspend fun healthCheckPath(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.healthCheckPath = mapped
    }

    /**
     * @param value Should the HTTP2 be enabled?
     */
    @JvmName("oeduiwmbcaxiuoat")
    public suspend fun http2Enabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.http2Enabled = mapped
    }

    /**
     * @param value The Default action for traffic that does not match any `ip_restriction` rule. possible values include `Allow` and `Deny`. Defaults to `Allow`.
     */
    @JvmName("cxpdedfbkinntcrh")
    public suspend fun ipRestrictionDefaultAction(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ipRestrictionDefaultAction = mapped
    }

    /**
     * @param value One or more `ip_restriction` blocks as defined above.
     */
    @JvmName("wifaovferedkftmt")
    public suspend fun ipRestrictions(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ipRestrictions = mapped
    }

    /**
     * @param argument One or more `ip_restriction` blocks as defined above.
     */
    @JvmName("eayusexmyxdpxshi")
    public suspend fun ipRestrictions(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigIpRestrictionArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.ipRestrictions = mapped
    }

    /**
     * @param argument One or more `ip_restriction` blocks as defined above.
     */
    @JvmName("euhhsmrxkldibwmo")
    public suspend fun ipRestrictions(vararg argument: suspend WindowsWebAppSlotSiteConfigIpRestrictionArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigIpRestrictionArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.ipRestrictions = mapped
    }

    /**
     * @param argument One or more `ip_restriction` blocks as defined above.
     */
    @JvmName("roradcahohimseoi")
    public suspend fun ipRestrictions(argument: suspend WindowsWebAppSlotSiteConfigIpRestrictionArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WindowsWebAppSlotSiteConfigIpRestrictionArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.ipRestrictions = mapped
    }

    /**
     * @param values One or more `ip_restriction` blocks as defined above.
     */
    @JvmName("qcqtwljkhokqhbaw")
    public suspend fun ipRestrictions(vararg values: WindowsWebAppSlotSiteConfigIpRestrictionArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.ipRestrictions = mapped
    }

    /**
     * @param value The Site load balancing. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted.
     */
    @JvmName("iyrwbuaykmujbywd")
    public suspend fun loadBalancingMode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.loadBalancingMode = mapped
    }

    /**
     * @param value Use Local MySQL. Defaults to `false`.
     */
    @JvmName("bubvsjbtqdshotyo")
    public suspend fun localMysqlEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.localMysqlEnabled = mapped
    }

    /**
     * @param value Managed pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`.
     */
    @JvmName("ukkmdrifbayayrqo")
    public suspend fun managedPipelineMode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.managedPipelineMode = mapped
    }

    /**
     * @param value The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.
     */
    @JvmName("hknagwwvofoxlqtf")
    public suspend fun minimumTlsVersion(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.minimumTlsVersion = mapped
    }

    /**
     * @param value Should Remote Debugging be enabled. Defaults to `false`.
     */
    @JvmName("pagfysoniqwnmfos")
    public suspend fun remoteDebuggingEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.remoteDebuggingEnabled = mapped
    }

    /**
     * @param value The Remote Debugging Version. Possible values include `VS2017`, `VS2019` and `VS2022`
     */
    @JvmName("htmgkqtrwjccfnxn")
    public suspend fun remoteDebuggingVersion(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.remoteDebuggingVersion = mapped
    }

    /**
     * @param value The Default action for traffic that does not match any `scm_ip_restriction` rule. possible values include `Allow` and `Deny`. Defaults to `Allow`.
     */
    @JvmName("advyylrluxpukngv")
    public suspend fun scmIpRestrictionDefaultAction(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scmIpRestrictionDefaultAction = mapped
    }

    /**
     * @param value One or more `scm_ip_restriction` blocks as defined above.
     */
    @JvmName("gukswfjokpchmgfb")
    public suspend fun scmIpRestrictions(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scmIpRestrictions = mapped
    }

    /**
     * @param argument One or more `scm_ip_restriction` blocks as defined above.
     */
    @JvmName("dofthoqhwtnjobdr")
    public suspend fun scmIpRestrictions(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigScmIpRestrictionArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.scmIpRestrictions = mapped
    }

    /**
     * @param argument One or more `scm_ip_restriction` blocks as defined above.
     */
    @JvmName("udckwwfjjtbuvlbe")
    public suspend fun scmIpRestrictions(vararg argument: suspend WindowsWebAppSlotSiteConfigScmIpRestrictionArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigScmIpRestrictionArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.scmIpRestrictions = mapped
    }

    /**
     * @param argument One or more `scm_ip_restriction` blocks as defined above.
     */
    @JvmName("aktssirjmdemifjc")
    public suspend fun scmIpRestrictions(argument: suspend WindowsWebAppSlotSiteConfigScmIpRestrictionArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WindowsWebAppSlotSiteConfigScmIpRestrictionArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.scmIpRestrictions = mapped
    }

    /**
     * @param values One or more `scm_ip_restriction` blocks as defined above.
     */
    @JvmName("ymurmtfgpemcojhs")
    public suspend fun scmIpRestrictions(vararg values: WindowsWebAppSlotSiteConfigScmIpRestrictionArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.scmIpRestrictions = mapped
    }

    /**
     * @param value The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`.
     */
    @JvmName("uppmgsrfkripgxij")
    public suspend fun scmMinimumTlsVersion(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scmMinimumTlsVersion = mapped
    }

    /**
     * @param value
     */
    @JvmName("eufmgduxvmajsouj")
    public suspend fun scmType(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scmType = mapped
    }

    /**
     * @param value Should the Windows Web App Slot `ip_restriction` configuration be used for the SCM also.
     */
    @JvmName("mauwnnkbgqoucabd")
    public suspend fun scmUseMainIpRestriction(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scmUseMainIpRestriction = mapped
    }

    /**
     * @param value Should the Windows Web App Slot use a 32-bit worker. The default value varies from different service plans.
     */
    @JvmName("ruooxfligwqyifmg")
    public suspend fun use32BitWorker(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.use32BitWorker = mapped
    }

    /**
     * @param value One or more `virtual_application` blocks as defined below.
     */
    @JvmName("plklapolwlrbkfrb")
    public suspend fun virtualApplications(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.virtualApplications = mapped
    }

    /**
     * @param argument One or more `virtual_application` blocks as defined below.
     */
    @JvmName("strquelbowrdrvqy")
    public suspend fun virtualApplications(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigVirtualApplicationArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.virtualApplications = mapped
    }

    /**
     * @param argument One or more `virtual_application` blocks as defined below.
     */
    @JvmName("phyvjghsabkukwyq")
    public suspend fun virtualApplications(vararg argument: suspend WindowsWebAppSlotSiteConfigVirtualApplicationArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WindowsWebAppSlotSiteConfigVirtualApplicationArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.virtualApplications = mapped
    }

    /**
     * @param argument One or more `virtual_application` blocks as defined below.
     */
    @JvmName("chxfmdjapsmcyhog")
    public suspend fun virtualApplications(argument: suspend WindowsWebAppSlotSiteConfigVirtualApplicationArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WindowsWebAppSlotSiteConfigVirtualApplicationArgsBuilder().applySuspend
                { argument() }.build(),
        )
        val mapped = of(toBeMapped)
        this.virtualApplications = mapped
    }

    /**
     * @param values One or more `virtual_application` blocks as defined below.
     */
    @JvmName("ycwlqnlwpuoaexei")
    public suspend fun virtualApplications(vararg values: WindowsWebAppSlotSiteConfigVirtualApplicationArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.virtualApplications = mapped
    }

    /**
     * @param value Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to `false`.
     */
    @JvmName("sdhdhlvmjqdgucma")
    public suspend fun vnetRouteAllEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vnetRouteAllEnabled = mapped
    }

    /**
     * @param value Should Web Sockets be enabled. Defaults to `false`.
     */
    @JvmName("eyasmccjedguoauc")
    public suspend fun websocketsEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.websocketsEnabled = mapped
    }

    /**
     * @param value
     */
    @JvmName("gsnyalvortuutwcv")
    public suspend fun windowsFxVersion(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.windowsFxVersion = mapped
    }

    /**
     * @param value The number of Workers for this Windows App Service Slot.
     */
    @JvmName("ymomhljghdfrmutk")
    public suspend fun workerCount(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.workerCount = mapped
    }

    internal fun build(): WindowsWebAppSlotSiteConfigArgs = WindowsWebAppSlotSiteConfigArgs(
        alwaysOn = alwaysOn,
        apiDefinitionUrl = apiDefinitionUrl,
        apiManagementApiId = apiManagementApiId,
        appCommandLine = appCommandLine,
        applicationStack = applicationStack,
        autoHealEnabled = autoHealEnabled,
        autoHealSetting = autoHealSetting,
        autoSwapSlotName = autoSwapSlotName,
        containerRegistryManagedIdentityClientId = containerRegistryManagedIdentityClientId,
        containerRegistryUseManagedIdentity = containerRegistryUseManagedIdentity,
        cors = cors,
        defaultDocuments = defaultDocuments,
        detailedErrorLoggingEnabled = detailedErrorLoggingEnabled,
        ftpsState = ftpsState,
        handlerMappings = handlerMappings,
        healthCheckEvictionTimeInMin = healthCheckEvictionTimeInMin,
        healthCheckPath = healthCheckPath,
        http2Enabled = http2Enabled,
        ipRestrictionDefaultAction = ipRestrictionDefaultAction,
        ipRestrictions = ipRestrictions,
        loadBalancingMode = loadBalancingMode,
        localMysqlEnabled = localMysqlEnabled,
        managedPipelineMode = managedPipelineMode,
        minimumTlsVersion = minimumTlsVersion,
        remoteDebuggingEnabled = remoteDebuggingEnabled,
        remoteDebuggingVersion = remoteDebuggingVersion,
        scmIpRestrictionDefaultAction = scmIpRestrictionDefaultAction,
        scmIpRestrictions = scmIpRestrictions,
        scmMinimumTlsVersion = scmMinimumTlsVersion,
        scmType = scmType,
        scmUseMainIpRestriction = scmUseMainIpRestriction,
        use32BitWorker = use32BitWorker,
        virtualApplications = virtualApplications,
        vnetRouteAllEnabled = vnetRouteAllEnabled,
        websocketsEnabled = websocketsEnabled,
        windowsFxVersion = windowsFxVersion,
        workerCount = workerCount,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy