VaporShell.DataBrew.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 'DataBrewRecipeRecipeStep'"

class DataBrewRecipeRecipeStep : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRecipeRecipeStep'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipestep.html'

    hidden [object] $_action
    hidden [object] $_conditionExpressions

    [DataBrewRecipeAction] $Action
    [DataBrewRecipeConditionExpression[]] $ConditionExpressions

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Action -Value {
            $this._action
        } -SecondValue {
            param([ValidateType(([DataBrewRecipeAction], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._action = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ConditionExpressions -Value {
            $this._conditionExpressions
        } -SecondValue {
            param([ValidateType(([DataBrewRecipeConditionExpression], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._conditionExpressions = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobS3Location'"

class DataBrewJobS3Location : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewJobS3Location'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-s3location.html'

    hidden [object] $_bucket
    hidden [object] $_key

    [string] $Bucket
    [string] $Key

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

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

Write-Verbose "Importing class 'DataBrewRecipeSecondaryInput'"

class DataBrewRecipeSecondaryInput : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRecipeSecondaryInput'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-secondaryinput.html'

    hidden [object] $_s3InputDefinition
    hidden [object] $_dataCatalogInputDefinition

    [DataBrewRecipeS3Location] $S3InputDefinition
    [DataBrewRecipeDataCatalogInputDefinition] $DataCatalogInputDefinition

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name S3InputDefinition -Value {
            $this._s3InputDefinition
        } -SecondValue {
            param([ValidateType(([DataBrewRecipeS3Location], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3InputDefinition = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DataCatalogInputDefinition -Value {
            $this._dataCatalogInputDefinition
        } -SecondValue {
            param([ValidateType(([DataBrewRecipeDataCatalogInputDefinition], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dataCatalogInputDefinition = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewRecipeAction'"

class DataBrewRecipeAction : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRecipeAction'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-action.html'

    hidden [object] $_operation
    hidden [object] $_parameters

    [string] $Operation
    [object] $Parameters

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

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

Write-Verbose "Importing class 'DataBrewJobOutput'"

class DataBrewJobOutput : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewJobOutput'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-output.html'

    hidden [object] $_compressionFormat
    hidden [object] $_format
    hidden [object] $_partitionColumns
    hidden [object] $_location
    hidden [object] $_overwrite

    [string] $CompressionFormat
    [string] $Format
    [string[]] $PartitionColumns
    [DataBrewJobS3Location] $Location
    [bool] $Overwrite

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name CompressionFormat -Value {
            $this._compressionFormat
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._compressionFormat = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Format -Value {
            $this._format
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._format = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PartitionColumns -Value {
            $this._partitionColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._partitionColumns = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Location -Value {
            $this._location
        } -SecondValue {
            param([ValidateType(([DataBrewJobS3Location], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._location = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Overwrite -Value {
            $this._overwrite
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._overwrite = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewRecipeRecipeParameters'"

class DataBrewRecipeRecipeParameters : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRecipeRecipeParameters'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-recipeparameters.html'

    hidden [object] $_aggregateFunction
    hidden [object] $_base
    hidden [object] $_caseStatement
    hidden [object] $_categoryMap
    hidden [object] $_charsToRemove
    hidden [object] $_collapseConsecutiveWhitespace
    hidden [object] $_columnDataType
    hidden [object] $_columnRange
    hidden [object] $_count
    hidden [object] $_customCharacters
    hidden [object] $_customStopWords
    hidden [object] $_customValue
    hidden [object] $_datasetsColumns
    hidden [object] $_dateAddValue
    hidden [object] $_dateTimeFormat
    hidden [object] $_dateTimeParameters
    hidden [object] $_deleteOtherRows
    hidden [object] $_delimiter
    hidden [object] $_endPattern
    hidden [object] $_endPosition
    hidden [object] $_endValue
    hidden [object] $_expandContractions
    hidden [object] $_exponent
    hidden [object] $_falseString
    hidden [object] $_groupByAggFunctionOptions
    hidden [object] $_groupByColumns
    hidden [object] $_hiddenColumns
    hidden [object] $_ignoreCase
    hidden [object] $_includeInSplit
    hidden [object] $_interval
    hidden [object] $_isText
    hidden [object] $_joinKeys
    hidden [object] $_joinType
    hidden [object] $_leftColumns
    hidden [object] $_limit
    hidden [object] $_lowerBound
    hidden [object] $_mapType
    hidden [object] $_modeType
    hidden [object] $_multiLine
    hidden [object] $_numRows
    hidden [object] $_numRowsAfter
    hidden [object] $_numRowsBefore
    hidden [object] $_orderByColumn
    hidden [object] $_orderByColumns
    hidden [object] $_other
    hidden [object] $_pattern
    hidden [object] $_patternOption1
    hidden [object] $_patternOption2
    hidden [object] $_patternOptions
    hidden [object] $_period
    hidden [object] $_position
    hidden [object] $_removeAllPunctuation
    hidden [object] $_removeAllQuotes
    hidden [object] $_removeAllWhitespace
    hidden [object] $_removeCustomCharacters
    hidden [object] $_removeCustomValue
    hidden [object] $_removeLeadingAndTrailingPunctuation
    hidden [object] $_removeLeadingAndTrailingQuotes
    hidden [object] $_removeLeadingAndTrailingWhitespace
    hidden [object] $_removeLetters
    hidden [object] $_removeNumbers
    hidden [object] $_removeSourceColumn
    hidden [object] $_removeSpecialCharacters
    hidden [object] $_rightColumns
    hidden [object] $_sampleSize
    hidden [object] $_sampleType
    hidden [object] $_secondInput
    hidden [object] $_secondaryInputs
    hidden [object] $_sourceColumn
    hidden [object] $_sourceColumn1
    hidden [object] $_sourceColumn2
    hidden [object] $_sourceColumns
    hidden [object] $_startColumnIndex
    hidden [object] $_startPattern
    hidden [object] $_startPosition
    hidden [object] $_startValue
    hidden [object] $_stemmingMode
    hidden [object] $_stepCount
    hidden [object] $_stepIndex
    hidden [object] $_stopWordsMode
    hidden [object] $_strategy
    hidden [object] $_sheetNames
    hidden [object] $_sheetIndexes
    hidden [object] $_targetColumn
    hidden [object] $_targetColumnNames
    hidden [object] $_targetDateFormat
    hidden [object] $_targetIndex
    hidden [object] $_timeZone
    hidden [object] $_tokenizerPattern
    hidden [object] $_trueString
    hidden [object] $_udfLang
    hidden [object] $_units
    hidden [object] $_unpivotColumn
    hidden [object] $_upperBound
    hidden [object] $_useNewDataFrame
    hidden [object] $_value
    hidden [object] $_value1
    hidden [object] $_value2
    hidden [object] $_valueColumn
    hidden [object] $_viewFrame

    [string] $AggregateFunction
    [string] $Base
    [string] $CaseStatement
    [string] $CategoryMap
    [string] $CharsToRemove
    [string] $CollapseConsecutiveWhitespace
    [string] $ColumnDataType
    [string] $ColumnRange
    [string] $Count
    [string] $CustomCharacters
    [string] $CustomStopWords
    [string] $CustomValue
    [string] $DatasetsColumns
    [string] $DateAddValue
    [string] $DateTimeFormat
    [string] $DateTimeParameters
    [string] $DeleteOtherRows
    [string] $Delimiter
    [string] $EndPattern
    [string] $EndPosition
    [string] $EndValue
    [string] $ExpandContractions
    [string] $Exponent
    [string] $FalseString
    [string] $GroupByAggFunctionOptions
    [string] $GroupByColumns
    [string] $HiddenColumns
    [string] $IgnoreCase
    [string] $IncludeInSplit
    [string] $Interval
    [string] $IsText
    [string] $JoinKeys
    [string] $JoinType
    [string] $LeftColumns
    [string] $Limit
    [string] $LowerBound
    [string] $MapType
    [string] $ModeType
    [bool] $MultiLine
    [string] $NumRows
    [string] $NumRowsAfter
    [string] $NumRowsBefore
    [string] $OrderByColumn
    [string] $OrderByColumns
    [string] $Other
    [string] $Pattern
    [string] $PatternOption1
    [string] $PatternOption2
    [string] $PatternOptions
    [string] $Period
    [string] $Position
    [string] $RemoveAllPunctuation
    [string] $RemoveAllQuotes
    [string] $RemoveAllWhitespace
    [string] $RemoveCustomCharacters
    [string] $RemoveCustomValue
    [string] $RemoveLeadingAndTrailingPunctuation
    [string] $RemoveLeadingAndTrailingQuotes
    [string] $RemoveLeadingAndTrailingWhitespace
    [string] $RemoveLetters
    [string] $RemoveNumbers
    [string] $RemoveSourceColumn
    [string] $RemoveSpecialCharacters
    [string] $RightColumns
    [string] $SampleSize
    [string] $SampleType
    [string] $SecondInput
    [DataBrewRecipeSecondaryInput[]] $SecondaryInputs
    [string] $SourceColumn
    [string] $SourceColumn1
    [string] $SourceColumn2
    [string] $SourceColumns
    [string] $StartColumnIndex
    [string] $StartPattern
    [string] $StartPosition
    [string] $StartValue
    [string] $StemmingMode
    [string] $StepCount
    [string] $StepIndex
    [string] $StopWordsMode
    [string] $Strategy
    [string[]] $SheetNames
    [int[]] $SheetIndexes
    [string] $TargetColumn
    [string] $TargetColumnNames
    [string] $TargetDateFormat
    [string] $TargetIndex
    [string] $TimeZone
    [string] $TokenizerPattern
    [string] $TrueString
    [string] $UdfLang
    [string] $Units
    [string] $UnpivotColumn
    [string] $UpperBound
    [string] $UseNewDataFrame
    [string] $Value
    [string] $Value1
    [string] $Value2
    [string] $ValueColumn
    [string] $ViewFrame
    [VSJson] $Input

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name AggregateFunction -Value {
            $this._aggregateFunction
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._aggregateFunction = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Base -Value {
            $this._base
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._base = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CaseStatement -Value {
            $this._caseStatement
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._caseStatement = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CategoryMap -Value {
            $this._categoryMap
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._categoryMap = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CharsToRemove -Value {
            $this._charsToRemove
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._charsToRemove = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CollapseConsecutiveWhitespace -Value {
            $this._collapseConsecutiveWhitespace
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._collapseConsecutiveWhitespace = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ColumnDataType -Value {
            $this._columnDataType
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._columnDataType = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ColumnRange -Value {
            $this._columnRange
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._columnRange = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Count -Value {
            $this._count
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._count = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CustomCharacters -Value {
            $this._customCharacters
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._customCharacters = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CustomStopWords -Value {
            $this._customStopWords
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._customStopWords = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CustomValue -Value {
            $this._customValue
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._customValue = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatasetsColumns -Value {
            $this._datasetsColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._datasetsColumns = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DateAddValue -Value {
            $this._dateAddValue
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dateAddValue = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DateTimeFormat -Value {
            $this._dateTimeFormat
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dateTimeFormat = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DateTimeParameters -Value {
            $this._dateTimeParameters
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dateTimeParameters = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DeleteOtherRows -Value {
            $this._deleteOtherRows
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._deleteOtherRows = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Delimiter -Value {
            $this._delimiter
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._delimiter = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EndPattern -Value {
            $this._endPattern
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._endPattern = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EndPosition -Value {
            $this._endPosition
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._endPosition = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EndValue -Value {
            $this._endValue
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._endValue = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ExpandContractions -Value {
            $this._expandContractions
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._expandContractions = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Exponent -Value {
            $this._exponent
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._exponent = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name FalseString -Value {
            $this._falseString
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._falseString = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name GroupByAggFunctionOptions -Value {
            $this._groupByAggFunctionOptions
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._groupByAggFunctionOptions = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name GroupByColumns -Value {
            $this._groupByColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._groupByColumns = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name HiddenColumns -Value {
            $this._hiddenColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._hiddenColumns = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name IgnoreCase -Value {
            $this._ignoreCase
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._ignoreCase = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name IncludeInSplit -Value {
            $this._includeInSplit
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._includeInSplit = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Interval -Value {
            $this._interval
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._interval = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name IsText -Value {
            $this._isText
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._isText = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name JoinKeys -Value {
            $this._joinKeys
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._joinKeys = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name JoinType -Value {
            $this._joinType
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._joinType = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LeftColumns -Value {
            $this._leftColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._leftColumns = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Limit -Value {
            $this._limit
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._limit = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LowerBound -Value {
            $this._lowerBound
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._lowerBound = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MapType -Value {
            $this._mapType
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._mapType = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ModeType -Value {
            $this._modeType
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._modeType = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MultiLine -Value {
            $this._multiLine
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._multiLine = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name NumRows -Value {
            $this._numRows
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._numRows = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name NumRowsAfter -Value {
            $this._numRowsAfter
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._numRowsAfter = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name NumRowsBefore -Value {
            $this._numRowsBefore
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._numRowsBefore = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name OrderByColumn -Value {
            $this._orderByColumn
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._orderByColumn = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name OrderByColumns -Value {
            $this._orderByColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._orderByColumns = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Other -Value {
            $this._other
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._other = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Pattern -Value {
            $this._pattern
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._pattern = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PatternOption1 -Value {
            $this._patternOption1
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._patternOption1 = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PatternOption2 -Value {
            $this._patternOption2
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._patternOption2 = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PatternOptions -Value {
            $this._patternOptions
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._patternOptions = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Period -Value {
            $this._period
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._period = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Position -Value {
            $this._position
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._position = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveAllPunctuation -Value {
            $this._removeAllPunctuation
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeAllPunctuation = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveAllQuotes -Value {
            $this._removeAllQuotes
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeAllQuotes = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveAllWhitespace -Value {
            $this._removeAllWhitespace
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeAllWhitespace = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveCustomCharacters -Value {
            $this._removeCustomCharacters
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeCustomCharacters = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveCustomValue -Value {
            $this._removeCustomValue
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeCustomValue = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveLeadingAndTrailingPunctuation -Value {
            $this._removeLeadingAndTrailingPunctuation
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeLeadingAndTrailingPunctuation = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveLeadingAndTrailingQuotes -Value {
            $this._removeLeadingAndTrailingQuotes
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeLeadingAndTrailingQuotes = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveLeadingAndTrailingWhitespace -Value {
            $this._removeLeadingAndTrailingWhitespace
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeLeadingAndTrailingWhitespace = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveLetters -Value {
            $this._removeLetters
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeLetters = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveNumbers -Value {
            $this._removeNumbers
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeNumbers = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveSourceColumn -Value {
            $this._removeSourceColumn
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeSourceColumn = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RemoveSpecialCharacters -Value {
            $this._removeSpecialCharacters
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._removeSpecialCharacters = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name RightColumns -Value {
            $this._rightColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._rightColumns = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SampleSize -Value {
            $this._sampleSize
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sampleSize = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SampleType -Value {
            $this._sampleType
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sampleType = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SecondInput -Value {
            $this._secondInput
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._secondInput = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SecondaryInputs -Value {
            $this._secondaryInputs
        } -SecondValue {
            param([ValidateType(([DataBrewRecipeSecondaryInput], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._secondaryInputs = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SourceColumn -Value {
            $this._sourceColumn
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sourceColumn = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SourceColumn1 -Value {
            $this._sourceColumn1
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sourceColumn1 = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SourceColumn2 -Value {
            $this._sourceColumn2
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sourceColumn2 = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SourceColumns -Value {
            $this._sourceColumns
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._sourceColumns = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StartColumnIndex -Value {
            $this._startColumnIndex
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._startColumnIndex = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StartPattern -Value {
            $this._startPattern
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._startPattern = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StartPosition -Value {
            $this._startPosition
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._startPosition = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StartValue -Value {
            $this._startValue
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._startValue = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StemmingMode -Value {
            $this._stemmingMode
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._stemmingMode = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StepCount -Value {
            $this._stepCount
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._stepCount = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StepIndex -Value {
            $this._stepIndex
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._stepIndex = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name StopWordsMode -Value {
            $this._stopWordsMode
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._stopWordsMode = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Strategy -Value {
            $this._strategy
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._strategy = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SheetNames -Value {
            $this._sheetNames
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._sheetNames = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SheetIndexes -Value {
            $this._sheetIndexes
        } -SecondValue {
            param([ValidateType(([int], [string], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._sheetIndexes = if ($cast = @($value) -as [int]) {
                $cast
            }
            else {
                @($value)
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TargetColumn -Value {
            $this._targetColumn
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._targetColumn = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TargetColumnNames -Value {
            $this._targetColumnNames
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._targetColumnNames = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TargetDateFormat -Value {
            $this._targetDateFormat
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._targetDateFormat = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TargetIndex -Value {
            $this._targetIndex
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._targetIndex = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TimeZone -Value {
            $this._timeZone
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._timeZone = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TokenizerPattern -Value {
            $this._tokenizerPattern
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._tokenizerPattern = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TrueString -Value {
            $this._trueString
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._trueString = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name UdfLang -Value {
            $this._udfLang
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._udfLang = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Units -Value {
            $this._units
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._units = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name UnpivotColumn -Value {
            $this._unpivotColumn
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._unpivotColumn = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name UpperBound -Value {
            $this._upperBound
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._upperBound = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name UseNewDataFrame -Value {
            $this._useNewDataFrame
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._useNewDataFrame = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Value -Value {
            $this._value
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._value = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Value1 -Value {
            $this._value1
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._value1 = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Value2 -Value {
            $this._value2
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._value2 = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ValueColumn -Value {
            $this._valueColumn
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._valueColumn = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ViewFrame -Value {
            $this._viewFrame
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._viewFrame = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Input -Value {
            $this.Properties['Input']
        } -SecondValue {
            param([ValidateType(([string], [VSJson], [VSYaml], [psobject], [IDictionary]))][object] $value)
            $this.Properties['Input'] = if ($value -is [VSJson]) {
                $value
            }
            else {
                [VSJson]::new($value)
            }
        }
    }

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

Write-Verbose "Importing class 'DataBrewRecipeS3Location'"

class DataBrewRecipeS3Location : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRecipeS3Location'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-s3location.html'

    hidden [object] $_bucket
    hidden [object] $_key

    [string] $Bucket
    [string] $Key

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

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

Write-Verbose "Importing class 'DataBrewRecipeConditionExpression'"

class DataBrewRecipeConditionExpression : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRecipeConditionExpression'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-conditionexpression.html'

    hidden [object] $_condition
    hidden [object] $_value
    hidden [object] $_targetColumn

    [string] $Condition
    [string] $Value
    [string] $TargetColumn

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

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

Write-Verbose "Importing class 'DataBrewRecipeDataCatalogInputDefinition'"

class DataBrewRecipeDataCatalogInputDefinition : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRecipeDataCatalogInputDefinition'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-recipe-datacataloginputdefinition.html'

    hidden [object] $_catalogId
    hidden [object] $_databaseName
    hidden [object] $_tableName
    hidden [object] $_tempDirectory

    [string] $CatalogId
    [string] $DatabaseName
    [string] $TableName
    [DataBrewRecipeS3Location] $TempDirectory

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name CatalogId -Value {
            $this._catalogId
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._catalogId = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatabaseName -Value {
            $this._databaseName
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._databaseName = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TableName -Value {
            $this._tableName
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._tableName = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TempDirectory -Value {
            $this._tempDirectory
        } -SecondValue {
            param([ValidateType(([DataBrewRecipeS3Location], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._tempDirectory = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobOutputFormatOptions'"

class DataBrewJobOutputFormatOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewJobOutputFormatOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-outputformatoptions.html'

    hidden [object] $_csv

    [DataBrewJobCsvOutputOptions] $Csv

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Csv -Value {
            $this._csv
        } -SecondValue {
            param([ValidateType(([DataBrewJobCsvOutputOptions], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._csv = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobCsvOutputOptions'"

class DataBrewJobCsvOutputOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewJobCsvOutputOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-job-csvoutputoptions.html'

    hidden [object] $_delimiter

    [string] $Delimiter

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

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

Write-Verbose "Importing class 'DataBrewDataset'"

class DataBrewDataset : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSDataBrewDataset'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::DataBrew::Dataset'
    [string] $Name
    [VSJson] $FormatOptions
    [VSJson] $Input
    [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 FormatOptions -Value {
            $this.Properties['FormatOptions']
        } -SecondValue {
            param([ValidateType(([string], [VSJson], [VSYaml], [psobject], [IDictionary]))][object] $value)
            $this.Properties['FormatOptions'] = if ($value -is [VSJson]) {
                $value
            }
            else {
                [VSJson]::new($value)
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Input -Value {
            $this.Properties['Input']
        } -SecondValue {
            param([ValidateType(([string], [VSJson], [VSYaml], [psobject], [IDictionary]))][object] $value)
            $this.Properties['Input'] = if ($value -is [VSJson]) {
                $value
            }
            else {
                [VSJson]::new($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
        }
    }

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

Write-Verbose "Importing class 'DataBrewRecipe'"

class DataBrewRecipe : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSDataBrewRecipe'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::DataBrew::Recipe'
    [string] $Description
    [string] $Name
    [DataBrewRecipeRecipeStep[]] $Steps
    [VSTag[]] $Tags
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $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 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 Steps -Value {
            $this.Properties['Steps']
        } -SecondValue {
            param([ValidateType(([DataBrewRecipeRecipeStep], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['Steps'] = $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
        }
    }

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

Write-Verbose "Importing class 'DataBrewProject'"

class DataBrewProject : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSDataBrewProject'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::DataBrew::Project'
    [string] $DatasetName
    [string] $Name
    [string] $RecipeName
    [string] $RoleArn
    [VSJson] $Sample
    [VSTag[]] $Tags
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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

Write-Verbose "Importing class 'DataBrewJob'"

class DataBrewJob : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSDataBrewJob'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::DataBrew::Job'
    [string] $DatasetName
    [string] $EncryptionKeyArn
    [string] $EncryptionMode
    [string] $Name
    [string] $JobType
    [string] $LogSubscription
    [int] $MaxCapacity
    [int] $MaxRetries
    [DataBrewJobOutput[]] $Outputs
    [VSJson] $OutputLocation
    [string] $ProjectName
    [VSJson] $Recipe
    [string] $RoleArn
    [VSTag[]] $Tags
    [int] $Timeout
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatasetName -Value {
            $this.Properties['DatasetName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DatasetName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EncryptionKeyArn -Value {
            $this.Properties['EncryptionKeyArn']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['EncryptionKeyArn'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EncryptionMode -Value {
            $this.Properties['EncryptionMode']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['EncryptionMode'] = 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 JobType -Value {
            $this.Properties['JobType']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['JobType'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LogSubscription -Value {
            $this.Properties['LogSubscription']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['LogSubscription'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MaxCapacity -Value {
            $this.Properties['MaxCapacity']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['MaxCapacity'] = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MaxRetries -Value {
            $this.Properties['MaxRetries']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['MaxRetries'] = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Outputs -Value {
            $this.Properties['Outputs']
        } -SecondValue {
            param([ValidateType(([DataBrewJobOutput], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['Outputs'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name OutputLocation -Value {
            $this.Properties['OutputLocation']
        } -SecondValue {
            param([ValidateType(([string], [VSJson], [VSYaml], [psobject], [IDictionary]))][object] $value)
            $this.Properties['OutputLocation'] = if ($value -is [VSJson]) {
                $value
            }
            else {
                [VSJson]::new($value)
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ProjectName -Value {
            $this.Properties['ProjectName']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ProjectName'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Recipe -Value {
            $this.Properties['Recipe']
        } -SecondValue {
            param([ValidateType(([string], [VSJson], [VSYaml], [psobject], [IDictionary]))][object] $value)
            $this.Properties['Recipe'] = if ($value -is [VSJson]) {
                $value
            }
            else {
                [VSJson]::new($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 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 Timeout -Value {
            $this.Properties['Timeout']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Timeout'] = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewSchedule'"

class DataBrewSchedule : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSDataBrewSchedule'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::DataBrew::Schedule'
    [string[]] $JobNames
    [string] $CronExpression
    [string] $Name
    [VSTag[]] $Tags
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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