VaporShell.Route53Resolver.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 'Route53ResolverResolverRuleTargetAddress'"

class Route53ResolverResolverRuleTargetAddress : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSRoute53ResolverResolverRuleTargetAddress'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverrule-targetaddress.html'

    hidden [object] $_ip
    hidden [object] $_port

    [string] $Ip
    [string] $Port

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

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

Write-Verbose "Importing class 'Route53ResolverResolverEndpointIpAddressRequest'"

class Route53ResolverResolverEndpointIpAddressRequest : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSRoute53ResolverResolverEndpointIpAddressRequest'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53resolver-resolverendpoint-ipaddressrequest.html'

    hidden [object] $_ip
    hidden [object] $_subnetId

    [string] $Ip
    [string] $SubnetId

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

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

Write-Verbose "Importing class 'Route53ResolverResolverQueryLoggingConfig'"

class Route53ResolverResolverQueryLoggingConfig : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSRoute53ResolverResolverQueryLoggingConfig'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html'

    hidden [string[]] $_attributes = @('Id','OwnerId','Status','ShareStatus','AssociationCount','Arn','CreatorRequestId','CreationTime')
    hidden [object] $_condition

    [string] $Type = 'AWS::Route53Resolver::ResolverQueryLoggingConfig'
    [string] $Name
    [string] $DestinationArn
    [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 DestinationArn -Value {
            $this.Properties['DestinationArn']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DestinationArn'] = 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
        }
    }

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

Write-Verbose "Importing class 'Route53ResolverResolverQueryLoggingConfigAssociation'"

class Route53ResolverResolverQueryLoggingConfigAssociation : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSRoute53ResolverResolverQueryLoggingConfigAssociation'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html'

    hidden [string[]] $_attributes = @('Id','Status','Error','ErrorMessage','CreationTime')
    hidden [object] $_condition

    [string] $Type = 'AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation'
    [string] $ResolverQueryLogConfigId
    [string] $ResourceId
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name ResolverQueryLogConfigId -Value {
            $this.Properties['ResolverQueryLogConfigId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ResolverQueryLogConfigId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ResourceId -Value {
            $this.Properties['ResourceId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ResourceId'] = 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
        }
    }

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

Write-Verbose "Importing class 'Route53ResolverResolverDNSSECConfig'"

class Route53ResolverResolverDNSSECConfig : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSRoute53ResolverResolverDNSSECConfig'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverdnssecconfig.html'

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

    [string] $Type = 'AWS::Route53Resolver::ResolverDNSSECConfig'
    [string] $ResourceId
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name ResourceId -Value {
            $this.Properties['ResourceId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ResourceId'] = 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
        }
    }

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

Write-Verbose "Importing class 'Route53ResolverResolverRule'"

class Route53ResolverResolverRule : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSRoute53ResolverResolverRule'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html'

    hidden [string[]] $_attributes = @('ResolverEndpointId','DomainName','ResolverRuleId','Arn','TargetIps','Name')
    hidden [object] $_condition

    [string] $Type = 'AWS::Route53Resolver::ResolverRule'
    [string] $ResolverEndpointId
    [string] $DomainName
    [string] $RuleType
    [Route53ResolverResolverRuleTargetAddress[]] $TargetIps
    [VSTag[]] $Tags
    [string] $Name
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name ResolverEndpointId -Value {
            $this.Properties['ResolverEndpointId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ResolverEndpointId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DomainName -Value {
            $this.Properties['DomainName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DomainName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RuleType -Value {
            $this.Properties['RuleType']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['RuleType'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TargetIps -Value {
            $this.Properties['TargetIps']
        } -SecondValue {
            param([ValidateType(([Route53ResolverResolverRuleTargetAddress], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['TargetIps'] = $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 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 Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

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

Write-Verbose "Importing class 'Route53ResolverResolverRuleAssociation'"

class Route53ResolverResolverRuleAssociation : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSRoute53ResolverResolverRuleAssociation'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html'

    hidden [string[]] $_attributes = @('VPCId','ResolverRuleId','ResolverRuleAssociationId','Name')
    hidden [object] $_condition

    [string] $Type = 'AWS::Route53Resolver::ResolverRuleAssociation'
    [string] $VPCId
    [string] $ResolverRuleId
    [string] $Name
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name VPCId -Value {
            $this.Properties['VPCId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['VPCId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ResolverRuleId -Value {
            $this.Properties['ResolverRuleId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ResolverRuleId'] = 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 Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

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

Write-Verbose "Importing class 'Route53ResolverResolverEndpoint'"

class Route53ResolverResolverEndpoint : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSRoute53ResolverResolverEndpoint'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html'

    hidden [string[]] $_attributes = @('ResolverEndpointId','IpAddressCount','Arn','Direction','HostVPCId','Name')
    hidden [object] $_condition

    [string] $Type = 'AWS::Route53Resolver::ResolverEndpoint'
    [Route53ResolverResolverEndpointIpAddressRequest[]] $IpAddresses
    [string] $Direction
    [string[]] $SecurityGroupIds
    [VSTag[]] $Tags
    [string] $Name
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name IpAddresses -Value {
            $this.Properties['IpAddresses']
        } -SecondValue {
            param([ValidateType(([Route53ResolverResolverEndpointIpAddressRequest], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['IpAddresses'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Direction -Value {
            $this.Properties['Direction']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Direction'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SecurityGroupIds -Value {
            $this.Properties['SecurityGroupIds']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['SecurityGroupIds'] = @($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 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 Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

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