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 'DataBrewJobValidationConfiguration'"

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

    hidden [object] $_rulesetArn
    hidden [object] $_validationMode

    [string] $RulesetArn
    [string] $ValidationMode

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

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

Write-Verbose "Importing class 'DataBrewJobDataCatalogOutput'"

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

    hidden [object] $_catalogId
    hidden [object] $_databaseName
    hidden [object] $_tableName
    hidden [object] $_s3Options
    hidden [object] $_databaseOptions
    hidden [object] $_overwrite

    [string] $CatalogId
    [string] $DatabaseName
    [string] $TableName
    [DataBrewJobS3TableOutputOptions] $S3Options
    [DataBrewJobDatabaseTableOutputOptions] $DatabaseOptions
    [bool] $Overwrite

    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 S3Options -Value {
            $this._s3Options
        } -SecondValue {
            param([ValidateType(([DataBrewJobS3TableOutputOptions], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3Options = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatabaseOptions -Value {
            $this._databaseOptions
        } -SecondValue {
            param([ValidateType(([DataBrewJobDatabaseTableOutputOptions], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._databaseOptions = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Overwrite -Value {
            $this._overwrite
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._overwrite = $value
        }
    }

    DataBrewJobDataCatalogOutput() : base() {}
    DataBrewJobDataCatalogOutput([IDictionary] $props) : base($props) {}
    DataBrewJobDataCatalogOutput([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
    hidden [object] $_bucketOwner

    [string] $Bucket
    [string] $Key
    [string] $BucketOwner

    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
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name BucketOwner -Value {
            $this._bucketOwner
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._bucketOwner = 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 '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 'DataBrewJobS3TableOutputOptions'"

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

    hidden [object] $_location

    [DataBrewJobS3Location] $Location

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

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

Write-Verbose "Importing class 'DataBrewDatasetDatasetParameter'"

class DataBrewDatasetDatasetParameter : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetDatasetParameter'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-datasetparameter.html'

    hidden [object] $_name
    hidden [object] $_type
    hidden [object] $_datetimeOptions
    hidden [object] $_createColumn
    hidden [object] $_filter

    [string] $Name
    [string] $Type
    [DataBrewDatasetDatetimeOptions] $DatetimeOptions
    [bool] $CreateColumn
    [DataBrewDatasetFilterExpression] $Filter

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Name -Value {
            $this._name
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._name = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Type -Value {
            $this._type
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._type = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatetimeOptions -Value {
            $this._datetimeOptions
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetDatetimeOptions], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._datetimeOptions = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CreateColumn -Value {
            $this._createColumn
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._createColumn = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Filter -Value {
            $this._filter
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetFilterExpression], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._filter = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobOutputLocation'"

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

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

    [string] $Bucket
    [string] $Key
    [string] $BucketOwner

    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
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name BucketOwner -Value {
            $this._bucketOwner
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._bucketOwner = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

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

Write-Verbose "Importing class 'DataBrewDatasetFilesLimit'"

class DataBrewDatasetFilesLimit : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetFilesLimit'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-fileslimit.html'

    hidden [object] $_maxFiles
    hidden [object] $_orderedBy
    hidden [object] $_order

    [int] $MaxFiles
    [string] $OrderedBy
    [string] $Order

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name MaxFiles -Value {
            $this._maxFiles
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._maxFiles = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name OrderedBy -Value {
            $this._orderedBy
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._orderedBy = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Order -Value {
            $this._order
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._order = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

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

Write-Verbose "Importing class 'DataBrewDatasetCsvOptions'"

class DataBrewDatasetCsvOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetCsvOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-csvoptions.html'

    hidden [object] $_delimiter
    hidden [object] $_headerRow

    [string] $Delimiter
    [bool] $HeaderRow

    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
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name HeaderRow -Value {
            $this._headerRow
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._headerRow = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewDatasetFormatOptions'"

class DataBrewDatasetFormatOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetFormatOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-formatoptions.html'

    hidden [object] $_json
    hidden [object] $_excel
    hidden [object] $_csv

    [DataBrewDatasetJsonOptions] $Json
    [DataBrewDatasetExcelOptions] $Excel
    [DataBrewDatasetCsvOptions] $Csv

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

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

Write-Verbose "Importing class 'DataBrewDatasetExcelOptions'"

class DataBrewDatasetExcelOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetExcelOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-exceloptions.html'

    hidden [object] $_sheetNames
    hidden [object] $_sheetIndexes
    hidden [object] $_headerRow

    [string[]] $SheetNames
    [int[]] $SheetIndexes
    [bool] $HeaderRow

    hidden [void] _addAccessors() {
        $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 HeaderRow -Value {
            $this._headerRow
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._headerRow = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewRulesetColumnSelector'"

class DataBrewRulesetColumnSelector : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRulesetColumnSelector'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-ruleset-columnselector.html'

    hidden [object] $_regex
    hidden [object] $_name

    [string] $Regex
    [string] $Name

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

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

Write-Verbose "Importing class 'DataBrewJobDatabaseOutput'"

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

    hidden [object] $_glueConnectionName
    hidden [object] $_databaseOutputMode
    hidden [object] $_databaseOptions

    [string] $GlueConnectionName
    [string] $DatabaseOutputMode
    [DataBrewJobDatabaseTableOutputOptions] $DatabaseOptions

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

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

Write-Verbose "Importing class 'DataBrewDatasetInput'"

class DataBrewDatasetInput : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetInput'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-input.html'

    hidden [object] $_s3InputDefinition
    hidden [object] $_dataCatalogInputDefinition
    hidden [object] $_databaseInputDefinition
    hidden [object] $_metadata

    [DataBrewDatasetS3Location] $S3InputDefinition
    [DataBrewDatasetDataCatalogInputDefinition] $DataCatalogInputDefinition
    [DataBrewDatasetDatabaseInputDefinition] $DatabaseInputDefinition
    [DataBrewDatasetMetadata] $Metadata

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name S3InputDefinition -Value {
            $this._s3InputDefinition
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetS3Location], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3InputDefinition = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DataCatalogInputDefinition -Value {
            $this._dataCatalogInputDefinition
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetDataCatalogInputDefinition], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._dataCatalogInputDefinition = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatabaseInputDefinition -Value {
            $this._databaseInputDefinition
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetDatabaseInputDefinition], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._databaseInputDefinition = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Metadata -Value {
            $this._metadata
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetMetadata], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._metadata = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobDatabaseTableOutputOptions'"

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

    hidden [object] $_tempDirectory
    hidden [object] $_tableName

    [DataBrewJobS3Location] $TempDirectory
    [string] $TableName

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

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

Write-Verbose "Importing class 'DataBrewDatasetFilterValue'"

class DataBrewDatasetFilterValue : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetFilterValue'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-filtervalue.html'

    hidden [object] $_valueReference
    hidden [object] $_value

    [string] $ValueReference
    [string] $Value

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

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

Write-Verbose "Importing class 'DataBrewJobParameterMap'"

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



    hidden [void] _addAccessors() {
    }

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

Write-Verbose "Importing class 'DataBrewRecipeParameterMap'"

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



    hidden [void] _addAccessors() {
    }

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

Write-Verbose "Importing class 'DataBrewProjectSample'"

class DataBrewProjectSample : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewProjectSample'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-project-sample.html'

    hidden [object] $_size
    hidden [object] $_type

    [int] $Size
    [string] $Type

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

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

Write-Verbose "Importing class 'DataBrewJobColumnStatisticsConfiguration'"

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

    hidden [object] $_selectors
    hidden [object] $_statistics

    [DataBrewJobColumnSelector[]] $Selectors
    [DataBrewJobStatisticsConfiguration] $Statistics

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Selectors -Value {
            $this._selectors
        } -SecondValue {
            param([ValidateType(([DataBrewJobColumnSelector], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._selectors = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Statistics -Value {
            $this._statistics
        } -SecondValue {
            param([ValidateType(([DataBrewJobStatisticsConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._statistics = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobProfileConfiguration'"

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

    hidden [object] $_datasetStatisticsConfiguration
    hidden [object] $_profileColumns
    hidden [object] $_columnStatisticsConfigurations
    hidden [object] $_entityDetectorConfiguration

    [DataBrewJobStatisticsConfiguration] $DatasetStatisticsConfiguration
    [DataBrewJobColumnSelector[]] $ProfileColumns
    [DataBrewJobColumnStatisticsConfiguration[]] $ColumnStatisticsConfigurations
    [DataBrewJobEntityDetectorConfiguration] $EntityDetectorConfiguration

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatasetStatisticsConfiguration -Value {
            $this._datasetStatisticsConfiguration
        } -SecondValue {
            param([ValidateType(([DataBrewJobStatisticsConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._datasetStatisticsConfiguration = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ProfileColumns -Value {
            $this._profileColumns
        } -SecondValue {
            param([ValidateType(([DataBrewJobColumnSelector], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._profileColumns = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ColumnStatisticsConfigurations -Value {
            $this._columnStatisticsConfigurations
        } -SecondValue {
            param([ValidateType(([DataBrewJobColumnStatisticsConfiguration], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._columnStatisticsConfigurations = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name EntityDetectorConfiguration -Value {
            $this._entityDetectorConfiguration
        } -SecondValue {
            param([ValidateType(([DataBrewJobEntityDetectorConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._entityDetectorConfiguration = $value
        }
    }

    DataBrewJobProfileConfiguration() : base() {}
    DataBrewJobProfileConfiguration([IDictionary] $props) : base($props) {}
    DataBrewJobProfileConfiguration([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 'DataBrewDatasetFilterExpression'"

class DataBrewDatasetFilterExpression : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetFilterExpression'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-filterexpression.html'

    hidden [object] $_expression
    hidden [object] $_valuesMap

    [string] $Expression
    [DataBrewDatasetFilterValue[]] $ValuesMap

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

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

Write-Verbose "Importing class 'DataBrewJobEntityDetectorConfiguration'"

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

    hidden [object] $_entityTypes
    hidden [object] $_allowedStatistics

    [string[]] $EntityTypes
    [DataBrewJobAllowedStatistics] $AllowedStatistics

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name EntityTypes -Value {
            $this._entityTypes
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._entityTypes = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name AllowedStatistics -Value {
            $this._allowedStatistics
        } -SecondValue {
            param([ValidateType(([DataBrewJobAllowedStatistics], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._allowedStatistics = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewRulesetThreshold'"

class DataBrewRulesetThreshold : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRulesetThreshold'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-ruleset-threshold.html'

    hidden [object] $_value
    hidden [object] $_type
    hidden [object] $_unit

    [double] $Value
    [string] $Type
    [string] $Unit

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

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

Write-Verbose "Importing class 'DataBrewRulesetSubstitutionValue'"

class DataBrewRulesetSubstitutionValue : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRulesetSubstitutionValue'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-ruleset-substitutionvalue.html'

    hidden [object] $_valueReference
    hidden [object] $_value

    [string] $ValueReference
    [string] $Value

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

    DataBrewRulesetSubstitutionValue() : base() {}
    DataBrewRulesetSubstitutionValue([IDictionary] $props) : base($props) {}
    DataBrewRulesetSubstitutionValue([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
    [DataBrewRecipeParameterMap] $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(([DataBrewRecipeParameterMap], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._parameters = $value
        }
    }

    DataBrewRecipeAction() : base() {}
    DataBrewRecipeAction([IDictionary] $props) : base($props) {}
    DataBrewRecipeAction([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 'DataBrewDatasetPathParameter'"

class DataBrewDatasetPathParameter : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetPathParameter'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-pathparameter.html'

    hidden [object] $_pathParameterName
    hidden [object] $_datasetParameter

    [string] $PathParameterName
    [DataBrewDatasetDatasetParameter] $DatasetParameter

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

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

Write-Verbose "Importing class 'DataBrewDatasetDatabaseInputDefinition'"

class DataBrewDatasetDatabaseInputDefinition : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetDatabaseInputDefinition'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-databaseinputdefinition.html'

    hidden [object] $_glueConnectionName
    hidden [object] $_databaseTableName
    hidden [object] $_tempDirectory
    hidden [object] $_queryString

    [string] $GlueConnectionName
    [string] $DatabaseTableName
    [DataBrewDatasetS3Location] $TempDirectory
    [string] $QueryString

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name GlueConnectionName -Value {
            $this._glueConnectionName
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._glueConnectionName = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatabaseTableName -Value {
            $this._databaseTableName
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._databaseTableName = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name TempDirectory -Value {
            $this._tempDirectory
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetS3Location], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._tempDirectory = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name QueryString -Value {
            $this._queryString
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._queryString = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobRecipe'"

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

    hidden [object] $_name
    hidden [object] $_version

    [string] $Name
    [string] $Version

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

    DataBrewJobRecipe() : base() {}
    DataBrewJobRecipe([IDictionary] $props) : base($props) {}
    DataBrewJobRecipe([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] $_formatOptions
    hidden [object] $_partitionColumns
    hidden [object] $_location
    hidden [object] $_overwrite
    hidden [object] $_maxOutputFiles

    [string] $CompressionFormat
    [string] $Format
    [DataBrewJobOutputFormatOptions] $FormatOptions
    [string[]] $PartitionColumns
    [DataBrewJobS3Location] $Location
    [bool] $Overwrite
    [int] $MaxOutputFiles

    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 FormatOptions -Value {
            $this._formatOptions
        } -SecondValue {
            param([ValidateType(([DataBrewJobOutputFormatOptions], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._formatOptions = $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
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MaxOutputFiles -Value {
            $this._maxOutputFiles
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._maxOutputFiles = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
    }

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

Write-Verbose "Importing class 'DataBrewDatasetPathOptions'"

class DataBrewDatasetPathOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetPathOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-pathoptions.html'

    hidden [object] $_filesLimit
    hidden [object] $_lastModifiedDateCondition
    hidden [object] $_parameters

    [DataBrewDatasetFilesLimit] $FilesLimit
    [DataBrewDatasetFilterExpression] $LastModifiedDateCondition
    [DataBrewDatasetPathParameter[]] $Parameters

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name FilesLimit -Value {
            $this._filesLimit
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetFilesLimit], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._filesLimit = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name LastModifiedDateCondition -Value {
            $this._lastModifiedDateCondition
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetFilterExpression], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._lastModifiedDateCondition = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Parameters -Value {
            $this._parameters
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetPathParameter], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._parameters = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobColumnSelector'"

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

    hidden [object] $_regex
    hidden [object] $_name

    [string] $Regex
    [string] $Name

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

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

Write-Verbose "Importing class 'DataBrewJobStatisticsConfiguration'"

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

    hidden [object] $_includedStatistics
    hidden [object] $_overrides

    [string[]] $IncludedStatistics
    [DataBrewJobStatisticOverride[]] $Overrides

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name IncludedStatistics -Value {
            $this._includedStatistics
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._includedStatistics = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Overrides -Value {
            $this._overrides
        } -SecondValue {
            param([ValidateType(([DataBrewJobStatisticOverride], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._overrides = $value
        }
    }

    DataBrewJobStatisticsConfiguration() : base() {}
    DataBrewJobStatisticsConfiguration([IDictionary] $props) : base($props) {}
    DataBrewJobStatisticsConfiguration([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
    hidden [VSJson] $_input

    [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._input
        } -SecondValue {
            param([ValidateType(([string], [VSJson], [VSYaml], [psobject], [IDictionary]))][object] $value)
            $this._input = [VSJson]::Transform($value)
            Write-Debug $this._input
        }
    }

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

Write-Verbose "Importing class 'DataBrewDatasetJsonOptions'"

class DataBrewDatasetJsonOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetJsonOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-jsonoptions.html'

    hidden [object] $_multiLine

    [bool] $MultiLine

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

    DataBrewDatasetJsonOptions() : base() {}
    DataBrewDatasetJsonOptions([IDictionary] $props) : base($props) {}
    DataBrewDatasetJsonOptions([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 'DataBrewJobAllowedStatistics'"

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

    hidden [object] $_statistics

    [string[]] $Statistics

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

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

Write-Verbose "Importing class 'DataBrewJobStatisticOverride'"

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

    hidden [object] $_statistic
    hidden [object] $_parameters

    [string] $Statistic
    [DataBrewJobParameterMap] $Parameters

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

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

Write-Verbose "Importing class 'DataBrewDatasetDataCatalogInputDefinition'"

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

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

    [string] $CatalogId
    [string] $DatabaseName
    [string] $TableName
    [DataBrewDatasetS3Location] $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(([DataBrewDatasetS3Location], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._tempDirectory = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewJobJobSample'"

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

    hidden [object] $_mode
    hidden [object] $_size

    [string] $Mode
    [int] $Size

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

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

Write-Verbose "Importing class 'DataBrewDatasetDatetimeOptions'"

class DataBrewDatasetDatetimeOptions : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetDatetimeOptions'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-datetimeoptions.html'

    hidden [object] $_format
    hidden [object] $_timezoneOffset
    hidden [object] $_localeCode

    [string] $Format
    [string] $TimezoneOffset
    [string] $LocaleCode

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

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

Write-Verbose "Importing class 'DataBrewRulesetRule'"

class DataBrewRulesetRule : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewRulesetRule'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-ruleset-rule.html'

    hidden [object] $_name
    hidden [object] $_disabled
    hidden [object] $_checkExpression
    hidden [object] $_substitutionMap
    hidden [object] $_threshold
    hidden [object] $_columnSelectors

    [string] $Name
    [bool] $Disabled
    [string] $CheckExpression
    [DataBrewRulesetSubstitutionValue[]] $SubstitutionMap
    [DataBrewRulesetThreshold] $Threshold
    [DataBrewRulesetColumnSelector[]] $ColumnSelectors

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Name -Value {
            $this._name
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._name = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Disabled -Value {
            $this._disabled
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._disabled = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name CheckExpression -Value {
            $this._checkExpression
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._checkExpression = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name SubstitutionMap -Value {
            $this._substitutionMap
        } -SecondValue {
            param([ValidateType(([DataBrewRulesetSubstitutionValue], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._substitutionMap = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Threshold -Value {
            $this._threshold
        } -SecondValue {
            param([ValidateType(([DataBrewRulesetThreshold], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._threshold = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ColumnSelectors -Value {
            $this._columnSelectors
        } -SecondValue {
            param([ValidateType(([DataBrewRulesetColumnSelector], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._columnSelectors = $value
        }
    }

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

Write-Verbose "Importing class 'DataBrewDatasetMetadata'"

class DataBrewDatasetMetadata : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetMetadata'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-metadata.html'

    hidden [object] $_sourceArn

    [string] $SourceArn

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

    DataBrewDatasetMetadata() : base() {}
    DataBrewDatasetMetadata([IDictionary] $props) : base($props) {}
    DataBrewDatasetMetadata([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 'DataBrewDatasetS3Location'"

class DataBrewDatasetS3Location : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSDataBrewDatasetS3Location'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-databrew-dataset-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
            }
        }
    }

    DataBrewDatasetS3Location() : base() {}
    DataBrewDatasetS3Location([IDictionary] $props) : base($props) {}
    DataBrewDatasetS3Location([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 '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
    [string] $Format
    [DataBrewDatasetFormatOptions] $FormatOptions
    [DataBrewDatasetInput] $Input
    [DataBrewDatasetPathOptions] $PathOptions
    [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 Format -Value {
            $this.Properties['Format']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Format'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name FormatOptions -Value {
            $this.Properties['FormatOptions']
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetFormatOptions], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['FormatOptions'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Input -Value {
            $this.Properties['Input']
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetInput], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Input'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name PathOptions -Value {
            $this.Properties['PathOptions']
        } -SecondValue {
            param([ValidateType(([DataBrewDatasetPathOptions], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['PathOptions'] = $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 'DataBrewRuleset'"

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

    hidden [object] $_condition

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

    DataBrewRuleset() : base() {}
    DataBrewRuleset([IDictionary] $props) : base($props) {}
    DataBrewRuleset([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
    [DataBrewProjectSample] $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(([DataBrewProjectSample], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Sample'] = $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
    [DataBrewJobDataCatalogOutput[]] $DataCatalogOutputs
    [DataBrewJobDatabaseOutput[]] $DatabaseOutputs
    [DataBrewJobOutputLocation] $OutputLocation
    [string] $ProjectName
    [DataBrewJobRecipe] $Recipe
    [string] $RoleArn
    [VSTag[]] $Tags
    [int] $Timeout
    [DataBrewJobJobSample] $JobSample
    [DataBrewJobProfileConfiguration] $ProfileConfiguration
    [DataBrewJobValidationConfiguration[]] $ValidationConfigurations
    [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 DataCatalogOutputs -Value {
            $this.Properties['DataCatalogOutputs']
        } -SecondValue {
            param([ValidateType(([DataBrewJobDataCatalogOutput], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['DataCatalogOutputs'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DatabaseOutputs -Value {
            $this.Properties['DatabaseOutputs']
        } -SecondValue {
            param([ValidateType(([DataBrewJobDatabaseOutput], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['DatabaseOutputs'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name OutputLocation -Value {
            $this.Properties['OutputLocation']
        } -SecondValue {
            param([ValidateType(([DataBrewJobOutputLocation], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['OutputLocation'] = $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(([DataBrewJobRecipe], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Recipe'] = $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 JobSample -Value {
            $this.Properties['JobSample']
        } -SecondValue {
            param([ValidateType(([DataBrewJobJobSample], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['JobSample'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ProfileConfiguration -Value {
            $this.Properties['ProfileConfiguration']
        } -SecondValue {
            param([ValidateType(([DataBrewJobProfileConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['ProfileConfiguration'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name ValidationConfigurations -Value {
            $this.Properties['ValidationConfigurations']
        } -SecondValue {
            param([ValidateType(([DataBrewJobValidationConfiguration], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this.Properties['ValidationConfigurations'] = $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) {}
}