DSCResources/MSFT_IntuneWindowsAutopilotDeploymentProfileAzureADJoined/MSFT_IntuneWindowsAutopilotDeploymentProfileAzureADJoined.schema.mof

[ClassVersion("1.0.0.0")]
class MSFT_DeviceManagementConfigurationPolicyAssignments
{
    [Write, Description("The type of the target assignment."), ValueMap{"#microsoft.graph.groupAssignmentTarget","#microsoft.graph.allLicensedUsersAssignmentTarget","#microsoft.graph.allDevicesAssignmentTarget","#microsoft.graph.exclusionGroupAssignmentTarget","#microsoft.graph.configurationManagerCollectionAssignmentTarget"}, Values{"#microsoft.graph.groupAssignmentTarget","#microsoft.graph.allLicensedUsersAssignmentTarget","#microsoft.graph.allDevicesAssignmentTarget","#microsoft.graph.exclusionGroupAssignmentTarget","#microsoft.graph.configurationManagerCollectionAssignmentTarget"}] String dataType;
    [Write, Description("The type of filter of the target assignment i.e. Exclude or Include. Possible values are:none, include, exclude."), ValueMap{"none","include","exclude"}, Values{"none","include","exclude"}] String deviceAndAppManagementAssignmentFilterType;
    [Write, Description("The Id of the filter for the target assignment.")] String deviceAndAppManagementAssignmentFilterId;
    [Write, Description("The group Id that is the target of the assignment.")] String groupId;
    [Write, Description("The collection Id that is the target of the assignment.(ConfigMgr)")] String collectionId;
};
[ClassVersion("1.0.0")]
class MSFT_MicrosoftGraphWindowsEnrollmentStatusScreenSettings1
{
    [Write, Description("Allow or block user to use device before profile and app installation complete")] Boolean AllowDeviceUseBeforeProfileAndAppInstallComplete;
    [Write, Description("Allow the user to continue using the device on installation failure")] Boolean AllowDeviceUseOnInstallFailure;
    [Write, Description("Allow or block log collection on installation failure")] Boolean AllowLogCollectionOnInstallFailure;
    [Write, Description("Allow the user to retry the setup on installation failure")] Boolean BlockDeviceSetupRetryByUser;
    [Write, Description("Set custom error message to show upon installation failure")] String CustomErrorMessage;
    [Write, Description("Show or hide installation progress to user")] Boolean HideInstallationProgress;
    [Write, Description("Set installation progress timeout in minutes")] UInt32 InstallProgressTimeoutInMinutes;
};
[ClassVersion("1.0.0")]
class MSFT_MicrosoftGraphOutOfBoxExperienceSettings1
{
    [Write, Description("AAD join authentication type. Possible values are: singleUser, shared."), ValueMap{"singleUser","shared"}, Values{"singleUser","shared"}] String DeviceUsageType;
    [Write, Description("If set to true, then the user can't start over with different account, on company sign-in")] Boolean HideEscapeLink;
    [Write, Description("Show or hide EULA to user")] Boolean HideEULA;
    [Write, Description("Show or hide privacy settings to user")] Boolean HidePrivacySettings;
    [Write, Description("If set, then skip the keyboard selection page if Language and Region are set")] Boolean SkipKeyboardSelectionPage;
    [Write, Description("Type of user. Possible values are: administrator, standard."), ValueMap{"administrator","standard"}, Values{"administrator","standard"}] String UserType;
};
 
[ClassVersion("1.0.0.0"), FriendlyName("IntuneWindowsAutopilotDeploymentProfileAzureADJoined")]
class MSFT_IntuneWindowsAutopilotDeploymentProfileAzureADJoined : OMI_BaseResource
{
    [Write, Description("Description of the profile")] String Description;
    [Write, Description("The template used to name the AutoPilot Device. This can be a custom text and can also contain either the serial number of the device, or a randomly generated number. The total length of the text generated by the template can be no more than 15 characters.")] String DeviceNameTemplate;
    [Write, Description("The AutoPilot device type that this profile is applicable to. Possible values are: windowsPc, surfaceHub2."), ValueMap{"windowsPc","surfaceHub2","holoLens","surfaceHub2S","virtualMachine","unknownFutureValue"}, Values{"windowsPc","surfaceHub2","holoLens","surfaceHub2S","virtualMachine","unknownFutureValue"}] String DeviceType;
    [Required, Description("Name of the profile")] String DisplayName;
    [Write, Description("Enable Autopilot White Glove for the profile.")] Boolean EnableWhiteGlove;
    [Write, Description("Enrollment status screen setting"), EmbeddedInstance("MSFT_MicrosoftGraphwindowsEnrollmentStatusScreenSettings1")] String EnrollmentStatusScreenSettings;
    [Write, Description("HardwareHash Extraction for the profile")] Boolean ExtractHardwareHash;
    [Write, Description("Language configured on the device")] String Language;
    [Write, Description("AzureAD management app ID used during client device-based enrollment discovery")] String ManagementServiceAppId;
    [Write, Description("Out of box experience setting"), EmbeddedInstance("MSFT_MicrosoftGraphoutOfBoxExperienceSettings1")] String OutOfBoxExperienceSettings;
    [Key, Description("The unique identifier for an entity. Read-only.")] String Id;
    [Write, Description("Represents the assignment to the Intune policy."), EmbeddedInstance("MSFT_DeviceManagementConfigurationPolicyAssignments")] String Assignments[];
    [Write, Description("Present ensures the policy exists, absent ensures it is removed."), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] string Ensure;
    [Write, Description("Credentials of the Admin"), EmbeddedInstance("MSFT_Credential")] string Credential;
    [Write, Description("Id of the Azure Active Directory application to authenticate with.")] String ApplicationId;
    [Write, Description("Id of the Azure Active Directory tenant used for authentication.")] String TenantId;
    [Write, Description("Secret of the Azure Active Directory tenant used for authentication."), EmbeddedInstance("MSFT_Credential")] String ApplicationSecret;
    [Write, Description("Thumbprint of the Azure Active Directory application's authentication certificate to use for authentication.")] String CertificateThumbprint;
    [Write, Description("Managed ID being used for authentication.")] Boolean ManagedIdentity;
};