Classes/_Types03.psm1

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

class MSFT_DeviceManagementWin32CatalogMobileAppAssignment
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.groupAssignmentTarget', '#microsoft.graph.allLicensedUsersAssignmentTarget', '#microsoft.graph.allDevicesAssignmentTarget', '#microsoft.graph.exclusionGroupAssignmentTarget', '#microsoft.graph.mobileAppAssignment')]
    [System.String] $dataType

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

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

    [DscProperty()]
    [ValidateSet('none', 'include', 'exclude')]
    [System.String] $deviceAndAppManagementAssignmentFilterType

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

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

    [DscProperty()]
    [ValidateSet('available', 'required', 'uninstall', 'availableWithoutEnrollment')]
    [System.String] $intent

    [DscProperty()]
    [MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettings] $assignmentSettings
}

class MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettings
{
    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.androidManagedStoreAppAssignmentSettings', '#microsoft.graph.iosStoreAppAssignmentSettings', '#microsoft.graph.iosLobAppAssignmentSettings', '#microsoft.graph.macOsLobAppAssignmentSettings', '#microsoft.graph.win32CatalogAppAssignmentSettings', '#microsoft.graph.win32LobAppAssignmentSettings', '#microsoft.graph.winGetAppAssignmentSettings', '#microsoft.graph.windowsAutoUpdateCatalogAppAssignmentSettings', '#microsoft.graph.windowsUniversalAppXAppAssignmentSettings')]
    [System.String] $odataType

    [DscProperty()]
    [MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettingsAutoUpdateSettings] $autoUpdateSettings

    [DscProperty()]
    [ValidateSet('notConfigured', 'foreground')]
    [System.String] $deliveryOptimizationPriority

    [DscProperty()]
    [MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettingsInstallTimeSettings] $installTimeSettings

    [DscProperty()]
    [ValidateSet('showAll', 'showReboot', 'hideAll')]
    [System.String] $notifications

    [DscProperty()]
    [MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettingsRestartSettings] $restartSettings
}

class MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettingsAutoUpdateSettings
{
    [DscProperty()]
    [ValidateSet('notConfigured', 'enabled', 'unknownFutureValue')]
    [System.String] $autoUpdateSupersededAppsState
}

class MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettingsInstallTimeSettings
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $useLocalTime

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

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

class MSFT_DeviceManagementWin32CatalogMobileAppAssignmentSettingsRestartSettings
{
    [DscProperty()]
    [System.Nullable[System.Int32]] $countdownDisplayBeforeRestartInMinutes

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

    [DscProperty()]
    [System.Nullable[System.Int32]] $restartNotificationSnoozeDurationInMinutes
}

class MSFT_DeviceManagementWin32MobileAppAssignment
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.groupAssignmentTarget', '#microsoft.graph.allLicensedUsersAssignmentTarget', '#microsoft.graph.allDevicesAssignmentTarget', '#microsoft.graph.exclusionGroupAssignmentTarget', '#microsoft.graph.mobileAppAssignment')]
    [System.String] $dataType

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

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

    [DscProperty()]
    [ValidateSet('none', 'include', 'exclude')]
    [System.String] $deviceAndAppManagementAssignmentFilterType

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

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

    [DscProperty()]
    [ValidateSet('available', 'required', 'uninstall', 'availableWithoutEnrollment')]
    [System.String] $intent

    [DscProperty()]
    [MSFT_DeviceManagementWin32MobileAppAssignmentSettings] $assignmentSettings
}

class MSFT_DeviceManagementWin32MobileAppAssignmentSettings
{
    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.androidManagedStoreAppAssignmentSettings', '#microsoft.graph.iosStoreAppAssignmentSettings', '#microsoft.graph.iosLobAppAssignmentSettings', '#microsoft.graph.macOsLobAppAssignmentSettings', '#microsoft.graph.win32CatalogAppAssignmentSettings', '#microsoft.graph.win32LobAppAssignmentSettings', '#microsoft.graph.winGetAppAssignmentSettings', '#microsoft.graph.windowsAutoUpdateCatalogAppAssignmentSettings', '#microsoft.graph.windowsUniversalAppXAppAssignmentSettings')]
    [System.String] $odataType

    [DscProperty()]
    [MSFT_DeviceManagementWin32MobileAppAssignmentSettingsAutoUpdateSettings] $autoUpdateSettings

    [DscProperty()]
    [ValidateSet('foreground', 'notConfigured')]
    [System.String] $deliveryOptimizationPriority

    [DscProperty()]
    [MSFT_DeviceManagementWin32MobileAppAssignmentSettingsInstallTimeSettings] $installTimeSettings

    [DscProperty()]
    [ValidateSet('showAll', 'showReboot', 'hideAll')]
    [System.String] $notifications

    [DscProperty()]
    [MSFT_DeviceManagementWin32MobileAppAssignmentSettingsRestartSettings] $restartSettings
}

class MSFT_DeviceManagementWin32MobileAppAssignmentSettingsAutoUpdateSettings
{
    [DscProperty()]
    [ValidateSet('enabled', 'notConfigured')]
    [System.String] $autoUpdateSupersededAppsState
}

class MSFT_DeviceManagementWin32MobileAppAssignmentSettingsInstallTimeSettings
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $useLocalTime

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

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

class MSFT_DeviceManagementWin32MobileAppAssignmentSettingsRestartSettings
{
    [DscProperty()]
    [System.Nullable[System.Int32]] $countdownDisplayBeforeRestartInMinutes

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

    [DscProperty()]
    [System.Nullable[System.Int32]] $restartNotificationSnoozeDurationInMinutes
}

class MSFT_DeviceManagementWindowsAutoUpdateCatalogMobileAppAssignment
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.groupAssignmentTarget', '#microsoft.graph.allLicensedUsersAssignmentTarget', '#microsoft.graph.allDevicesAssignmentTarget', '#microsoft.graph.exclusionGroupAssignmentTarget', '#microsoft.graph.mobileAppAssignment')]
    [System.String] $dataType

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

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

    [DscProperty()]
    [ValidateSet('none', 'include', 'exclude')]
    [System.String] $deviceAndAppManagementAssignmentFilterType

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

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

    [DscProperty()]
    [ValidateSet('available', 'required', 'uninstall', 'availableWithoutEnrollment')]
    [System.String] $intent

    [DscProperty()]
    [MSFT_DeviceManagementWindowsAutoUpdateCatalogMobileAppAssignmentSettings] $assignmentSettings
}

class MSFT_DeviceManagementWindowsAutoUpdateCatalogMobileAppAssignmentSettings
{
    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.androidManagedStoreAppAssignmentSettings', '#microsoft.graph.iosStoreAppAssignmentSettings', '#microsoft.graph.iosLobAppAssignmentSettings', '#microsoft.graph.macOsLobAppAssignmentSettings', '#microsoft.graph.win32CatalogAppAssignmentSettings', '#microsoft.graph.win32LobAppAssignmentSettings', '#microsoft.graph.winGetAppAssignmentSettings', '#microsoft.graph.windowsAutoUpdateCatalogAppAssignmentSettings', '#microsoft.graph.windowsUniversalAppXAppAssignmentSettings')]
    [System.String] $odataType

    [DscProperty()]
    [ValidateSet('notConfigured', 'foreground', 'unknownFutureValue')]
    [System.String] $deliveryOptimizationPriority

    [DscProperty()]
    [MSFT_DeviceManagementWindowsAutoUpdateCatalogMobileAppAssignmentSettingsInstallTimeSettings] $installTimeSettings

    [DscProperty()]
    [ValidateSet('showAll', 'showReboot', 'hideAll', 'unknownFutureValue')]
    [System.String] $notificationType

    [DscProperty()]
    [MSFT_DeviceManagementWindowsAutoUpdateCatalogMobileAppAssignmentSettingsRestartSettings] $restartSettings
}

class MSFT_DeviceManagementWindowsAutoUpdateCatalogMobileAppAssignmentSettingsInstallTimeSettings
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $useLocalTime

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

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

class MSFT_DeviceManagementWindowsAutoUpdateCatalogMobileAppAssignmentSettingsRestartSettings
{
    [DscProperty()]
    [System.Nullable[System.Int32]] $countdownDisplayBeforeRestartInMinutes

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

    [DscProperty()]
    [System.Nullable[System.Int32]] $restartNotificationSnoozeDurationInMinutes
}

class MSFT_DeviceManagementWingetMobileAppAssignment
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.groupAssignmentTarget', '#microsoft.graph.allLicensedUsersAssignmentTarget', '#microsoft.graph.allDevicesAssignmentTarget', '#microsoft.graph.exclusionGroupAssignmentTarget', '#microsoft.graph.mobileAppAssignment')]
    [System.String] $dataType

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

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

    [DscProperty()]
    [ValidateSet('none', 'include', 'exclude')]
    [System.String] $deviceAndAppManagementAssignmentFilterType

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

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

    [DscProperty()]
    [ValidateSet('available', 'required', 'uninstall', 'availableWithoutEnrollment')]
    [System.String] $intent

    [DscProperty()]
    [MSFT_DeviceManagementWingetMobileAppAssignmentSettings] $assignmentSettings
}

class MSFT_DeviceManagementWingetMobileAppAssignmentSettings
{
    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.androidManagedStoreAppAssignmentSettings', '#microsoft.graph.iosStoreAppAssignmentSettings', '#microsoft.graph.iosLobAppAssignmentSettings', '#microsoft.graph.macOsLobAppAssignmentSettings', '#microsoft.graph.win32CatalogAppAssignmentSettings', '#microsoft.graph.win32LobAppAssignmentSettings', '#microsoft.graph.winGetAppAssignmentSettings', '#microsoft.graph.windowsAutoUpdateCatalogAppAssignmentSettings', '#microsoft.graph.windowsUniversalAppXAppAssignmentSettings')]
    [System.String] $odataType

    [DscProperty()]
    [MSFT_DeviceManagementWinGetMobileAppAssignmentSettingsInstallTimeSettings] $installTimeSettings

    [DscProperty()]
    [ValidateSet('showAll', 'showReboot', 'hideAll')]
    [System.String] $notifications

    [DscProperty()]
    [MSFT_DeviceManagementWinGetMobileAppAssignmentSettingsRestartSettings] $restartSettings
}

class MSFT_DeviceManagementWinGetMobileAppAssignmentSettingsInstallTimeSettings
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $useLocalTime

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

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

class MSFT_DeviceManagementWinGetMobileAppAssignmentSettingsRestartSettings
{
    [DscProperty()]
    [System.Nullable[System.Int32]] $countdownDisplayBeforeRestartInMinutes

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

    [DscProperty()]
    [System.Nullable[System.Int32]] $restartNotificationSnoozeDurationInMinutes
}

class MSFT_EXOMailboxFolderUserPermission
{
    [DscProperty()]
    [System.String[]] $AccessRights

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

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

class MSFT_FabricDelegatedFrom
{
    [DscProperty()]
    [System.String] $Capacity

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

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

class MSFT_FabricTenantSetting
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $canSpecifySecurityGroups

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

    [DscProperty()]
    [MSFT_FabricDelegatedFrom] $delegatedFrom

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

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

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

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

    [DscProperty()]
    [MSFT_FabricTenantSettingProperty[]] $properties

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

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

class MSFT_FabricTenantSettingProperty
{
    [DscProperty()]
    [System.String] $name

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

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

class MSFT_IdentityGovernanceScope
{
    [DscProperty()]
    [System.String] $OdataType

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

class MSFT_IdentityGovernanceTrigger
{
    [DscProperty()]
    [System.String] $OdataType

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

    [DscProperty()]
    [System.Nullable[System.Int32]] $OffsetInDays
}

class MSFT_IdentityGovernanceWorkflowExecutionConditions
{
    [DscProperty()]
    [System.String] $OdataType

    [DscProperty()]
    [MSFT_IdentityGovernanceScope] $ScopeValue

    [DscProperty()]
    [MSFT_IdentityGovernanceTrigger] $TriggerValue
}

class MSFT_IntuneAccountProtectionLocalAdministratorPasswordSolutionPolicyAssignments
{
    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.groupAssignmentTarget', '#microsoft.graph.allLicensedUsersAssignmentTarget', '#microsoft.graph.allDevicesAssignmentTarget', '#microsoft.graph.exclusionGroupAssignmentTarget', '#microsoft.graph.configurationManagerCollectionAssignmentTarget')]
    [System.String] $dataType

    [DscProperty()]
    [ValidateSet('none', 'include', 'exclude')]
    [System.String] $deviceAndAppManagementAssignmentFilterType

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

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

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

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

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

class MSFT_IntuneAccountProtectionLocalUserGroupMembershipPolicyAssignments
{
    [DscProperty(Mandatory)]
    [ValidateSet('#microsoft.graph.groupAssignmentTarget', '#microsoft.graph.allLicensedUsersAssignmentTarget', '#microsoft.graph.allDevicesAssignmentTarget', '#microsoft.graph.exclusionGroupAssignmentTarget', '#microsoft.graph.configurationManagerCollectionAssignmentTarget')]
    [System.String] $dataType

    [DscProperty()]
    [ValidateSet('none', 'include', 'exclude')]
    [System.String] $deviceAndAppManagementAssignmentFilterType

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

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

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

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

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

class MSFT_IntuneAlertRuleCondition
{
    [DscProperty()]
    [ValidateSet('count', 'percentage', 'affectedCloudPcCount', 'affectedCloudPcPercentage', 'durationInMinutes')]
    [System.String] $Aggregation

    [DscProperty(Mandatory)]
    [ValidateSet('provisionFailures', 'imageUploadFailures', 'azureNetworkConnectionCheckFailures', 'cloudPcInGracePeriod', 'frontlineInsufficientLicenses', 'cloudPcConnectionErrors', 'cloudPcHostHealthCheckFailures', 'cloudPcZoneOutage', 'unknownFutureValue', 'frontlineBufferUsageDuration', 'frontlineBufferUsageThreshold', 'cloudPcUserSettingsPersistenceUsageThreshold', 'cloudPcDeprovisionedThreshold', 'cloudPcReserveDeprovisionFailedThreshold')]
    [System.String] $ConditionCategory

    [DscProperty()]
    [ValidateSet('greaterOrEqual', 'greater', 'equal', 'less', 'lessOrEqual')]
    [System.String] $Operator

    [DscProperty()]
    [ValidateSet('and', 'or')]
    [System.String] $RelationshipType

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

class MSFT_IntuneAlertRuleNotificationChannel
{
    [DscProperty(Mandatory)]
    [ValidateSet('portal', 'email')]
    [System.String] $NotificationChannelType

    [DscProperty()]
    [MSFT_IntuneAlertRuleNotificationChannelReceiver[]] $NotificationReceivers
}

class MSFT_IntuneAlertRuleNotificationChannelReceiver
{
    [DscProperty(Mandatory)]
    [System.String] $ContactInformation

    [DscProperty()]
    [ValidateSet('en-us', 'cs-cz', 'de-de', 'es-es', 'fr-fr', 'hu-hu', 'it-it', 'ja-jp', 'ko-kr', 'nl-nl', 'pl-pl', 'pt-br', 'pt-pt', 'ru-ru', 'sv-se', 'tr-tr', 'zh-cn', 'zh-tw')]
    [System.String] $Locale
}

class MSFT_IntuneAppConfigurationPolicyCustomSetting
{
    [DscProperty()]
    [System.String] $name

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

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

    [DscProperty(Key)]
    [System.String] $importedDeviceIdentifier

    [DscProperty()]
    [ValidateSet('unknown', 'imei', 'serialNumber', 'manufacturerModelSerial')]
    [System.String] $importedDeviceIdentityType

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

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

class MSFT_IntuneGroupPolicyDefinitionValue
{
    [DscProperty()]
    [ValidateSet('policy', 'preference')]
    [System.String] $ConfigurationType

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

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

    [DscProperty()]
    [MSFT_IntuneGroupPolicyDefinitionValueDefinition] $Definition

    [DscProperty()]
    [MSFT_IntuneGroupPolicyDefinitionValuePresentationValue[]] $PresentationValues
}

class MSFT_IntuneGroupPolicyDefinitionValueDefinition
{
    [DscProperty()]
    [System.String] $CategoryPath

    [DscProperty()]
    [ValidateSet('user', 'machine')]
    [System.String] $ClassType

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

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

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

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

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

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

    [DscProperty()]
    [ValidateSet('admxBacked', 'admxIngested')]
    [System.String] $PolicyType

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

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

class MSFT_IntuneGroupPolicyDefinitionValuePresentationValue
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $BooleanValue

    [DscProperty()]
    [System.Nullable[System.UInt64]] $DecimalValue

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

    [DscProperty()]
    [MSFT_IntuneGroupPolicyDefinitionValuePresentationValueKeyValuePair[]] $KeyValuePairValues

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

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

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

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

    [DscProperty()]
    [ValidateSet('#microsoft.graph.groupPolicyPresentationValueBoolean', '#microsoft.graph.groupPolicyPresentationValueDecimal', '#microsoft.graph.groupPolicyPresentationValueList', '#microsoft.graph.groupPolicyPresentationValueLongDecimal', '#microsoft.graph.groupPolicyPresentationValueMultiText', '#microsoft.graph.groupPolicyPresentationValueText')]
    [System.String] $odataType
}

class MSFT_IntuneGroupPolicyDefinitionValuePresentationValueKeyValuePair
{
    [DscProperty()]
    [System.String] $Value

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

class MSFT_IntuneWindowsInformationProtectionPolicyWindows10MdmEnrolledPolicyAssignments
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.groupAssignmentTarget', '#microsoft.graph.allLicensedUsersAssignmentTarget', '#microsoft.graph.allDevicesAssignmentTarget', '#microsoft.graph.exclusionGroupAssignmentTarget', '#microsoft.graph.configurationManagerCollectionAssignmentTarget')]
    [System.String] $dataType

    [DscProperty()]
    [ValidateSet('none', 'include', 'exclude')]
    [System.String] $deviceAndAppManagementAssignmentFilterType

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

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

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

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

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

class MSFT_iosHomeScreenApp
{
    [DscProperty(Mandatory)]
    [System.String] $displayName

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

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

    [DscProperty()]
    [MSFT_iosHomeScreenFolderPage[]] $pages
}

class MSFT_iosHomeScreenFolderPage
{
    [DscProperty()]
    [MSFT_iosHomeScreenApp[]] $apps
}

class MSFT_iosHomeScreenItem
{
    [DscProperty()]
    [MSFT_iosHomeScreenApp[]] $icons
}

class MSFT_iosNotificationSettings
{
    [DscProperty(Mandatory)]
    [System.String] $bundleID

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

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

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

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

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

    [DscProperty()]
    [ValidateSet('deviceDefault', 'banner', 'modal', 'none')]
    [System.String] $alertType

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

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

    [DscProperty()]
    [ValidateSet('notConfigured', 'alwaysShow', 'hideWhenLocked', 'neverShow')]
    [System.String] $previewVisibility
}

class MSFT_iosSingleSignOnExtension
{
    [DscProperty()]
    [System.String] $dataType

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    [DscProperty()]
    [MSFT_keyTypedValuePair[]] $Configurations

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

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

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

class MSFT_keyTypedValuePair
{
    [DscProperty()]
    [System.String] $dataType

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

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

class MSFT_iosWebContentFilterBase
{
    [DscProperty(Mandatory)]
    [System.String] $url

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

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

class MSFT_iosWebContentFilterSpecificWebsitesAccess
{
    [DscProperty()]
    [System.String] $dataType

    [DscProperty()]
    [MSFT_iosWebContentFilterBase[]] $specificWebsitesOnly

    [DscProperty()]
    [MSFT_iosWebContentFilterBase[]] $websiteList

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

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

class MSFT_MicrosoftGraphaccessPackageAnswerChoice
{
    [DscProperty()]
    [System.String] $ActualValue

    [DscProperty()]
    [MSFT_MicrosoftGraphaccessPackageLocalizedContent] $displayValue
}

class MSFT_MicrosoftGraphaccessPackageLocalizedContent
{
    [DscProperty()]
    [System.String] $DefaultText

    [DscProperty()]
    [MSFT_MicrosoftGraphaccessPackageLocalizedText[]] $LocalizedTexts
}

class MSFT_MicrosoftGraphaccessPackageLocalizedText
{
    [DscProperty()]
    [System.String] $Text

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

class MSFT_MicrosoftGraphaccesspackagequestion
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.accessPackageMultipleChoiceQuestion', '#microsoft.graph.accessPackageTextInputQuestion')]
    [System.String] $odataType

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

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

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

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

    [DscProperty()]
    [MSFT_MicrosoftGraphaccessPackageLocalizedContent] $QuestionText

    [DscProperty()]
    [MSFT_MicrosoftGraphaccessPackageAnswerChoice[]] $Choices

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

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

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

class MSFT_MicrosoftGraphaccesspackageresourceattribute
{
    [DscProperty()]
    [MSFT_MicrosoftGraphaccesspackageresourceattributedestination] $AttributeDestination

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

    [DscProperty()]
    [MSFT_MicrosoftGraphaccesspackageresourceattributesource] $AttributeSource

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

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

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

class MSFT_MicrosoftGraphaccesspackageresourceattributedestination
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.accessPackageUserDirectoryAttributeStore')]
    [System.String] $odataType
}

class MSFT_MicrosoftGraphaccessPackageResourceAttributeQuestion
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.accessPackageTextInputQuestion', '#microsoft.graph.accessPackageMultipleChoiceQuestion')]
    [System.String] $odataType

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

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

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

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

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

    [DscProperty()]
    [MSFT_MicrosoftGraphaccessPackageLocalizedContent] $QuestionText

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

    [DscProperty()]
    [MSFT_MicrosoftGraphaccessPackageAnswerChoice[]] $Choices
}

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

    [DscProperty()]
    [MSFT_MicrosoftGraphaccessPackageResourceAttributeQuestion] $Question
}

class MSFT_MicrosoftGraphaccessPackageNotificationSettings
{
    [DscProperty()]
    [System.Nullable[System.Boolean]] $IsAssignmentNotificationDisabled
}

class MSFT_MicrosoftGraphAccessReviewApplyAction
{
    [DscProperty()]
    [ValidateSet('#microsoft.graph.disableAndDeleteUserApplyAction', '#microsoft.graph.removeAccessApplyAction')]
    [System.String] $odataType
}

class MSFT_MicrosoftGraphAccessReviewRecommendationInsightSetting
{
    [DscProperty()]
    [System.String] $RecommendationLookBackDuration

    [DscProperty()]
    [ValidateSet('tenant', 'application', 'unknownFutureValue')]
    [System.String] $SignInScope

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

class MSFT_MicrosoftGraphaccessReviewScheduleSettings
{
    [DscProperty()]
    [MSFT_MicrosoftGraphAccessReviewApplyAction[]] $ApplyActions

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

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

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

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

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

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

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

    [DscProperty()]
    [MSFT_MicrosoftGraphAccessReviewRecommendationInsightSetting[]] $RecommendationInsightSettings

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

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

    [DscProperty()]
    [MSFT_MicrosoftGraphPatternedRecurrence] $Recurrence

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

class MSFT_MicrosoftGraphaccessReviewStageSettings
{
    [DscProperty()]
    [System.String[]] $DecisionsThatWillMoveToNextStage

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

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

    [DscProperty()]
    [MSFT_MicrosoftGraphAccessReviewRecommendationInsightSetting[]] $RecommendationInsightSettings

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

    [DscProperty(Mandatory)]
    [System.Nullable[System.Boolean]] $RecommendationsEnabled

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

class MSFT_MicrosoftGraphExpirationPattern
{
    [DscProperty()]
    [System.String] $Duration

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

    [DscProperty()]
    [ValidateSet('notSpecified', 'noExpiration', 'afterDateTime', 'afterDuration')]
    [System.String] $Type
}

class MSFT_MicrosoftGraphPatternedRecurrence
{
    [DscProperty()]
    [MSFT_MicrosoftGraphRecurrencePattern] $Pattern

    [DscProperty()]
    [MSFT_MicrosoftGraphRecurrenceRange] $Range
}

class MSFT_MicrosoftGraphPatternedRecurrence1
{
    [DscProperty()]
    [MSFT_MicrosoftGraphRecurrencePattern1] $Pattern

    [DscProperty()]
    [MSFT_MicrosoftGraphRecurrenceRange] $Range
}

class MSFT_MicrosoftGraphRecurrencePattern
{
    [DscProperty()]
    [System.Nullable[System.UInt32]] $DayOfMonth

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

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

    [DscProperty()]
    [ValidateSet('first', 'second', 'third', 'fourth', 'last')]
    [System.String] $Index

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

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

    [DscProperty()]
    [ValidateSet('daily', 'weekly', 'absoluteMonthly', 'relativeMonthly', 'absoluteYearly', 'relativeYearly')]
    [System.String] $Type
}

class MSFT_MicrosoftGraphRecurrencePattern1
{
    [DscProperty()]
    [System.Nullable[System.UInt32]] $DayOfMonth

    [DscProperty()]
    [ValidateSet('sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday')]
    [System.String[]] $DaysOfWeek

    [DscProperty()]
    [ValidateSet('sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday')]
    [System.String] $FirstDayOfWeek

    [DscProperty()]
    [ValidateSet('first', 'second', 'third', 'fourth', 'last')]
    [System.String] $Index

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

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

    [DscProperty()]
    [ValidateSet('daily', 'weekly', 'absoluteMonthly', 'relativeMonthly', 'absoluteYearly', 'relativeYearly')]
    [System.String] $Type
}

class MSFT_MicrosoftGraphRecurrenceRange
{
    [DscProperty()]
    [System.String] $EndDate

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

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

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

    [DscProperty()]
    [ValidateSet('endDate', 'noEnd', 'numbered')]
    [System.String] $Type
}

class MSFT_MicrosoftGraphrequestSchedule
{
    [DscProperty()]
    [MSFT_MicrosoftGraphExpirationPattern] $Expiration

    [DscProperty()]
    [MSFT_MicrosoftGraphPatternedRecurrence1] $Recurrence

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