VaporShell.Alexa.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 'AlexaASKSkillOverrides'"

class AlexaASKSkillOverrides : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSAlexaASKSkillOverrides'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-overrides.html'

    hidden [VSJson] $_manifest

    [VSJson] $Manifest

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Manifest -Value {
            $this._manifest
        } -SecondValue {
            param([ValidateType(([string], [VSJson], [VSYaml], [psobject], [IDictionary]))][object] $value)
            $this._manifest = [VSJson]::Transform($value)
            Write-Debug $this._manifest
        }
    }

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

Write-Verbose "Importing class 'AlexaASKSkillSkillPackage'"

class AlexaASKSkillSkillPackage : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSAlexaASKSkillSkillPackage'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-skillpackage.html'

    hidden [object] $_s3BucketRole
    hidden [object] $_s3ObjectVersion
    hidden [object] $_s3Bucket
    hidden [object] $_s3Key
    hidden [object] $_overrides

    [string] $S3BucketRole
    [string] $S3ObjectVersion
    [string] $S3Bucket
    [string] $S3Key
    [AlexaASKSkillOverrides] $Overrides

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name S3BucketRole -Value {
            $this._s3BucketRole
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3BucketRole = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name S3ObjectVersion -Value {
            $this._s3ObjectVersion
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3ObjectVersion = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name S3Bucket -Value {
            $this._s3Bucket
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3Bucket = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name S3Key -Value {
            $this._s3Key
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3Key = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Overrides -Value {
            $this._overrides
        } -SecondValue {
            param([ValidateType(([AlexaASKSkillOverrides], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._overrides = $value
        }
    }

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

Write-Verbose "Importing class 'AlexaASKSkillAuthenticationConfiguration'"

class AlexaASKSkillAuthenticationConfiguration : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSAlexaASKSkillAuthenticationConfiguration'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ask-skill-authenticationconfiguration.html'

    hidden [object] $_refreshToken
    hidden [object] $_clientSecret
    hidden [object] $_clientId

    [string] $RefreshToken
    [string] $ClientSecret
    [string] $ClientId

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name RefreshToken -Value {
            $this._refreshToken
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._refreshToken = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ClientSecret -Value {
            $this._clientSecret
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._clientSecret = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ClientId -Value {
            $this._clientId
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._clientId = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

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

Write-Verbose "Importing class 'AlexaASKSkill'"

class AlexaASKSkill : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSAlexaASKSkill'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ask-skill.html'

    hidden [object] $_condition

    [string] $Type = 'Alexa::ASK::Skill'
    [AlexaASKSkillAuthenticationConfiguration] $AuthenticationConfiguration
    [string] $VendorId
    [AlexaASKSkillSkillPackage] $SkillPackage
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name AuthenticationConfiguration -Value {
            $this.Properties['AuthenticationConfiguration']
        } -SecondValue {
            param([ValidateType(([AlexaASKSkillAuthenticationConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['AuthenticationConfiguration'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name VendorId -Value {
            $this.Properties['VendorId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['VendorId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SkillPackage -Value {
            $this.Properties['SkillPackage']
        } -SecondValue {
            param([ValidateType(([AlexaASKSkillSkillPackage], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['SkillPackage'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

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