VaporShell.IoTWireless.Classes.ps1

using namespace System
using namespace System.Collections
using namespace System.Collections.Generic
using namespace System.IO
using namespace System.Management.Automation
[CmdletBinding()]
Param()

Write-Verbose "Importing class 'IoTWirelessWirelessDeviceAbpV11'"

class IoTWirelessWirelessDeviceAbpV11 : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessDeviceAbpV11'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessdevice-abpv11.html'

    hidden [object] $_devAddr
    hidden [object] $_sessionKeys

    [string] $DevAddr
    [IoTWirelessWirelessDeviceSessionKeysAbpV11] $SessionKeys

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name DevAddr -Value {
            $this._devAddr
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._devAddr = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SessionKeys -Value {
            $this._sessionKeys
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessDeviceSessionKeysAbpV11], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sessionKeys = $value
        }
    }

    IoTWirelessWirelessDeviceAbpV11() : base() {}
    IoTWirelessWirelessDeviceAbpV11([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDeviceAbpV11([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessDeviceLoRaWANDevice'"

class IoTWirelessWirelessDeviceLoRaWANDevice : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessDeviceLoRaWANDevice'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessdevice-lorawandevice.html'

    hidden [object] $_devEui
    hidden [object] $_deviceProfileId
    hidden [object] $_serviceProfileId
    hidden [object] $_otaaV11
    hidden [object] $_otaaV10x
    hidden [object] $_abpV11
    hidden [object] $_abpV10x

    [string] $DevEui
    [string] $DeviceProfileId
    [string] $ServiceProfileId
    [IoTWirelessWirelessDeviceOtaaV11] $OtaaV11
    [IoTWirelessWirelessDeviceOtaaV10x] $OtaaV10x
    [IoTWirelessWirelessDeviceAbpV11] $AbpV11
    [IoTWirelessWirelessDeviceAbpV10x] $AbpV10x

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name DevEui -Value {
            $this._devEui
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._devEui = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DeviceProfileId -Value {
            $this._deviceProfileId
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._deviceProfileId = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ServiceProfileId -Value {
            $this._serviceProfileId
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._serviceProfileId = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name OtaaV11 -Value {
            $this._otaaV11
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessDeviceOtaaV11], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._otaaV11 = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name OtaaV10x -Value {
            $this._otaaV10x
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessDeviceOtaaV10x], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._otaaV10x = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name AbpV11 -Value {
            $this._abpV11
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessDeviceAbpV11], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._abpV11 = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name AbpV10x -Value {
            $this._abpV10x
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessDeviceAbpV10x], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._abpV10x = $value
        }
    }

    IoTWirelessWirelessDeviceLoRaWANDevice() : base() {}
    IoTWirelessWirelessDeviceLoRaWANDevice([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDeviceLoRaWANDevice([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessDeviceSessionKeysAbpV11'"

class IoTWirelessWirelessDeviceSessionKeysAbpV11 : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessDeviceSessionKeysAbpV11'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessdevice-sessionkeysabpv11.html'

    hidden [object] $_fNwkSIntKey
    hidden [object] $_sNwkSIntKey
    hidden [object] $_nwkSEncKey
    hidden [object] $_appSKey

    [string] $FNwkSIntKey
    [string] $SNwkSIntKey
    [string] $NwkSEncKey
    [string] $AppSKey

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name FNwkSIntKey -Value {
            $this._fNwkSIntKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._fNwkSIntKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SNwkSIntKey -Value {
            $this._sNwkSIntKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sNwkSIntKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name NwkSEncKey -Value {
            $this._nwkSEncKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._nwkSEncKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name AppSKey -Value {
            $this._appSKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._appSKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    IoTWirelessWirelessDeviceSessionKeysAbpV11() : base() {}
    IoTWirelessWirelessDeviceSessionKeysAbpV11([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDeviceSessionKeysAbpV11([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessDeviceProfileLoRaWANDeviceProfile'"

class IoTWirelessDeviceProfileLoRaWANDeviceProfile : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessDeviceProfileLoRaWANDeviceProfile'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-deviceprofile-lorawandeviceprofile.html'

    hidden [object] $_supportsClassB
    hidden [object] $_classBTimeout
    hidden [object] $_pingSlotPeriod
    hidden [object] $_pingSlotDr
    hidden [object] $_pingSlotFreq
    hidden [object] $_supportsClassC
    hidden [object] $_classCTimeout
    hidden [object] $_macVersion
    hidden [object] $_regParamsRevision
    hidden [object] $_maxEirp
    hidden [object] $_maxDutyCycle
    hidden [object] $_supportsJoin
    hidden [object] $_rfRegion
    hidden [object] $_supports32BitFCnt

    [bool] $SupportsClassB
    [int] $ClassBTimeout
    [int] $PingSlotPeriod
    [int] $PingSlotDr
    [int] $PingSlotFreq
    [bool] $SupportsClassC
    [int] $ClassCTimeout
    [string] $MacVersion
    [string] $RegParamsRevision
    [int] $MaxEirp
    [int] $MaxDutyCycle
    [bool] $SupportsJoin
    [string] $RfRegion
    [bool] $Supports32BitFCnt

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name SupportsClassB -Value {
            $this._supportsClassB
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._supportsClassB = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ClassBTimeout -Value {
            $this._classBTimeout
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._classBTimeout = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PingSlotPeriod -Value {
            $this._pingSlotPeriod
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._pingSlotPeriod = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PingSlotDr -Value {
            $this._pingSlotDr
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._pingSlotDr = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PingSlotFreq -Value {
            $this._pingSlotFreq
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._pingSlotFreq = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SupportsClassC -Value {
            $this._supportsClassC
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._supportsClassC = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ClassCTimeout -Value {
            $this._classCTimeout
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._classCTimeout = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MacVersion -Value {
            $this._macVersion
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._macVersion = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RegParamsRevision -Value {
            $this._regParamsRevision
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._regParamsRevision = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MaxEirp -Value {
            $this._maxEirp
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._maxEirp = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MaxDutyCycle -Value {
            $this._maxDutyCycle
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._maxDutyCycle = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SupportsJoin -Value {
            $this._supportsJoin
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._supportsJoin = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RfRegion -Value {
            $this._rfRegion
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._rfRegion = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Supports32BitFCnt -Value {
            $this._supports32BitFCnt
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._supports32BitFCnt = $value
        }
    }

    IoTWirelessDeviceProfileLoRaWANDeviceProfile() : base() {}
    IoTWirelessDeviceProfileLoRaWANDeviceProfile([IDictionary] $props) : base($props) {}
    IoTWirelessDeviceProfileLoRaWANDeviceProfile([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessDeviceAbpV10x'"

class IoTWirelessWirelessDeviceAbpV10x : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessDeviceAbpV10x'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessdevice-abpv10x.html'

    hidden [object] $_devAddr
    hidden [object] $_sessionKeys

    [string] $DevAddr
    [IoTWirelessWirelessDeviceSessionKeysAbpV10x] $SessionKeys

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name DevAddr -Value {
            $this._devAddr
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._devAddr = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SessionKeys -Value {
            $this._sessionKeys
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessDeviceSessionKeysAbpV10x], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sessionKeys = $value
        }
    }

    IoTWirelessWirelessDeviceAbpV10x() : base() {}
    IoTWirelessWirelessDeviceAbpV10x([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDeviceAbpV10x([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessGatewayLoRaWANGateway'"

class IoTWirelessWirelessGatewayLoRaWANGateway : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessGatewayLoRaWANGateway'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessgateway-lorawangateway.html'

    hidden [object] $_gatewayEui
    hidden [object] $_rfRegion

    [string] $GatewayEui
    [string] $RfRegion

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name GatewayEui -Value {
            $this._gatewayEui
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._gatewayEui = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RfRegion -Value {
            $this._rfRegion
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._rfRegion = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    IoTWirelessWirelessGatewayLoRaWANGateway() : base() {}
    IoTWirelessWirelessGatewayLoRaWANGateway([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessGatewayLoRaWANGateway([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessDeviceOtaaV11'"

class IoTWirelessWirelessDeviceOtaaV11 : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessDeviceOtaaV11'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessdevice-otaav11.html'

    hidden [object] $_appKey
    hidden [object] $_nwkKey
    hidden [object] $_joinEui

    [string] $AppKey
    [string] $NwkKey
    [string] $JoinEui

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name AppKey -Value {
            $this._appKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._appKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name NwkKey -Value {
            $this._nwkKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._nwkKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name JoinEui -Value {
            $this._joinEui
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._joinEui = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    IoTWirelessWirelessDeviceOtaaV11() : base() {}
    IoTWirelessWirelessDeviceOtaaV11([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDeviceOtaaV11([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessDeviceSessionKeysAbpV10x'"

class IoTWirelessWirelessDeviceSessionKeysAbpV10x : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessDeviceSessionKeysAbpV10x'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessdevice-sessionkeysabpv10x.html'

    hidden [object] $_nwkSKey
    hidden [object] $_appSKey

    [string] $NwkSKey
    [string] $AppSKey

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name NwkSKey -Value {
            $this._nwkSKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._nwkSKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name AppSKey -Value {
            $this._appSKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._appSKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    IoTWirelessWirelessDeviceSessionKeysAbpV10x() : base() {}
    IoTWirelessWirelessDeviceSessionKeysAbpV10x([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDeviceSessionKeysAbpV10x([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessServiceProfileLoRaWANServiceProfile'"

class IoTWirelessServiceProfileLoRaWANServiceProfile : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessServiceProfileLoRaWANServiceProfile'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-serviceprofile-lorawanserviceprofile.html'

    hidden [object] $_ulRate
    hidden [object] $_ulBucketSize
    hidden [object] $_ulRatePolicy
    hidden [object] $_dlRate
    hidden [object] $_dlBucketSize
    hidden [object] $_dlRatePolicy
    hidden [object] $_addGwMetadata
    hidden [object] $_devStatusReqFreq
    hidden [object] $_reportDevStatusBattery
    hidden [object] $_reportDevStatusMargin
    hidden [object] $_drMin
    hidden [object] $_drMax
    hidden [object] $_channelMask
    hidden [object] $_prAllowed
    hidden [object] $_hrAllowed
    hidden [object] $_raAllowed
    hidden [object] $_nwkGeoLoc
    hidden [object] $_targetPer
    hidden [object] $_minGwDiversity

    [int] $UlRate
    [int] $UlBucketSize
    [string] $UlRatePolicy
    [int] $DlRate
    [int] $DlBucketSize
    [string] $DlRatePolicy
    [bool] $AddGwMetadata
    [int] $DevStatusReqFreq
    [bool] $ReportDevStatusBattery
    [bool] $ReportDevStatusMargin
    [int] $DrMin
    [int] $DrMax
    [string] $ChannelMask
    [bool] $PrAllowed
    [bool] $HrAllowed
    [bool] $RaAllowed
    [bool] $NwkGeoLoc
    [int] $TargetPer
    [int] $MinGwDiversity

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name UlRate -Value {
            $this._ulRate
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._ulRate = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name UlBucketSize -Value {
            $this._ulBucketSize
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._ulBucketSize = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name UlRatePolicy -Value {
            $this._ulRatePolicy
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._ulRatePolicy = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DlRate -Value {
            $this._dlRate
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dlRate = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DlBucketSize -Value {
            $this._dlBucketSize
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dlBucketSize = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DlRatePolicy -Value {
            $this._dlRatePolicy
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dlRatePolicy = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name AddGwMetadata -Value {
            $this._addGwMetadata
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._addGwMetadata = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DevStatusReqFreq -Value {
            $this._devStatusReqFreq
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._devStatusReqFreq = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ReportDevStatusBattery -Value {
            $this._reportDevStatusBattery
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._reportDevStatusBattery = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ReportDevStatusMargin -Value {
            $this._reportDevStatusMargin
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._reportDevStatusMargin = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DrMin -Value {
            $this._drMin
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._drMin = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DrMax -Value {
            $this._drMax
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._drMax = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ChannelMask -Value {
            $this._channelMask
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._channelMask = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PrAllowed -Value {
            $this._prAllowed
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._prAllowed = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name HrAllowed -Value {
            $this._hrAllowed
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._hrAllowed = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RaAllowed -Value {
            $this._raAllowed
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._raAllowed = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name NwkGeoLoc -Value {
            $this._nwkGeoLoc
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._nwkGeoLoc = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TargetPer -Value {
            $this._targetPer
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._targetPer = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MinGwDiversity -Value {
            $this._minGwDiversity
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._minGwDiversity = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
    }

    IoTWirelessServiceProfileLoRaWANServiceProfile() : base() {}
    IoTWirelessServiceProfileLoRaWANServiceProfile([IDictionary] $props) : base($props) {}
    IoTWirelessServiceProfileLoRaWANServiceProfile([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessDeviceOtaaV10x'"

class IoTWirelessWirelessDeviceOtaaV10x : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSIoTWirelessWirelessDeviceOtaaV10x'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotwireless-wirelessdevice-otaav10x.html'

    hidden [object] $_appKey
    hidden [object] $_appEui

    [string] $AppKey
    [string] $AppEui

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name AppKey -Value {
            $this._appKey
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._appKey = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name AppEui -Value {
            $this._appEui
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._appEui = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

    IoTWirelessWirelessDeviceOtaaV10x() : base() {}
    IoTWirelessWirelessDeviceOtaaV10x([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDeviceOtaaV10x([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessServiceProfile'"

class IoTWirelessServiceProfile : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSIoTWirelessServiceProfile'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-serviceprofile.html'

    hidden [string[]] $_attributes = @('UlRate','UlBucketSize','UlRatePolicy','DlRate','DlBucketSize','DlRatePolicy','DevStatusReqFreq','ReportDevStatusBattery','ReportDevStatusMargin','DrMin','DrMax','ChannelMask','PrAllowed','HrAllowed','RaAllowed','NwkGeoLoc','TargetPer','MinGwDiversity','Arn','Id')
    hidden [object] $_condition

    [string] $Type = 'AWS::IoTWireless::ServiceProfile'
    [string] $Name
    [IoTWirelessServiceProfileLoRaWANServiceProfile] $LoRaWAN
    [VSTag[]] $Tags
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name Name -Value {
            $this.Properties['Name']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Name'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LoRaWAN -Value {
            $this.Properties['LoRaWAN']
        } -SecondValue {
            param([ValidateType(([IoTWirelessServiceProfileLoRaWANServiceProfile], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LoRaWAN'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Tags -Value {
            $this.Properties['Tags']
        } -SecondValue {
            param([TransformTag()] [ValidateType(([IDictionary], [psobject], [VSTag]))] [object] $value)
            $this.Properties['Tags'] = [VSTag]::TransformTag($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

    IoTWirelessServiceProfile() : base() {}
    IoTWirelessServiceProfile([IDictionary] $props) : base($props) {}
    IoTWirelessServiceProfile([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessDevice'"

class IoTWirelessWirelessDevice : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSIoTWirelessWirelessDevice'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdevice.html'

    hidden [string[]] $_attributes = @('Arn','Id','ThingName')
    hidden [object] $_condition

    [string] $Type = 'AWS::IoTWireless::WirelessDevice'
    [string] $WirelessDeviceType
    [string] $Name
    [string] $Description
    [string] $DestinationName
    [IoTWirelessWirelessDeviceLoRaWANDevice] $LoRaWAN
    [VSTag[]] $Tags
    [string] $ThingArn
    [string] $LastUplinkReceivedAt
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name WirelessDeviceType -Value {
            $this.Properties['WirelessDeviceType']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['WirelessDeviceType'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Name -Value {
            $this.Properties['Name']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Name'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Description -Value {
            $this.Properties['Description']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Description'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DestinationName -Value {
            $this.Properties['DestinationName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DestinationName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LoRaWAN -Value {
            $this.Properties['LoRaWAN']
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessDeviceLoRaWANDevice], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LoRaWAN'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Tags -Value {
            $this.Properties['Tags']
        } -SecondValue {
            param([TransformTag()] [ValidateType(([IDictionary], [psobject], [VSTag]))] [object] $value)
            $this.Properties['Tags'] = [VSTag]::TransformTag($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ThingArn -Value {
            $this.Properties['ThingArn']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ThingArn'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LastUplinkReceivedAt -Value {
            $this.Properties['LastUplinkReceivedAt']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LastUplinkReceivedAt'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

    IoTWirelessWirelessDevice() : base() {}
    IoTWirelessWirelessDevice([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessDevice([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessWirelessGateway'"

class IoTWirelessWirelessGateway : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSIoTWirelessWirelessGateway'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessgateway.html'

    hidden [string[]] $_attributes = @('Arn','Id','ThingName')
    hidden [object] $_condition

    [string] $Type = 'AWS::IoTWireless::WirelessGateway'
    [string] $Name
    [string] $Description
    [VSTag[]] $Tags
    [IoTWirelessWirelessGatewayLoRaWANGateway] $LoRaWAN
    [string] $ThingArn
    [string] $LastUplinkReceivedAt
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name Name -Value {
            $this.Properties['Name']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Name'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Description -Value {
            $this.Properties['Description']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Description'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Tags -Value {
            $this.Properties['Tags']
        } -SecondValue {
            param([TransformTag()] [ValidateType(([IDictionary], [psobject], [VSTag]))] [object] $value)
            $this.Properties['Tags'] = [VSTag]::TransformTag($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LoRaWAN -Value {
            $this.Properties['LoRaWAN']
        } -SecondValue {
            param([ValidateType(([IoTWirelessWirelessGatewayLoRaWANGateway], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LoRaWAN'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ThingArn -Value {
            $this.Properties['ThingArn']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ThingArn'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LastUplinkReceivedAt -Value {
            $this.Properties['LastUplinkReceivedAt']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LastUplinkReceivedAt'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

    IoTWirelessWirelessGateway() : base() {}
    IoTWirelessWirelessGateway([IDictionary] $props) : base($props) {}
    IoTWirelessWirelessGateway([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessDestination'"

class IoTWirelessDestination : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSIoTWirelessDestination'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-destination.html'

    hidden [string[]] $_attributes = @('Arn')
    hidden [object] $_condition

    [string] $Type = 'AWS::IoTWireless::Destination'
    [string] $Name
    [string] $Expression
    [string] $ExpressionType
    [string] $Description
    [VSTag[]] $Tags
    [string] $RoleArn
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name Name -Value {
            $this.Properties['Name']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Name'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Expression -Value {
            $this.Properties['Expression']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Expression'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ExpressionType -Value {
            $this.Properties['ExpressionType']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ExpressionType'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Description -Value {
            $this.Properties['Description']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Description'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Tags -Value {
            $this.Properties['Tags']
        } -SecondValue {
            param([TransformTag()] [ValidateType(([IDictionary], [psobject], [VSTag]))] [object] $value)
            $this.Properties['Tags'] = [VSTag]::TransformTag($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RoleArn -Value {
            $this.Properties['RoleArn']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['RoleArn'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

    IoTWirelessDestination() : base() {}
    IoTWirelessDestination([IDictionary] $props) : base($props) {}
    IoTWirelessDestination([psobject] $props) : base($props) {}
}

Write-Verbose "Importing class 'IoTWirelessDeviceProfile'"

class IoTWirelessDeviceProfile : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSIoTWirelessDeviceProfile'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-deviceprofile.html'

    hidden [string[]] $_attributes = @('Arn','Id')
    hidden [object] $_condition

    [string] $Type = 'AWS::IoTWireless::DeviceProfile'
    [string] $Name
    [IoTWirelessDeviceProfileLoRaWANDeviceProfile] $LoRaWAN
    [VSTag[]] $Tags
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name Name -Value {
            $this.Properties['Name']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Name'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LoRaWAN -Value {
            $this.Properties['LoRaWAN']
        } -SecondValue {
            param([ValidateType(([IoTWirelessDeviceProfileLoRaWANDeviceProfile], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LoRaWAN'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Tags -Value {
            $this.Properties['Tags']
        } -SecondValue {
            param([TransformTag()] [ValidateType(([IDictionary], [psobject], [VSTag]))] [object] $value)
            $this.Properties['Tags'] = [VSTag]::TransformTag($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

    IoTWirelessDeviceProfile() : base() {}
    IoTWirelessDeviceProfile([IDictionary] $props) : base($props) {}
    IoTWirelessDeviceProfile([psobject] $props) : base($props) {}
}