Classes/_Types04.psm1

# GENERATED FILE - do not edit.
# Produced by Utilities/Build-Microsoft365DSC.ps1 from DscResources/MSFT_*.

class MSFT_MicrosoftGraphAccessReviewPrincipalScope
{
    [DscProperty()]
    [System.String] $Query

    [DscProperty()]
    [System.String] $QueryRoot

    [DscProperty()]
    [System.String] $QueryType

    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.accessReviewPrincipalScope', '#microsoft.graph.accessReviewQueryScope')]
    [System.String] $odataType

    [DscProperty()]
    [ValidateSet('allUsers', 'guestUsers', 'inactiveUsers', 'inactiveGuestUsers')]
    [System.String] $scopeType
}

class MSFT_MicrosoftGraphAccessReviewResourceScope
{
    [DscProperty()]
    [System.String] $Query

    [DscProperty()]
    [System.String] $QueryRoot

    [DscProperty()]
    [System.String] $QueryType

    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.accessReviewResourceScope', '#microsoft.graph.accessReviewQueryScope')]
    [System.String] $odataType

    [DscProperty()]
    [System.String] $displayName

    [DscProperty()]
    [System.String] $resourceScopeId

    [DscProperty()]
    [ValidateSet('group', 'catalog', 'servicePrincipal', 'directoryRole', 'accessPackageAssignmentPolicy')]
    [System.String] $scopeType
}

class MSFT_MicrosoftGraphaccessReviewScope
{
    [DscProperty()]
    [System.String] $Query

    [DscProperty()]
    [System.String] $QueryRoot

    [DscProperty()]
    [System.String] $QueryType

    [DscProperty()]
    [MSFT_MicrosoftGraphAccessReviewPrincipalScope[]] $PrincipalScopes

    [DscProperty()]
    [MSFT_MicrosoftGraphAccessReviewResourceScope[]] $ResourceScopes

    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.accessReviewQueryScope', '#microsoft.graph.accessReviewReviewerScope', '#microsoft.graph.principalResourceMembershipsScope', '#microsoft.graph.accessReviewInactiveUsersQueryScope')]
    [System.String] $odataType
}

class MSFT_MicrosoftGraphAccessReviewScope2
{
    [DscProperty()]
    [System.String] $Query

    [DscProperty()]
    [System.String] $QueryType
}

class MSFT_MicrosoftGraphActivitySettings
{
    [DscProperty()]
    [MSFT_MicrosoftGraphUrlToItemResolverBase[]] $UrlToItemResolvers
}

class MSFT_MicrosoftGraphUrlMatchInfo
{
    [DscProperty()]
    [System.String[]] $BaseUrls

    [DscProperty()]
    [System.String] $UrlPattern
}

class MSFT_MicrosoftGraphUrlToItemResolverBase
{
    [DscProperty()]
    [System.String] $ItemId

    [DscProperty()]
    [System.Nullable[System.Int32]] $Priority

    [DscProperty()]
    [MSFT_MicrosoftGraphUrlMatchInfo] $UrlMatchInfo
}

class MSFT_MicrosoftGraphAirPrintDestination
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $ForceTls

    [DscProperty()]
    [System.String] $IpAddress

    [DscProperty()]
    [System.Nullable[System.Int32]] $Port

    [DscProperty()]
    [System.String] $ResourcePath
}

class MSFT_MicrosoftGraphandroiddeviceownerdelegatedscopeappsetting
{
    [DscProperty()]
    [MSFT_MicrosoftGraphapplistitem] $appDetail

    [DscProperty()]
    [ValidateSet('unspecified', 'certificateInstall', 'captureNetworkActivityLog', 'captureSecurityLog')]
    [System.String[]] $appScopes
}

class MSFT_MicrosoftGraphapplistitem
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.appleAppListItem')]
    [System.String] $odataType

    [DscProperty(Mandatory)]
    [System.String] $appId

    [DscProperty()]
    [System.String] $appStoreUrl

    [DscProperty()]
    [System.String] $name

    [DscProperty()]
    [System.String] $publisher
}

class MSFT_MicrosoftGraphiosnetworkusagerule
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $cellularDataBlocked

    [DscProperty()]
    [System.Nullable[System.Boolean]] $cellularDataBlockWhenRoaming

    [DscProperty()]
    [MSFT_MicrosoftGraphapplistitem[]] $managedApps
}

class MSFT_MicrosoftGraphandroiddeviceownerglobalproxy
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.androidDeviceOwnerGlobalProxyAutoConfig', '#microsoft.graph.androidDeviceOwnerGlobalProxyDirect')]
    [System.String] $odataType

    [DscProperty()]
    [System.String] $proxyAutoConfigURL

    [DscProperty()]
    [System.String[]] $excludedHosts

    [DscProperty()]
    [System.String] $host

    [DscProperty()]
    [System.Nullable[System.UInt32]] $port
}

class MSFT_MicrosoftGraphandroiddeviceownerkioskmodeapp
{
    [DscProperty()]
    [System.String] $className

    [DscProperty()]
    [System.Nullable[System.Boolean]] $offlineAppAccessEnabled

    [DscProperty()]
    [System.String] $package

    [DscProperty()]
    [System.Nullable[System.Boolean]] $preSignInAppAccessEnabled
}

class MSFT_MicrosoftGraphandroiddeviceownerkioskmodeapppositionitem
{
    [DscProperty()]
    [MSFT_MicrosoftGraphandroiddeviceownerkioskmodehomescreenitem] $item

    [DscProperty()]
    [System.Nullable[System.UInt32]] $position
}

class MSFT_MicrosoftGraphandroiddeviceownerkioskmodefolderitem
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.androidDeviceOwnerKioskModeApp', '#microsoft.graph.androidDeviceOwnerKioskModeWeblink')]
    [System.String] $odataType

    [DscProperty()]
    [System.String] $className

    [DscProperty()]
    [System.String] $package

    [DscProperty()]
    [System.String] $label

    [DscProperty()]
    [System.String] $link
}

class MSFT_MicrosoftGraphandroiddeviceownerkioskmodehomescreenitem
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.androidDeviceOwnerKioskModeApp', '#microsoft.graph.androidDeviceOwnerKioskModeWeblink', '#microsoft.graph.androidDeviceOwnerKioskModeManagedFolder')]
    [System.String] $odataType

    [DscProperty()]
    [System.String] $folderIdentifier

    [DscProperty()]
    [System.String] $folderName

    [DscProperty()]
    [MSFT_MicrosoftGraphandroiddeviceownerkioskmodefolderitem[]] $items

    [DscProperty()]
    [System.String] $className

    [DscProperty()]
    [System.String] $package

    [DscProperty()]
    [System.String] $label

    [DscProperty()]
    [System.String] $link
}

class MSFT_MicrosoftGraphandroiddeviceownerkioskmodemanagedfolder
{
    [DscProperty()]
    [System.String] $folderIdentifier

    [DscProperty()]
    [System.String] $folderName

    [DscProperty()]
    [MSFT_MicrosoftGraphandroiddeviceownerkioskmodefolderitem[]] $items
}

class MSFT_MicrosoftGraphandroiddeviceownersystemupdatefreezeperiod
{
    [DscProperty()]
    [System.Nullable[System.UInt32]] $endDay

    [DscProperty()]
    [System.Nullable[System.UInt32]] $endMonth

    [DscProperty()]
    [System.Nullable[System.UInt32]] $startDay

    [DscProperty()]
    [System.Nullable[System.UInt32]] $startMonth
}

class MSFT_MicrosoftGraphandroiddeviceowneruserfacingmessage
{
    [DscProperty()]
    [System.String] $defaultMessage

    [DscProperty()]
    [MSFT_MicrosoftGraphkeyvaluepair[]] $localizedMessages
}

class MSFT_MicrosoftGraphkeyvaluepair
{
    [DscProperty(Mandatory)]
    [System.String] $Name

    [DscProperty()]
    [System.String] $Value
}

class MSFT_MicrosoftGraphAndroidMinimumOperatingSystem
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $V10_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V11_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V12_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V13_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V14_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V15_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V4_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V4_0_3

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V4_1

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V4_2

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V4_3

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V4_4

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V5_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V5_1

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V6_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V7_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V7_1

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V8_0

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V8_1

    [DscProperty()]
    [System.Nullable[System.Boolean]] $V9_0
}

class MSFT_MicrosoftGraphandroidPermissionAction
{
    [DscProperty()]
    [ValidateSet('prompt', 'autoGrant', 'autoDeny')]
    [System.String] $Action

    [DscProperty(Mandatory)]
    [System.String] $Permission
}

class MSFT_MicrosoftGraphapiApplication
{
    [DscProperty()]
    [MSFT_MicrosoftGraphPreAuthorizedApplication[]] $PreAuthorizedApplications

    [DscProperty()]
    [MSFT_MicrosoftGraphAPIOauth2PermissionScopes[]] $Oauth2PermissionScopes
}

class MSFT_MicrosoftGraphAPIOauth2PermissionScopes
{
    [DscProperty()]
    [System.String] $adminConsentDescription

    [DscProperty()]
    [System.String] $adminConsentDisplayName

    [DscProperty()]
    [System.String] $userConsentDescription

    [DscProperty()]
    [System.String] $userConsentDisplayName

    [DscProperty(Mandatory)]
    [System.String] $value

    [DscProperty()]
    [System.Nullable[System.Boolean]] $isEnabled

    [DscProperty()]
    [System.String] $type

    [DscProperty()]
    [System.String] $id
}

class MSFT_MicrosoftGraphPreAuthorizedApplication
{
    [DscProperty(Mandatory)]
    [System.String] $AppId

    [DscProperty(Mandatory)]
    [System.String[]] $PermissionIds
}

class MSFT_MicrosoftGraphappConfigurationSettingItem
{
    [DscProperty(Mandatory)]
    [System.String] $AppConfigKey

    [DscProperty(Mandatory)]
    [ValidateSet('stringType', 'integerType', 'realType', 'booleanType', 'tokenType')]
    [System.String] $AppConfigKeyType

    [DscProperty()]
    [System.String] $AppConfigKeyValue
}

class MSFT_MicrosoftGraphapplistitemMacOS
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.appleAppListItem')]
    [System.String] $odataType

    [DscProperty(Mandatory)]
    [System.String] $appId

    [DscProperty()]
    [System.String] $appStoreUrl

    [DscProperty()]
    [System.String] $name

    [DscProperty()]
    [System.String] $publisher
}

class MSFT_MicrosoftGraphappRole
{
    [DscProperty()]
    [System.String[]] $AllowedMemberTypes

    [DscProperty()]
    [System.String] $Description

    [DscProperty()]
    [System.String] $DisplayName

    [DscProperty()]
    [System.String] $Id

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsEnabled

    [DscProperty()]
    [System.String] $Origin

    [DscProperty(Mandatory)]
    [System.String] $Value
}

class MSFT_MicrosoftGraphapprovalsettings
{
    [DscProperty()]
    [ValidateSet('SingleStage', 'Serial', 'Parallel', 'NoApproval')]
    [System.String] $ApprovalMode

    [DscProperty()]
    [MSFT_MicrosoftGraphapprovalstage1[]] $ApprovalStages

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsApprovalRequired

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsApprovalRequiredForExtension

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsRequestorJustificationRequired
}

class MSFT_MicrosoftGraphapprovalstage1
{
    [DscProperty()]
    [System.Nullable[System.UInt32]] $ApprovalStageTimeOutInDays

    [DscProperty()]
    [ValidateSet('default', 'notVisible', 'visible', 'unknownFutureValue')]
    [System.String] $ApproverInformationVisibility

    [DscProperty()]
    [System.Nullable[System.UInt32]] $EscalationTimeInMinutes

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsApproverJustificationRequired

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsEscalationEnabled

    [DscProperty()]
    [MSFT_MicrosoftGraphuserset[]] $PrimaryApprovers

    [DscProperty()]
    [MSFT_MicrosoftGraphuserset[]] $EscalationApprovers
}

class MSFT_MicrosoftGraphassignmentreviewsettings
{
    [DscProperty()]
    [ValidateSet('acceptAccessRecommendation', 'keepAccess', 'removeAccess', 'unknownFutureValue')]
    [System.String] $AccessReviewTimeoutBehavior

    [DscProperty()]
    [System.Nullable[System.UInt32]] $DurationInDays

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsAccessRecommendationEnabled

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsAgenticExperienceEnabled

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsApprovalJustificationRequired

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsEnabled

    [DscProperty()]
    [System.String] $RecurrenceType

    [DscProperty()]
    [System.String] $ReviewerType

    [DscProperty()]
    [MSFT_MicrosoftGraphuserset[]] $Reviewers

    [DscProperty()]
    [System.String] $StartDateTime
}

class MSFT_MicrosoftGraphrequestorsettings
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $AcceptRequests

    [DscProperty()]
    [MSFT_MicrosoftGraphuserset[]] $AllowedRequestors

    [DscProperty()]
    [ValidateSet('NoSubjects', 'SpecificDirectorySubjects', 'SpecificConnectedOrganizationSubjects', 'AllConfiguredConnectedOrganizationSubjects', 'AllExistingConnectedOrganizationSubjects', 'AllExistingDirectoryMemberUsers', 'AllExistingDirectorySubjects', 'AllExternalSubjects')]
    [System.String] $ScopeType
}

class MSFT_MicrosoftGraphuserset
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.singleUser', '#microsoft.graph.groupMembers', '#microsoft.graph.requestorManager', '#microsoft.graph.internalSponsors', '#microsoft.graph.externalSponsors', '#microsoft.graph.connectedOrganizationMembers')]
    [System.String] $odataType

    [DscProperty()]
    [System.String] $Id

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsBackup

    [DscProperty()]
    [System.Nullable[System.UInt32]] $ManagerLevel
}

class MSFT_MicrosoftGraphauthenticationBehaviors
{
    [DscProperty()]
    [ValidateSet('True', 'False', 'Null')]
    [System.String] $BlockAzureADGraphAccess

    [DscProperty()]
    [ValidateSet('True', 'False', 'Null')]
    [System.String] $RemoveUnverifiedEmailClaim
}

class MSFT_MicrosoftGraphAuthenticationMethodsRegistrationCampaign
{
    [DscProperty()]
    [MSFT_MicrosoftGraphExcludeTarget[]] $ExcludeTargets

    [DscProperty()]
    [MSFT_MicrosoftGraphAuthenticationMethodsRegistrationCampaignIncludeTarget[]] $IncludeTargets

    [DscProperty()]
    [System.Nullable[System.UInt32]] $SnoozeDurationInDays

    [DscProperty()]
    [ValidateSet('default', 'enabled', 'disabled', 'unknownFutureValue')]
    [System.String] $State
}

class MSFT_MicrosoftGraphAuthenticationMethodsRegistrationCampaignIncludeTarget
{
    [DscProperty(Key)]
    [System.String] $Id

    [DscProperty(Mandatory)]
    [ValidateSet('Fido2', 'microsoftAuthenticator')]
    [System.String] $TargetedAuthenticationMethod

    [DscProperty(Key)]
    [ValidateSet('user', 'group', 'unknownFutureValue')]
    [System.String] $TargetType
}

class MSFT_MicrosoftGraphExcludeTarget
{
    [DscProperty(Key)]
    [System.String] $Id

    [DscProperty(Key)]
    [ValidateSet('user', 'group', 'unknownFutureValue')]
    [System.String] $TargetType
}

class MSFT_MicrosoftGraphregistrationEnforcement
{
    [DscProperty()]
    [MSFT_MicrosoftGraphAuthenticationMethodsRegistrationCampaign] $AuthenticationMethodsRegistrationCampaign
}

class MSFT_MicrosoftGraphbitLockerFixedDrivePolicy
{
    [DscProperty()]
    [ValidateSet('aesCbc128', 'aesCbc256', 'xtsAes128', 'xtsAes256')]
    [System.String] $EncryptionMethod

    [DscProperty()]
    [MSFT_MicrosoftGraphBitLockerRecoveryOptions] $RecoveryOptions

    [DscProperty()]
    [System.Nullable[System.Boolean]] $RequireEncryptionForWriteAccess
}

class MSFT_MicrosoftGraphBitLockerRecoveryOptions
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $BlockDataRecoveryAgent

    [DscProperty()]
    [System.Nullable[System.Boolean]] $EnableBitLockerAfterRecoveryInformationToStore

    [DscProperty()]
    [System.Nullable[System.Boolean]] $EnableRecoveryInformationSaveToStore

    [DscProperty()]
    [System.Nullable[System.Boolean]] $HideRecoveryOptions

    [DscProperty()]
    [ValidateSet('passwordAndKey', 'passwordOnly')]
    [System.String] $RecoveryInformationToStore

    [DscProperty()]
    [ValidateSet('blocked', 'required', 'allowed', 'notConfigured')]
    [System.String] $RecoveryKeyUsage

    [DscProperty()]
    [ValidateSet('blocked', 'required', 'allowed', 'notConfigured')]
    [System.String] $RecoveryPasswordUsage
}

class MSFT_MicrosoftGraphbitLockerSystemDrivePolicy
{
    [DscProperty()]
    [ValidateSet('aesCbc128', 'aesCbc256', 'xtsAes128', 'xtsAes256')]
    [System.String] $EncryptionMethod

    [DscProperty()]
    [System.Nullable[System.UInt32]] $MinimumPinLength

    [DscProperty()]
    [System.Nullable[System.Boolean]] $PrebootRecoveryEnableMessageAndUrl

    [DscProperty()]
    [System.String] $PrebootRecoveryMessage

    [DscProperty()]
    [System.String] $PrebootRecoveryUrl

    [DscProperty()]
    [MSFT_MicrosoftGraphBitLockerRecoveryOptions] $RecoveryOptions

    [DscProperty()]
    [System.Nullable[System.Boolean]] $StartupAuthenticationBlockWithoutTpmChip

    [DscProperty()]
    [System.Nullable[System.Boolean]] $StartupAuthenticationRequired

    [DscProperty()]
    [ValidateSet('blocked', 'required', 'allowed', 'notConfigured')]
    [System.String] $StartupAuthenticationTpmKeyUsage

    [DscProperty()]
    [ValidateSet('blocked', 'required', 'allowed', 'notConfigured')]
    [System.String] $StartupAuthenticationTpmPinAndKeyUsage

    [DscProperty()]
    [ValidateSet('blocked', 'required', 'allowed', 'notConfigured')]
    [System.String] $StartupAuthenticationTpmPinUsage

    [DscProperty()]
    [ValidateSet('blocked', 'required', 'allowed', 'notConfigured')]
    [System.String] $StartupAuthenticationTpmUsage
}

class MSFT_MicrosoftGraphbitLockerRemovableDrivePolicy
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $BlockCrossOrganizationWriteAccess

    [DscProperty()]
    [ValidateSet('aesCbc128', 'aesCbc256', 'xtsAes128', 'xtsAes256')]
    [System.String] $EncryptionMethod

    [DscProperty()]
    [System.Nullable[System.Boolean]] $RequireEncryptionForWriteAccess
}

class MSFT_MicrosoftGraphcertificateAuthority
{
    [DscProperty(Mandatory)]
    [System.String] $Certificate

    [DscProperty()]
    [System.String] $CertificateRevocationListUrl

    [DscProperty()]
    [System.String] $DeltaCertificateRevocationListUrl

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsRootAuthority
}

class MSFT_MicrosoftGraphcloudPcAutopilotConfiguration
{
    [DscProperty()]
    [System.Nullable[System.UInt32]] $ApplicationTimeoutInMinutes

    [DscProperty()]
    [System.String] $DevicePreparationProfileId

    [DscProperty()]
    [System.Nullable[System.Boolean]] $OnFailureDeviceAccessDenied
}

class MSFT_MicrosoftGraphcloudPcCrossRegionDisasterRecoverySetting
{
    [DscProperty()]
    [MSFT_MicrosoftGraphCloudPcDisasterRecoveryNetworkSetting] $DisasterRecoveryNetworkSetting

    [DscProperty()]
    [ValidateSet('notConfigured', 'crossRegion', 'premium', 'unknownFutureValue')]
    [System.String] $DisasterRecoveryType

    [DscProperty()]
    [System.Nullable[System.Boolean]] $MaintainCrossRegionRestorePointEnabled

    [DscProperty()]
    [System.Nullable[System.Boolean]] $UserInitiatedDisasterRecoveryAllowed
}

class MSFT_MicrosoftGraphCloudPcDisasterRecoveryNetworkSetting
{
    [DscProperty()]
    [System.String] $OnPremisesConnectionId

    [DscProperty()]
    [ValidateSet('default', 'australia', 'canada', 'usCentral', 'usEast', 'usWest', 'france', 'germany', 'europeUnion', 'unitedKingdom', 'japan', 'asia', 'india', 'southAmerica', 'euap', 'usGovernment', 'usGovernmentDOD', 'unknownFutureValue', 'norway', 'switzerland', 'southKorea', 'middleEast', 'mexico', 'australasia', 'europe')]
    [System.String] $RegionGroup

    [DscProperty()]
    [System.String] $RegionName

    [DscProperty()]
    [ValidateSet('#microsoft.graph.cloudPcDisasterRecoveryAzureConnectionSetting', '#microsoft.graph.cloudPcDisasterRecoveryMicrosoftHostedNetworkSetting')]
    [System.String] $odataType
}

class MSFT_MicrosoftGraphcloudPcDomainJoinConfiguration
{
    [DscProperty()]
    [ValidateSet('azureADJoin', 'hybridAzureADJoin')]
    [System.String] $DomainJoinType

    [DscProperty()]
    [ValidateSet('default', 'asia', 'australasia', "australiaNewZealand", 'canada', 'europe', 'india', 'africa', 'usCentral', 'usEast', 'usWest', 'southAmerica', 'middleEast', 'centralAmerica', 'usGovernment', 'mexico')]
    [System.String] $GeographicLocationType

    [DscProperty()]
    [System.String] $OnPremisesConnectionId

    [DscProperty()]
    [ValidateSet('asia', 'australasia', 'australia', 'austria', 'automatic', 'belgium', 'brazil', 'canada', 'default', 'denmark', 'euap', 'europe', 'europeUnion', 'france', 'germany', 'hongKong', 'india', 'indonesia', 'ireland', 'israel', 'italy', 'japan', 'kenya', 'malaysia', 'mexico', 'middleEast', 'netherlands', 'newZealand', 'norway', 'poland', 'singapore', 'southAmerica', 'southKorea', 'spain', 'sweden', 'switzerland', 'taiwan', 'unitedKingdom', 'unknownFutureValue', 'usCentral', 'usEast', 'usGovernment', 'usGovernmentDOD', 'usWest')]
    [System.String] $RegionGroup

    [DscProperty()]
    [System.String] $RegionName

    [DscProperty()]
    [ValidateSet('azureADJoin', 'hybridAzureADJoin')]
    [System.String] $Type
}

class MSFT_MicrosoftGraphcloudPcNotificationSetting
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $RestartPromptsDisabled
}

class MSFT_MicrosoftGraphcloudPcProvisioningPolicyAutopatch
{
    [DscProperty()]
    [System.String] $AutopatchGroupId

    [DscProperty()]
    [System.String] $AutopatchGroupDisplayName
}

class MSFT_MicrosoftGraphcloudPcRestorePointSetting
{
    [DscProperty()]
    [ValidateSet('default', 'fourHours', 'sixHours', 'twelveHours', 'sixteenHours', 'twentyFourHours')]
    [System.String] $FrequencyType

    [DscProperty()]
    [System.Nullable[System.Boolean]] $UserRestoreEnabled
}

class MSFT_MicrosoftGraphcloudPcWindowsSetting
{
    [DscProperty()]
    [System.String] $Locale
}

class MSFT_MicrosoftGraphcloudPcWindowsSettings
{
    [DscProperty()]
    [System.String] $Language
}

class MSFT_MicrosoftGraphcompanyPortalBlockedAction
{
    [DscProperty()]
    [ValidateSet('unknown', 'remove', 'reset')]
    [System.String] $Action

    [DscProperty()]
    [ValidateSet('unknown', 'company', 'personal')]
    [System.String] $OwnerType

    [DscProperty()]
    [ValidateSet('android', 'androidForWork', 'iOS', 'macOS', 'windowsPhone81', 'windows81AndLater', 'windows10AndLater', 'androidWorkProfile', 'unknown', 'androidAOSP', 'androidMobileApplicationManagement', 'iOSMobileApplicationManagement', 'unknownFutureValue', 'windowsMobileApplicationManagement')]
    [System.String] $Platform
}

class MSFT_MicrosoftGraphcryptographySuite
{
    [DscProperty()]
    [ValidateSet('md5_96', 'sha1_96', 'sha_256_128', 'aes128Gcm', 'aes192Gcm', 'aes256Gcm')]
    [System.String] $AuthenticationTransformConstants

    [DscProperty()]
    [ValidateSet('aes256', 'des', 'tripleDes', 'aes128', 'aes128Gcm', 'aes256Gcm', 'aes192', 'aes192Gcm', 'chaCha20Poly1305')]
    [System.String] $CipherTransformConstants

    [DscProperty()]
    [ValidateSet('group1', 'group2', 'group14', 'ecp256', 'ecp384', 'group24')]
    [System.String] $DhGroup

    [DscProperty()]
    [ValidateSet('aes256', 'des', 'tripleDes', 'aes128', 'aes128Gcm', 'aes256Gcm', 'aes192', 'aes192Gcm', 'chaCha20Poly1305')]
    [System.String] $EncryptionMethod

    [DscProperty()]
    [ValidateSet('sha2_256', 'sha1_96', 'sha1_160', 'sha2_384', 'sha2_512', 'md5')]
    [System.String] $IntegrityCheckMethod

    [DscProperty()]
    [ValidateSet('pfs1', 'pfs2', 'pfs2048', 'ecp256', 'ecp384', 'pfsMM', 'pfs24')]
    [System.String] $PfsGroup
}

class MSFT_MicrosoftGraphcustomextensionhandler
{
    [DscProperty()]
    [System.String] $CustomExtensionId

    [DscProperty()]
    [ValidateSet('assignmentRequestCreated', 'assignmentRequestApproved', 'assignmentRequestGranted', 'assignmentRequestRemoved', 'assignmentFourteenDaysBeforeExpiration', 'assignmentOneDayBeforeExpiration', 'unknownFutureValue')]
    [System.String] $Stage

    [DscProperty()]
    [System.String] $Id
}

class MSFT_MicrosoftGraphcustomSubjectAlternativeName
{
    [DscProperty(Mandatory)]
    [System.String] $Name

    [DscProperty(Mandatory)]
    [ValidateSet('none', 'emailAddress', 'userPrincipalName', 'customAzureADAttribute', 'domainNameService', 'universalResourceIdentifier')]
    [System.String] $SanType
}

class MSFT_MicrosoftGraphdefenderDetectedMalwareActions
{
    [DscProperty()]
    [ValidateSet('deviceDefault', 'clean', 'quarantine', 'remove', 'allow', 'userDefined', 'block')]
    [System.String] $HighSeverity

    [DscProperty()]
    [ValidateSet('deviceDefault', 'clean', 'quarantine', 'remove', 'allow', 'userDefined', 'block')]
    [System.String] $LowSeverity

    [DscProperty()]
    [ValidateSet('deviceDefault', 'clean', 'quarantine', 'remove', 'allow', 'userDefined', 'block')]
    [System.String] $ModerateSeverity

    [DscProperty()]
    [ValidateSet('deviceDefault', 'clean', 'quarantine', 'remove', 'allow', 'userDefined', 'block')]
    [System.String] $SevereSeverity
}

class MSFT_MicrosoftGraphDeviceCompliancePolicyScript
{
    [DscProperty(Mandatory)]
    [System.String] $DisplayName

    [DscProperty()]
    [System.String] $RulesContent
}

class MSFT_MicrosoftGraphDeviceComplianceScheduledActionsForRuleConfiguration
{
    [DscProperty()]
    [ValidateSet('block', 'notification', 'retire')]
    [System.String] $ActionType

    [DscProperty()]
    [System.Nullable[System.UInt32]] $GracePeriodHours

    [DscProperty()]
    [System.String[]] $NotificationMessageCCList

    [DscProperty()]
    [System.String] $NotificationTemplate
}

class MSFT_MicrosoftGraphdeviceHealthScriptParameter
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $ApplyDefaultValueWhenNotAssigned

    [DscProperty()]
    [System.String] $Description

    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsRequired

    [DscProperty()]
    [System.String] $Name

    [DscProperty()]
    [System.Nullable[System.Boolean]] $DefaultValue

    [DscProperty()]
    [ValidateSet('#microsoft.graph.deviceHealthScriptBooleanParameter', '#microsoft.graph.deviceHealthScriptIntegerParameter', '#microsoft.graph.deviceHealthScriptStringParameter')]
    [System.String] $odataType
}