VaporShell.AccessAnalyzer.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 'AccessAnalyzerAnalyzerFilter'"

class AccessAnalyzerAnalyzerFilter : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSAccessAnalyzerAnalyzerFilter'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-filter.html'

    hidden [object] $_contains
    hidden [object] $_eq
    hidden [object] $_exists
    hidden [object] $_property
    hidden [object] $_neq

    [string[]] $Contains
    [string[]] $Eq
    [bool] $Exists
    [string] $Property
    [string[]] $Neq

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Contains -Value {
            $this._contains
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._contains = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Eq -Value {
            $this._eq
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._eq = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Exists -Value {
            $this._exists
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._exists = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Property -Value {
            $this._property
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._property = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Neq -Value {
            $this._neq
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._neq = @($value)
        }
    }

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

Write-Verbose "Importing class 'AccessAnalyzerAnalyzerArchiveRule'"

class AccessAnalyzerAnalyzerArchiveRule : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSAccessAnalyzerAnalyzerArchiveRule'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-archiverule.html'

    hidden [object] $_filter
    hidden [object] $_ruleName

    [AccessAnalyzerAnalyzerFilter[]] $Filter
    [string] $RuleName

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

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

Write-Verbose "Importing class 'AccessAnalyzerAnalyzer'"

class AccessAnalyzerAnalyzer : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSAccessAnalyzerAnalyzer'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html'

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

    [string] $Type = 'AWS::AccessAnalyzer::Analyzer'
    [string] $AnalyzerName
    [AccessAnalyzerAnalyzerArchiveRule[]] $ArchiveRules
    [VSTag[]] $Tags
    [string] $AnalyzerType
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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