VaporShell.GuardDuty.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 'GuardDutyFilterFindingCriteria'"

class GuardDutyFilterFindingCriteria : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSGuardDutyFilterFindingCriteria'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-findingcriteria.html'

    hidden [VSJson] $_criterion
    hidden [object] $_itemType

    [VSJson] $Criterion
    [GuardDutyFilterCondition] $ItemType

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

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

Write-Verbose "Importing class 'GuardDutyDetectorCFNDataSourceConfigurations'"

class GuardDutyDetectorCFNDataSourceConfigurations : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSGuardDutyDetectorCFNDataSourceConfigurations'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfndatasourceconfigurations.html'

    hidden [object] $_s3Logs
    hidden [object] $_kubernetes

    [GuardDutyDetectorCFNS3LogsConfiguration] $S3Logs
    [GuardDutyDetectorCFNKubernetesConfiguration] $Kubernetes

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name S3Logs -Value {
            $this._s3Logs
        } -SecondValue {
            param([ValidateType(([GuardDutyDetectorCFNS3LogsConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._s3Logs = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Kubernetes -Value {
            $this._kubernetes
        } -SecondValue {
            param([ValidateType(([GuardDutyDetectorCFNKubernetesConfiguration], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._kubernetes = $value
        }
    }

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

Write-Verbose "Importing class 'GuardDutyDetectorCFNS3LogsConfiguration'"

class GuardDutyDetectorCFNS3LogsConfiguration : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSGuardDutyDetectorCFNS3LogsConfiguration'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfns3logsconfiguration.html'

    hidden [object] $_enable

    [bool] $Enable

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

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

Write-Verbose "Importing class 'GuardDutyDetectorCFNKubernetesAuditLogsConfiguration'"

class GuardDutyDetectorCFNKubernetesAuditLogsConfiguration : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSGuardDutyDetectorCFNKubernetesAuditLogsConfiguration'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfnkubernetesauditlogsconfiguration.html'

    hidden [object] $_enable

    [bool] $Enable

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

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

Write-Verbose "Importing class 'GuardDutyDetectorCFNKubernetesConfiguration'"

class GuardDutyDetectorCFNKubernetesConfiguration : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSGuardDutyDetectorCFNKubernetesConfiguration'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfnkubernetesconfiguration.html'

    hidden [object] $_auditLogs

    [GuardDutyDetectorCFNKubernetesAuditLogsConfiguration] $AuditLogs

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

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

Write-Verbose "Importing class 'GuardDutyFilterCondition'"

class GuardDutyFilterCondition : VSResourceProperty {
    hidden [string] $_vsFunctionName = 'Add-VSGuardDutyFilterCondition'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-filter-condition.html'

    hidden [object] $_lt
    hidden [object] $_gte
    hidden [object] $_neq
    hidden [object] $_eq
    hidden [object] $_lte

    [int] $Lt
    [int] $Gte
    [string[]] $Neq
    [string[]] $Eq
    [int] $Lte

    hidden [void] _addAccessors() {
        $this | Add-Member -Force -MemberType ScriptProperty -Name Lt -Value {
            $this._lt
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._lt = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Gte -Value {
            $this._gte
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._gte = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Neq -Value {
            $this._neq
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._neq = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Eq -Value {
            $this._eq
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object[]] $value)
            $this._eq = @($value)
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Lte -Value {
            $this._lte
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this._lte = if ($cast = $value -as [int]) {
                $cast
            }
            else {
                $value
            }
        }
    }

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

Write-Verbose "Importing class 'GuardDutyThreatIntelSet'"

class GuardDutyThreatIntelSet : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSGuardDutyThreatIntelSet'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::GuardDuty::ThreatIntelSet'
    [string] $Format
    [bool] $Activate
    [string] $DetectorId
    [string] $Name
    [string] $Location
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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

Write-Verbose "Importing class 'GuardDutyMember'"

class GuardDutyMember : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSGuardDutyMember'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::GuardDuty::Member'
    [string] $Status
    [string] $MemberId
    [string] $Email
    [string] $Message
    [bool] $DisableEmailNotification
    [string] $DetectorId
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name Status -Value {
            $this.Properties['Status']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Status'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name MemberId -Value {
            $this.Properties['MemberId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['MemberId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Email -Value {
            $this.Properties['Email']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Email'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Message -Value {
            $this.Properties['Message']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Message'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DisableEmailNotification -Value {
            $this.Properties['DisableEmailNotification']
        } -SecondValue {
            param([ValidateType(([bool], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DisableEmailNotification'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name DetectorId -Value {
            $this.Properties['DetectorId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DetectorId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

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

Write-Verbose "Importing class 'GuardDutyMaster'"

class GuardDutyMaster : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSGuardDutyMaster'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::GuardDuty::Master'
    [string] $DetectorId
    [string] $MasterId
    [string] $InvitationId
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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

Write-Verbose "Importing class 'GuardDutyFilter'"

class GuardDutyFilter : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSGuardDutyFilter'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::GuardDuty::Filter'
    [string] $Action
    [string] $Description
    [string] $DetectorId
    [GuardDutyFilterFindingCriteria] $FindingCriteria
    [int] $Rank
    [string] $Name
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

    hidden [void] _addAccessors() {
        $this._addBaseAccessors()
        $this | Add-Member -Force -MemberType ScriptProperty -Name Action -Value {
            $this.Properties['Action']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Action'] = 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 DetectorId -Value {
            $this.Properties['DetectorId']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['DetectorId'] = if ($value -is [int]) {
                $value.ToString()
            }
            else {
                $value
            }
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name FindingCriteria -Value {
            $this.Properties['FindingCriteria']
        } -SecondValue {
            param([ValidateType(([GuardDutyFilterFindingCriteria], [string], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['FindingCriteria'] = $value
        }
        $this | Add-Member -Force -MemberType ScriptProperty -Name Rank -Value {
            $this.Properties['Rank']
        } -SecondValue {
            param([ValidateType(([string], [int], [IntrinsicFunction], [ConditionFunction]))] [object] $value)
            $this.Properties['Rank'] = if ($cast = $value -as [int]) {
                $cast
            }
            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 Condition -Value {
            $this._condition
        } -SecondValue {
            param(
                [ValidateType(([string], [IntrinsicFunction], [ConditionFunction]))] [object]
                $value
            )
            $this._condition = $value
        }
    }

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

Write-Verbose "Importing class 'GuardDutyDetector'"

class GuardDutyDetector : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSGuardDutyDetector'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::GuardDuty::Detector'
    [string] $FindingPublishingFrequency
    [GuardDutyDetectorCFNDataSourceConfigurations] $DataSources
    [bool] $Enable
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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

Write-Verbose "Importing class 'GuardDutyIPSet'"

class GuardDutyIPSet : VSResource {
    hidden [string] $_vsFunctionName = 'New-VSGuardDutyIPSet'
    hidden [string] $_awsDocumentation = 'http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html'

    hidden [object] $_condition

    [string] $Type = 'AWS::GuardDuty::IPSet'
    [string] $Format
    [bool] $Activate
    [string] $DetectorId
    [string] $Name
    [string] $Location
    [VSJson] $Metadata
    [UpdatePolicy] $UpdatePolicy
    [string] $Condition

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

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