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

com.pulumi.azurenative.network.kotlin.inputs.VpnClientConfigurationArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.network.kotlin.inputs

import com.pulumi.azurenative.network.inputs.VpnClientConfigurationArgs.builder
import com.pulumi.azurenative.network.kotlin.enums.VpnAuthenticationType
import com.pulumi.azurenative.network.kotlin.enums.VpnClientProtocol
import com.pulumi.core.Either
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * VpnClientConfiguration for P2S client.
 * @property aadAudience The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
 * @property aadIssuer The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
 * @property aadTenant The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
 * @property radiusServerAddress The radius server address property of the VirtualNetworkGateway resource for vpn client connection.
 * @property radiusServerSecret The radius secret property of the VirtualNetworkGateway resource for vpn client connection.
 * @property radiusServers The radiusServers property for multiple radius server configuration.
 * @property vngClientConnectionConfigurations per ip address pool connection policy for virtual network gateway P2S client.
 * @property vpnAuthenticationTypes VPN authentication types for the virtual network gateway..
 * @property vpnClientAddressPool The reference to the address space resource which represents Address space for P2S VpnClient.
 * @property vpnClientIpsecPolicies VpnClientIpsecPolicies for virtual network gateway P2S client.
 * @property vpnClientProtocols VpnClientProtocols for Virtual network gateway.
 * @property vpnClientRevokedCertificates VpnClientRevokedCertificate for Virtual network gateway.
 * @property vpnClientRootCertificates VpnClientRootCertificate for virtual network gateway.
 */
public data class VpnClientConfigurationArgs(
    public val aadAudience: Output? = null,
    public val aadIssuer: Output? = null,
    public val aadTenant: Output? = null,
    public val radiusServerAddress: Output? = null,
    public val radiusServerSecret: Output? = null,
    public val radiusServers: Output>? = null,
    public val vngClientConnectionConfigurations: Output>? =
        null,
    public val vpnAuthenticationTypes: Output>>? = null,
    public val vpnClientAddressPool: Output? = null,
    public val vpnClientIpsecPolicies: Output>? = null,
    public val vpnClientProtocols: Output>>? = null,
    public val vpnClientRevokedCertificates: Output>? = null,
    public val vpnClientRootCertificates: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.network.inputs.VpnClientConfigurationArgs =
        com.pulumi.azurenative.network.inputs.VpnClientConfigurationArgs.builder()
            .aadAudience(aadAudience?.applyValue({ args0 -> args0 }))
            .aadIssuer(aadIssuer?.applyValue({ args0 -> args0 }))
            .aadTenant(aadTenant?.applyValue({ args0 -> args0 }))
            .radiusServerAddress(radiusServerAddress?.applyValue({ args0 -> args0 }))
            .radiusServerSecret(radiusServerSecret?.applyValue({ args0 -> args0 }))
            .radiusServers(
                radiusServers?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .vngClientConnectionConfigurations(
                vngClientConnectionConfigurations?.applyValue({ args0 ->
                    args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) })
                }),
            )
            .vpnAuthenticationTypes(
                vpnAuthenticationTypes?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
                    })
                }),
            )
            .vpnClientAddressPool(
                vpnClientAddressPool?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .vpnClientIpsecPolicies(
                vpnClientIpsecPolicies?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .vpnClientProtocols(
                vpnClientProtocols?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.transform({ args0 -> args0 }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
                    })
                }),
            )
            .vpnClientRevokedCertificates(
                vpnClientRevokedCertificates?.applyValue({ args0 ->
                    args0.map({ args0 -> args0.let({ args0 -> args0.toJava() }) })
                }),
            )
            .vpnClientRootCertificates(
                vpnClientRootCertificates?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            ).build()
}

/**
 * Builder for [VpnClientConfigurationArgs].
 */
@PulumiTagMarker
public class VpnClientConfigurationArgsBuilder internal constructor() {
    private var aadAudience: Output? = null

    private var aadIssuer: Output? = null

    private var aadTenant: Output? = null

    private var radiusServerAddress: Output? = null

    private var radiusServerSecret: Output? = null

    private var radiusServers: Output>? = null

    private var vngClientConnectionConfigurations: Output>? =
        null

    private var vpnAuthenticationTypes: Output>>? = null

    private var vpnClientAddressPool: Output? = null

    private var vpnClientIpsecPolicies: Output>? = null

    private var vpnClientProtocols: Output>>? = null

    private var vpnClientRevokedCertificates: Output>? = null

    private var vpnClientRootCertificates: Output>? = null

    /**
     * @param value The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
     */
    @JvmName("oknxkncujmsarqvt")
    public suspend fun aadAudience(`value`: Output) {
        this.aadAudience = value
    }

    /**
     * @param value The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
     */
    @JvmName("rkpfyvcskdxffbiq")
    public suspend fun aadIssuer(`value`: Output) {
        this.aadIssuer = value
    }

    /**
     * @param value The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
     */
    @JvmName("wxnmpbehumlkjpod")
    public suspend fun aadTenant(`value`: Output) {
        this.aadTenant = value
    }

    /**
     * @param value The radius server address property of the VirtualNetworkGateway resource for vpn client connection.
     */
    @JvmName("gpkqayhrpwrdghlj")
    public suspend fun radiusServerAddress(`value`: Output) {
        this.radiusServerAddress = value
    }

    /**
     * @param value The radius secret property of the VirtualNetworkGateway resource for vpn client connection.
     */
    @JvmName("jexyibagpsfgmely")
    public suspend fun radiusServerSecret(`value`: Output) {
        this.radiusServerSecret = value
    }

    /**
     * @param value The radiusServers property for multiple radius server configuration.
     */
    @JvmName("pqvtbbbbjqtnkirc")
    public suspend fun radiusServers(`value`: Output>) {
        this.radiusServers = value
    }

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

    /**
     * @param values The radiusServers property for multiple radius server configuration.
     */
    @JvmName("dxaaxqenhabtueud")
    public suspend fun radiusServers(values: List>) {
        this.radiusServers = Output.all(values)
    }

    /**
     * @param value per ip address pool connection policy for virtual network gateway P2S client.
     */
    @JvmName("aupjtgnabpbqtkmf")
    public suspend fun vngClientConnectionConfigurations(`value`: Output>) {
        this.vngClientConnectionConfigurations = value
    }

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

    /**
     * @param values per ip address pool connection policy for virtual network gateway P2S client.
     */
    @JvmName("cshtgahhmwnfppbv")
    public suspend fun vngClientConnectionConfigurations(values: List>) {
        this.vngClientConnectionConfigurations = Output.all(values)
    }

    /**
     * @param value VPN authentication types for the virtual network gateway..
     */
    @JvmName("bekvoaodvpbwoypd")
    public suspend fun vpnAuthenticationTypes(`value`: Output>>) {
        this.vpnAuthenticationTypes = value
    }

    @JvmName("egysoqmyteptdarh")
    public suspend fun vpnAuthenticationTypes(vararg values: Output>) {
        this.vpnAuthenticationTypes = Output.all(values.asList())
    }

    /**
     * @param values VPN authentication types for the virtual network gateway..
     */
    @JvmName("ldsdoybujujhbdoc")
    public suspend fun vpnAuthenticationTypes(values: List>>) {
        this.vpnAuthenticationTypes = Output.all(values)
    }

    /**
     * @param value The reference to the address space resource which represents Address space for P2S VpnClient.
     */
    @JvmName("xdendkbudkccycio")
    public suspend fun vpnClientAddressPool(`value`: Output) {
        this.vpnClientAddressPool = value
    }

    /**
     * @param value VpnClientIpsecPolicies for virtual network gateway P2S client.
     */
    @JvmName("ubojxatcppadyped")
    public suspend fun vpnClientIpsecPolicies(`value`: Output>) {
        this.vpnClientIpsecPolicies = value
    }

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

    /**
     * @param values VpnClientIpsecPolicies for virtual network gateway P2S client.
     */
    @JvmName("lwrrmmwsioexjptr")
    public suspend fun vpnClientIpsecPolicies(values: List>) {
        this.vpnClientIpsecPolicies = Output.all(values)
    }

    /**
     * @param value VpnClientProtocols for Virtual network gateway.
     */
    @JvmName("vlswgroqtiyuuudp")
    public suspend fun vpnClientProtocols(`value`: Output>>) {
        this.vpnClientProtocols = value
    }

    @JvmName("ccwebhiohqxepvof")
    public suspend fun vpnClientProtocols(vararg values: Output>) {
        this.vpnClientProtocols = Output.all(values.asList())
    }

    /**
     * @param values VpnClientProtocols for Virtual network gateway.
     */
    @JvmName("kfdkgfmaexgqfkgg")
    public suspend fun vpnClientProtocols(values: List>>) {
        this.vpnClientProtocols = Output.all(values)
    }

    /**
     * @param value VpnClientRevokedCertificate for Virtual network gateway.
     */
    @JvmName("dpxrmmbivqxcrvro")
    public suspend fun vpnClientRevokedCertificates(`value`: Output>) {
        this.vpnClientRevokedCertificates = value
    }

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

    /**
     * @param values VpnClientRevokedCertificate for Virtual network gateway.
     */
    @JvmName("ryvibqcfvwulnosv")
    public suspend fun vpnClientRevokedCertificates(values: List>) {
        this.vpnClientRevokedCertificates = Output.all(values)
    }

    /**
     * @param value VpnClientRootCertificate for virtual network gateway.
     */
    @JvmName("aqhawvmevqtokypt")
    public suspend fun vpnClientRootCertificates(`value`: Output>) {
        this.vpnClientRootCertificates = value
    }

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

    /**
     * @param values VpnClientRootCertificate for virtual network gateway.
     */
    @JvmName("ggadmllarksqbvkp")
    public suspend fun vpnClientRootCertificates(values: List>) {
        this.vpnClientRootCertificates = Output.all(values)
    }

    /**
     * @param value The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
     */
    @JvmName("tyxphqscewcbrpdb")
    public suspend fun aadAudience(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.aadAudience = mapped
    }

    /**
     * @param value The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
     */
    @JvmName("ydctbfhoicdivlnu")
    public suspend fun aadIssuer(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.aadIssuer = mapped
    }

    /**
     * @param value The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
     */
    @JvmName("keabqweqijqkcmmp")
    public suspend fun aadTenant(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.aadTenant = mapped
    }

    /**
     * @param value The radius server address property of the VirtualNetworkGateway resource for vpn client connection.
     */
    @JvmName("gdkwglprrrftstpq")
    public suspend fun radiusServerAddress(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.radiusServerAddress = mapped
    }

    /**
     * @param value The radius secret property of the VirtualNetworkGateway resource for vpn client connection.
     */
    @JvmName("dsrgjnukhyjxylee")
    public suspend fun radiusServerSecret(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.radiusServerSecret = mapped
    }

    /**
     * @param value The radiusServers property for multiple radius server configuration.
     */
    @JvmName("knbesdtagygbbeah")
    public suspend fun radiusServers(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.radiusServers = mapped
    }

    /**
     * @param argument The radiusServers property for multiple radius server configuration.
     */
    @JvmName("ytyekuannevxslnm")
    public suspend fun radiusServers(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            RadiusServerArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.radiusServers = mapped
    }

    /**
     * @param argument The radiusServers property for multiple radius server configuration.
     */
    @JvmName("didwpcrbqcfkgkqg")
    public suspend fun radiusServers(vararg argument: suspend RadiusServerArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            RadiusServerArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.radiusServers = mapped
    }

    /**
     * @param argument The radiusServers property for multiple radius server configuration.
     */
    @JvmName("qmiajtclfnqbayuu")
    public suspend fun radiusServers(argument: suspend RadiusServerArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(RadiusServerArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.radiusServers = mapped
    }

    /**
     * @param values The radiusServers property for multiple radius server configuration.
     */
    @JvmName("bvmixyxmqxwxkneb")
    public suspend fun radiusServers(vararg values: RadiusServerArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.radiusServers = mapped
    }

    /**
     * @param value per ip address pool connection policy for virtual network gateway P2S client.
     */
    @JvmName("qsjwrnjksgqlknyx")
    public suspend fun vngClientConnectionConfigurations(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vngClientConnectionConfigurations = mapped
    }

    /**
     * @param argument per ip address pool connection policy for virtual network gateway P2S client.
     */
    @JvmName("cafpocrtskpudplo")
    public suspend fun vngClientConnectionConfigurations(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            VngClientConnectionConfigurationArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.vngClientConnectionConfigurations = mapped
    }

    /**
     * @param argument per ip address pool connection policy for virtual network gateway P2S client.
     */
    @JvmName("bhgxywlclydoqbqk")
    public suspend fun vngClientConnectionConfigurations(vararg argument: suspend VngClientConnectionConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            VngClientConnectionConfigurationArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.vngClientConnectionConfigurations = mapped
    }

    /**
     * @param argument per ip address pool connection policy for virtual network gateway P2S client.
     */
    @JvmName("uuacbvqwflthmsqu")
    public suspend fun vngClientConnectionConfigurations(argument: suspend VngClientConnectionConfigurationArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            VngClientConnectionConfigurationArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.vngClientConnectionConfigurations = mapped
    }

    /**
     * @param values per ip address pool connection policy for virtual network gateway P2S client.
     */
    @JvmName("dcavkkcmmwyfrbdi")
    public suspend fun vngClientConnectionConfigurations(vararg values: VngClientConnectionConfigurationArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.vngClientConnectionConfigurations = mapped
    }

    /**
     * @param value VPN authentication types for the virtual network gateway..
     */
    @JvmName("wvkfyolqifpccres")
    public suspend fun vpnAuthenticationTypes(`value`: List>?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vpnAuthenticationTypes = mapped
    }

    /**
     * @param values VPN authentication types for the virtual network gateway..
     */
    @JvmName("ceanlribmogrrrya")
    public suspend fun vpnAuthenticationTypes(vararg values: Either) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.vpnAuthenticationTypes = mapped
    }

    /**
     * @param value The reference to the address space resource which represents Address space for P2S VpnClient.
     */
    @JvmName("vggtkyujugespdtq")
    public suspend fun vpnClientAddressPool(`value`: AddressSpaceArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vpnClientAddressPool = mapped
    }

    /**
     * @param argument The reference to the address space resource which represents Address space for P2S VpnClient.
     */
    @JvmName("qnobmtpngpfstrot")
    public suspend fun vpnClientAddressPool(argument: suspend AddressSpaceArgsBuilder.() -> Unit) {
        val toBeMapped = AddressSpaceArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.vpnClientAddressPool = mapped
    }

    /**
     * @param value VpnClientIpsecPolicies for virtual network gateway P2S client.
     */
    @JvmName("nuftepahxijjutur")
    public suspend fun vpnClientIpsecPolicies(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vpnClientIpsecPolicies = mapped
    }

    /**
     * @param argument VpnClientIpsecPolicies for virtual network gateway P2S client.
     */
    @JvmName("rkbsvpbunkpyyjqi")
    public suspend fun vpnClientIpsecPolicies(argument: List Unit>) {
        val toBeMapped = argument.toList().map { IpsecPolicyArgsBuilder().applySuspend { it() }.build() }
        val mapped = of(toBeMapped)
        this.vpnClientIpsecPolicies = mapped
    }

    /**
     * @param argument VpnClientIpsecPolicies for virtual network gateway P2S client.
     */
    @JvmName("fjnwjuobsdkgtypk")
    public suspend fun vpnClientIpsecPolicies(vararg argument: suspend IpsecPolicyArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map { IpsecPolicyArgsBuilder().applySuspend { it() }.build() }
        val mapped = of(toBeMapped)
        this.vpnClientIpsecPolicies = mapped
    }

    /**
     * @param argument VpnClientIpsecPolicies for virtual network gateway P2S client.
     */
    @JvmName("fpjylbtmtoxixscg")
    public suspend fun vpnClientIpsecPolicies(argument: suspend IpsecPolicyArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(IpsecPolicyArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.vpnClientIpsecPolicies = mapped
    }

    /**
     * @param values VpnClientIpsecPolicies for virtual network gateway P2S client.
     */
    @JvmName("kwgxruycijnuxggq")
    public suspend fun vpnClientIpsecPolicies(vararg values: IpsecPolicyArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.vpnClientIpsecPolicies = mapped
    }

    /**
     * @param value VpnClientProtocols for Virtual network gateway.
     */
    @JvmName("bwocrhyvwimvqhqj")
    public suspend fun vpnClientProtocols(`value`: List>?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vpnClientProtocols = mapped
    }

    /**
     * @param values VpnClientProtocols for Virtual network gateway.
     */
    @JvmName("vrwbqjrnahpicumj")
    public suspend fun vpnClientProtocols(vararg values: Either) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.vpnClientProtocols = mapped
    }

    /**
     * @param value VpnClientRevokedCertificate for Virtual network gateway.
     */
    @JvmName("amtfbsmhmprweutp")
    public suspend fun vpnClientRevokedCertificates(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vpnClientRevokedCertificates = mapped
    }

    /**
     * @param argument VpnClientRevokedCertificate for Virtual network gateway.
     */
    @JvmName("irpkwupvwfvdlkwj")
    public suspend fun vpnClientRevokedCertificates(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            VpnClientRevokedCertificateArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.vpnClientRevokedCertificates = mapped
    }

    /**
     * @param argument VpnClientRevokedCertificate for Virtual network gateway.
     */
    @JvmName("ojvdmydnmaghklak")
    public suspend fun vpnClientRevokedCertificates(vararg argument: suspend VpnClientRevokedCertificateArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            VpnClientRevokedCertificateArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.vpnClientRevokedCertificates = mapped
    }

    /**
     * @param argument VpnClientRevokedCertificate for Virtual network gateway.
     */
    @JvmName("wmfwqelouookfrfe")
    public suspend fun vpnClientRevokedCertificates(argument: suspend VpnClientRevokedCertificateArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            VpnClientRevokedCertificateArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.vpnClientRevokedCertificates = mapped
    }

    /**
     * @param values VpnClientRevokedCertificate for Virtual network gateway.
     */
    @JvmName("rmckysxynbbwsjbh")
    public suspend fun vpnClientRevokedCertificates(vararg values: VpnClientRevokedCertificateArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.vpnClientRevokedCertificates = mapped
    }

    /**
     * @param value VpnClientRootCertificate for virtual network gateway.
     */
    @JvmName("uckhpyccxmqestit")
    public suspend fun vpnClientRootCertificates(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.vpnClientRootCertificates = mapped
    }

    /**
     * @param argument VpnClientRootCertificate for virtual network gateway.
     */
    @JvmName("xfxuatqsxfmfxxrd")
    public suspend fun vpnClientRootCertificates(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            VpnClientRootCertificateArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.vpnClientRootCertificates = mapped
    }

    /**
     * @param argument VpnClientRootCertificate for virtual network gateway.
     */
    @JvmName("qxpeetvnlipxvlos")
    public suspend fun vpnClientRootCertificates(vararg argument: suspend VpnClientRootCertificateArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            VpnClientRootCertificateArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.vpnClientRootCertificates = mapped
    }

    /**
     * @param argument VpnClientRootCertificate for virtual network gateway.
     */
    @JvmName("splavwjlajhcdndx")
    public suspend fun vpnClientRootCertificates(argument: suspend VpnClientRootCertificateArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            VpnClientRootCertificateArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.vpnClientRootCertificates = mapped
    }

    /**
     * @param values VpnClientRootCertificate for virtual network gateway.
     */
    @JvmName("bfldjqwqdoqithyn")
    public suspend fun vpnClientRootCertificates(vararg values: VpnClientRootCertificateArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.vpnClientRootCertificates = mapped
    }

    internal fun build(): VpnClientConfigurationArgs = VpnClientConfigurationArgs(
        aadAudience = aadAudience,
        aadIssuer = aadIssuer,
        aadTenant = aadTenant,
        radiusServerAddress = radiusServerAddress,
        radiusServerSecret = radiusServerSecret,
        radiusServers = radiusServers,
        vngClientConnectionConfigurations = vngClientConnectionConfigurations,
        vpnAuthenticationTypes = vpnAuthenticationTypes,
        vpnClientAddressPool = vpnClientAddressPool,
        vpnClientIpsecPolicies = vpnClientIpsecPolicies,
        vpnClientProtocols = vpnClientProtocols,
        vpnClientRevokedCertificates = vpnClientRevokedCertificates,
        vpnClientRootCertificates = vpnClientRootCertificates,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy