VaporShell.CE.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 'CEAnomalySubscriptionSubscriber'"

class CEAnomalySubscriptionSubscriber : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSCEAnomalySubscriptionSubscriber'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ce-anomalysubscription-subscriber.html'

    hidden [object] $_address
    hidden [object] $_status
    hidden [object] $_type

    [string] $Address
    [string] $Status
    [string] $Type

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Address -Value {
            $this._address
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._address = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Status -Value {
            $this._status
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._status = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Type -Value {
            $this._type
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._type = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

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

Write-Verbose "Importing class 'CECostCategory'"

class CECostCategory : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSCECostCategory'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-costcategory.html'

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

    [string] $Type = 'AWS::CE::CostCategory'
    [string] $Name
    [string] $RuleVersion
    [string] $Rules
    [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 RuleVersion -Value {
            $this.Properties['RuleVersion']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['RuleVersion'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Rules -Value {
            $this.Properties['Rules']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Rules'] = 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
        }
    }

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

Write-Verbose "Importing class 'CEAnomalyMonitor'"

class CEAnomalyMonitor : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSCEAnomalyMonitor'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalymonitor.html'

    hidden [string[]] $_attributes = @('MonitorArn','CreationDate','LastEvaluatedDate','LastUpdatedDate','DimensionalValueCount')
    hidden [object] $_condition

    [string] $Type = 'AWS::CE::AnomalyMonitor'
    [string] $MonitorType
    [string] $MonitorName
    [string] $MonitorDimension
    [string] $MonitorSpecification
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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

Write-Verbose "Importing class 'CEAnomalySubscription'"

class CEAnomalySubscription : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSCEAnomalySubscription'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalysubscription.html'

    hidden [string[]] $_attributes = @('SubscriptionArn','AccountId')
    hidden [object] $_condition

    [string] $Type = 'AWS::CE::AnomalySubscription'
    [string] $SubscriptionName
    [string[]] $MonitorArnList
    [CEAnomalySubscriptionSubscriber[]] $Subscribers
    [double] $Threshold
    [string] $Frequency
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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