UNPKG

@microsoft/msgraph-beta-sdk

Version:
3,915 lines 268 kB
/* tslint:disable */
/* eslint-disable */
// Generated by Microsoft Kiota
// @ts-ignore
import { createActionUrlFromDiscriminatorValue, createGenericErrorFromDiscriminatorValue, deserializeIntoBaseCollectionPaginationCountResponse, deserializeIntoEntity, serializeActionUrl, serializeBaseCollectionPaginationCountResponse, serializeEntity, serializeGenericError } from '../index.js';
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AggregatedPolicyComplianceCollectionResponse}
 */
// @ts-ignore
export function createAggregatedPolicyComplianceCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoAggregatedPolicyComplianceCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AggregatedPolicyCompliance}
 */
// @ts-ignore
export function createAggregatedPolicyComplianceFromDiscriminatorValue(parseNode) {
    return deserializeIntoAggregatedPolicyCompliance;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AlertData}
 */
// @ts-ignore
export function createAlertDataFromDiscriminatorValue(parseNode) {
    return deserializeIntoAlertData;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AlertDataReferenceString}
 */
// @ts-ignore
export function createAlertDataReferenceStringFromDiscriminatorValue(parseNode) {
    return deserializeIntoAlertDataReferenceString;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AlertLogContent}
 */
// @ts-ignore
export function createAlertLogContentFromDiscriminatorValue(parseNode) {
    return deserializeIntoAlertLogContent;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AlertRuleDefinitionTemplate}
 */
// @ts-ignore
export function createAlertRuleDefinitionTemplateFromDiscriminatorValue(parseNode) {
    return deserializeIntoAlertRuleDefinitionTemplate;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AppPerformanceCollectionResponse}
 */
// @ts-ignore
export function createAppPerformanceCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoAppPerformanceCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AppPerformance}
 */
// @ts-ignore
export function createAppPerformanceFromDiscriminatorValue(parseNode) {
    return deserializeIntoAppPerformance;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AuditEventCollectionResponse}
 */
// @ts-ignore
export function createAuditEventCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoAuditEventCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {AuditEvent}
 */
// @ts-ignore
export function createAuditEventFromDiscriminatorValue(parseNode) {
    return deserializeIntoAuditEvent;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CloudPcConnectionCollectionResponse}
 */
// @ts-ignore
export function createCloudPcConnectionCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoCloudPcConnectionCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CloudPcConnection}
 */
// @ts-ignore
export function createCloudPcConnectionFromDiscriminatorValue(parseNode) {
    return deserializeIntoCloudPcConnection;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CloudPcDeviceCollectionResponse}
 */
// @ts-ignore
export function createCloudPcDeviceCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoCloudPcDeviceCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CloudPcDevice}
 */
// @ts-ignore
export function createCloudPcDeviceFromDiscriminatorValue(parseNode) {
    return deserializeIntoCloudPcDevice;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CloudPcOverviewCollectionResponse}
 */
// @ts-ignore
export function createCloudPcOverviewCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoCloudPcOverviewCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CloudPcOverview}
 */
// @ts-ignore
export function createCloudPcOverviewFromDiscriminatorValue(parseNode) {
    return deserializeIntoCloudPcOverview;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ConditionalAccessPolicyCoverageCollectionResponse}
 */
// @ts-ignore
export function createConditionalAccessPolicyCoverageCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoConditionalAccessPolicyCoverageCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ConditionalAccessPolicyCoverage}
 */
// @ts-ignore
export function createConditionalAccessPolicyCoverageFromDiscriminatorValue(parseNode) {
    return deserializeIntoConditionalAccessPolicyCoverage;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CredentialUserRegistrationsSummaryCollectionResponse}
 */
// @ts-ignore
export function createCredentialUserRegistrationsSummaryCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoCredentialUserRegistrationsSummaryCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {CredentialUserRegistrationsSummary}
 */
// @ts-ignore
export function createCredentialUserRegistrationsSummaryFromDiscriminatorValue(parseNode) {
    return deserializeIntoCredentialUserRegistrationsSummary;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {DeviceAppPerformanceCollectionResponse}
 */
// @ts-ignore
export function createDeviceAppPerformanceCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoDeviceAppPerformanceCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {DeviceAppPerformance}
 */
// @ts-ignore
export function createDeviceAppPerformanceFromDiscriminatorValue(parseNode) {
    return deserializeIntoDeviceAppPerformance;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {DeviceCompliancePolicySettingStateSummaryCollectionResponse}
 */
// @ts-ignore
export function createDeviceCompliancePolicySettingStateSummaryCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoDeviceCompliancePolicySettingStateSummaryCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {DeviceCompliancePolicySettingStateSummary}
 */
// @ts-ignore
export function createDeviceCompliancePolicySettingStateSummaryFromDiscriminatorValue(parseNode) {
    return deserializeIntoDeviceCompliancePolicySettingStateSummary;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {DeviceHealthStatusCollectionResponse}
 */
// @ts-ignore
export function createDeviceHealthStatusCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoDeviceHealthStatusCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {DeviceHealthStatus}
 */
// @ts-ignore
export function createDeviceHealthStatusFromDiscriminatorValue(parseNode) {
    return deserializeIntoDeviceHealthStatus;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {Email}
 */
// @ts-ignore
export function createEmailFromDiscriminatorValue(parseNode) {
    return deserializeIntoEmail;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {GraphAPIErrorDetails}
 */
// @ts-ignore
export function createGraphAPIErrorDetailsFromDiscriminatorValue(parseNode) {
    return deserializeIntoGraphAPIErrorDetails;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedDeviceComplianceCollectionResponse}
 */
// @ts-ignore
export function createManagedDeviceComplianceCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedDeviceComplianceCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedDeviceCompliance}
 */
// @ts-ignore
export function createManagedDeviceComplianceFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedDeviceCompliance;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedDeviceComplianceTrendCollectionResponse}
 */
// @ts-ignore
export function createManagedDeviceComplianceTrendCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedDeviceComplianceTrendCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedDeviceComplianceTrend}
 */
// @ts-ignore
export function createManagedDeviceComplianceTrendFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedDeviceComplianceTrend;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlertCollectionResponse}
 */
// @ts-ignore
export function createManagedTenantAlertCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlertCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlert}
 */
// @ts-ignore
export function createManagedTenantAlertFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlert;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlertLogCollectionResponse}
 */
// @ts-ignore
export function createManagedTenantAlertLogCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlertLogCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlertLog}
 */
// @ts-ignore
export function createManagedTenantAlertLogFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlertLog;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlertRuleCollectionResponse}
 */
// @ts-ignore
export function createManagedTenantAlertRuleCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlertRuleCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlertRuleDefinitionCollectionResponse}
 */
// @ts-ignore
export function createManagedTenantAlertRuleDefinitionCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlertRuleDefinitionCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlertRuleDefinition}
 */
// @ts-ignore
export function createManagedTenantAlertRuleDefinitionFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlertRuleDefinition;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantAlertRule}
 */
// @ts-ignore
export function createManagedTenantAlertRuleFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantAlertRule;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantApiNotificationCollectionResponse}
 */
// @ts-ignore
export function createManagedTenantApiNotificationCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantApiNotificationCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantApiNotification}
 */
// @ts-ignore
export function createManagedTenantApiNotificationFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantApiNotification;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantEmailNotificationCollectionResponse}
 */
// @ts-ignore
export function createManagedTenantEmailNotificationCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantEmailNotificationCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantEmailNotification}
 */
// @ts-ignore
export function createManagedTenantEmailNotificationFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantEmailNotification;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenant}
 */
// @ts-ignore
export function createManagedTenantFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenant;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantTicketingEndpointCollectionResponse}
 */
// @ts-ignore
export function createManagedTenantTicketingEndpointCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantTicketingEndpointCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagedTenantTicketingEndpoint}
 */
// @ts-ignore
export function createManagedTenantTicketingEndpointFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagedTenantTicketingEndpoint;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementActionCollectionResponse}
 */
// @ts-ignore
export function createManagementActionCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementActionCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementActionDeploymentStatus}
 */
// @ts-ignore
export function createManagementActionDeploymentStatusFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementActionDeploymentStatus;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementAction}
 */
// @ts-ignore
export function createManagementActionFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementAction;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementActionInfo}
 */
// @ts-ignore
export function createManagementActionInfoFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementActionInfo;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementActionTenantDeploymentStatusCollectionResponse}
 */
// @ts-ignore
export function createManagementActionTenantDeploymentStatusCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementActionTenantDeploymentStatusCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementActionTenantDeploymentStatus}
 */
// @ts-ignore
export function createManagementActionTenantDeploymentStatusFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementActionTenantDeploymentStatus;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementIntentCollectionResponse}
 */
// @ts-ignore
export function createManagementIntentCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementIntentCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementIntent}
 */
// @ts-ignore
export function createManagementIntentFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementIntent;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementIntentInfo}
 */
// @ts-ignore
export function createManagementIntentInfoFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementIntentInfo;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateCollectionCollectionResponse}
 */
// @ts-ignore
export function createManagementTemplateCollectionCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateCollectionCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateCollection}
 */
// @ts-ignore
export function createManagementTemplateCollectionFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateCollection;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateCollectionResponse}
 */
// @ts-ignore
export function createManagementTemplateCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateCollectionTenantSummaryCollectionResponse}
 */
// @ts-ignore
export function createManagementTemplateCollectionTenantSummaryCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateCollectionTenantSummaryCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateCollectionTenantSummary}
 */
// @ts-ignore
export function createManagementTemplateCollectionTenantSummaryFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateCollectionTenantSummary;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateDetailedInfo}
 */
// @ts-ignore
export function createManagementTemplateDetailedInfoFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateDetailedInfo;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplate}
 */
// @ts-ignore
export function createManagementTemplateFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplate;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStepCollectionResponse}
 */
// @ts-ignore
export function createManagementTemplateStepCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStepCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStepDeploymentCollectionResponse}
 */
// @ts-ignore
export function createManagementTemplateStepDeploymentCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStepDeploymentCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStepDeployment}
 */
// @ts-ignore
export function createManagementTemplateStepDeploymentFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStepDeployment;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStep}
 */
// @ts-ignore
export function createManagementTemplateStepFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStep;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStepTenantSummaryCollectionResponse}
 */
// @ts-ignore
export function createManagementTemplateStepTenantSummaryCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStepTenantSummaryCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStepTenantSummary}
 */
// @ts-ignore
export function createManagementTemplateStepTenantSummaryFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStepTenantSummary;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStepVersionCollectionResponse}
 */
// @ts-ignore
export function createManagementTemplateStepVersionCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStepVersionCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {ManagementTemplateStepVersion}
 */
// @ts-ignore
export function createManagementTemplateStepVersionFromDiscriminatorValue(parseNode) {
    return deserializeIntoManagementTemplateStepVersion;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {MyRoleCollectionResponse}
 */
// @ts-ignore
export function createMyRoleCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoMyRoleCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {MyRole}
 */
// @ts-ignore
export function createMyRoleFromDiscriminatorValue(parseNode) {
    return deserializeIntoMyRole;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {NotificationTarget}
 */
// @ts-ignore
export function createNotificationTargetFromDiscriminatorValue(parseNode) {
    return deserializeIntoNotificationTarget;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {RoleAssignment}
 */
// @ts-ignore
export function createRoleAssignmentFromDiscriminatorValue(parseNode) {
    return deserializeIntoRoleAssignment;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {RoleDefinition}
 */
// @ts-ignore
export function createRoleDefinitionFromDiscriminatorValue(parseNode) {
    return deserializeIntoRoleDefinition;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {Setting}
 */
// @ts-ignore
export function createSettingFromDiscriminatorValue(parseNode) {
    return deserializeIntoSetting;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TemplateParameter}
 */
// @ts-ignore
export function createTemplateParameterFromDiscriminatorValue(parseNode) {
    return deserializeIntoTemplateParameter;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantCollectionResponse}
 */
// @ts-ignore
export function createTenantCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantContactInformation}
 */
// @ts-ignore
export function createTenantContactInformationFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantContactInformation;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantContract}
 */
// @ts-ignore
export function createTenantContractFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantContract;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantCustomizedInformationCollectionResponse}
 */
// @ts-ignore
export function createTenantCustomizedInformationCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantCustomizedInformationCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantCustomizedInformation}
 */
// @ts-ignore
export function createTenantCustomizedInformationFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantCustomizedInformation;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantDetailedInformationCollectionResponse}
 */
// @ts-ignore
export function createTenantDetailedInformationCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantDetailedInformationCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantDetailedInformation}
 */
// @ts-ignore
export function createTenantDetailedInformationFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantDetailedInformation;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {Tenant}
 */
// @ts-ignore
export function createTenantFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenant;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantGroupCollectionResponse}
 */
// @ts-ignore
export function createTenantGroupCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantGroupCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantGroup}
 */
// @ts-ignore
export function createTenantGroupFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantGroup;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantInfo}
 */
// @ts-ignore
export function createTenantInfoFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantInfo;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantStatusInformation}
 */
// @ts-ignore
export function createTenantStatusInformationFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantStatusInformation;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantTagCollectionResponse}
 */
// @ts-ignore
export function createTenantTagCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantTagCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {TenantTag}
 */
// @ts-ignore
export function createTenantTagFromDiscriminatorValue(parseNode) {
    return deserializeIntoTenantTag;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {WindowsDeviceMalwareStateCollectionResponse}
 */
// @ts-ignore
export function createWindowsDeviceMalwareStateCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoWindowsDeviceMalwareStateCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {WindowsDeviceMalwareState}
 */
// @ts-ignore
export function createWindowsDeviceMalwareStateFromDiscriminatorValue(parseNode) {
    return deserializeIntoWindowsDeviceMalwareState;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {WindowsProtectionStateCollectionResponse}
 */
// @ts-ignore
export function createWindowsProtectionStateCollectionResponseFromDiscriminatorValue(parseNode) {
    return deserializeIntoWindowsProtectionStateCollectionResponse;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {WindowsProtectionState}
 */
// @ts-ignore
export function createWindowsProtectionStateFromDiscriminatorValue(parseNode) {
    return deserializeIntoWindowsProtectionState;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {WorkloadActionDeploymentStatus}
 */
// @ts-ignore
export function createWorkloadActionDeploymentStatusFromDiscriminatorValue(parseNode) {
    return deserializeIntoWorkloadActionDeploymentStatus;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {WorkloadAction}
 */
// @ts-ignore
export function createWorkloadActionFromDiscriminatorValue(parseNode) {
    return deserializeIntoWorkloadAction;
}
/**
 * Creates a new instance of the appropriate class based on discriminator value
 * @param parseNode The parse node to use to read the discriminator value and create the object
 * @returns {WorkloadStatus}
 */
// @ts-ignore
export function createWorkloadStatusFromDiscriminatorValue(parseNode) {
    return deserializeIntoWorkloadStatus;
}
/**
 * The deserialization information for the current model
 * @param AggregatedPolicyCompliance The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAggregatedPolicyCompliance(aggregatedPolicyCompliance = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(aggregatedPolicyCompliance)), { "compliancePolicyId": n => { aggregatedPolicyCompliance.compliancePolicyId = n.getStringValue(); }, "compliancePolicyName": n => { aggregatedPolicyCompliance.compliancePolicyName = n.getStringValue(); }, "compliancePolicyPlatform": n => { aggregatedPolicyCompliance.compliancePolicyPlatform = n.getStringValue(); }, "compliancePolicyType": n => { aggregatedPolicyCompliance.compliancePolicyType = n.getStringValue(); }, "lastRefreshedDateTime": n => { aggregatedPolicyCompliance.lastRefreshedDateTime = n.getDateValue(); }, "numberOfCompliantDevices": n => { aggregatedPolicyCompliance.numberOfCompliantDevices = n.getNumberValue(); }, "numberOfErrorDevices": n => { aggregatedPolicyCompliance.numberOfErrorDevices = n.getNumberValue(); }, "numberOfNonCompliantDevices": n => { aggregatedPolicyCompliance.numberOfNonCompliantDevices = n.getNumberValue(); }, "policyModifiedDateTime": n => { aggregatedPolicyCompliance.policyModifiedDateTime = n.getDateValue(); }, "tenantDisplayName": n => { aggregatedPolicyCompliance.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { aggregatedPolicyCompliance.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param AggregatedPolicyComplianceCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAggregatedPolicyComplianceCollectionResponse(aggregatedPolicyComplianceCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(aggregatedPolicyComplianceCollectionResponse)), { "value": n => { aggregatedPolicyComplianceCollectionResponse.value = n.getCollectionOfObjectValues(createAggregatedPolicyComplianceFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param AlertData The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAlertData(alertData = {}) {
    return {
        "backingStoreEnabled": n => { alertData.backingStoreEnabled = true; },
        "displayName": n => { alertData.displayName = n.getStringValue(); },
        "@odata.type": n => { alertData.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param AlertDataReferenceString The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAlertDataReferenceString(alertDataReferenceString = {}) {
    return {
        "backingStoreEnabled": n => { alertDataReferenceString.backingStoreEnabled = true; },
        "displayName": n => { alertDataReferenceString.displayName = n.getStringValue(); },
        "@odata.type": n => { alertDataReferenceString.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param AlertLogContent The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAlertLogContent(alertLogContent = {}) {
    return {
        "backingStoreEnabled": n => { alertLogContent.backingStoreEnabled = true; },
        "displayName": n => { alertLogContent.displayName = n.getStringValue(); },
        "@odata.type": n => { alertLogContent.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param AlertRuleDefinitionTemplate The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAlertRuleDefinitionTemplate(alertRuleDefinitionTemplate = {}) {
    return {
        "backingStoreEnabled": n => { alertRuleDefinitionTemplate.backingStoreEnabled = true; },
        "defaultSeverity": n => { alertRuleDefinitionTemplate.defaultSeverity = n.getEnumValue(AlertSeverityObject); },
        "@odata.type": n => { alertRuleDefinitionTemplate.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param AppPerformance The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAppPerformance(appPerformance = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(appPerformance)), { "appFriendlyName": n => { appPerformance.appFriendlyName = n.getStringValue(); }, "appName": n => { appPerformance.appName = n.getStringValue(); }, "appPublisher": n => { appPerformance.appPublisher = n.getStringValue(); }, "lastUpdatedDateTime": n => { appPerformance.lastUpdatedDateTime = n.getDateValue(); }, "meanTimeToFailureInMinutes": n => { appPerformance.meanTimeToFailureInMinutes = n.getNumberValue(); }, "tenantDisplayName": n => { appPerformance.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { appPerformance.tenantId = n.getStringValue(); }, "totalActiveDeviceCount": n => { appPerformance.totalActiveDeviceCount = n.getNumberValue(); }, "totalAppCrashCount": n => { appPerformance.totalAppCrashCount = n.getNumberValue(); }, "totalAppFreezeCount": n => { appPerformance.totalAppFreezeCount = n.getNumberValue(); } });
}
/**
 * The deserialization information for the current model
 * @param AppPerformanceCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAppPerformanceCollectionResponse(appPerformanceCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(appPerformanceCollectionResponse)), { "value": n => { appPerformanceCollectionResponse.value = n.getCollectionOfObjectValues(createAppPerformanceFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param AuditEvent The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAuditEvent(auditEvent = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(auditEvent)), { "activity": n => { auditEvent.activity = n.getStringValue(); }, "activityDateTime": n => { auditEvent.activityDateTime = n.getDateValue(); }, "activityId": n => { auditEvent.activityId = n.getStringValue(); }, "category": n => { auditEvent.category = n.getStringValue(); }, "httpVerb": n => { auditEvent.httpVerb = n.getStringValue(); }, "initiatedByAppId": n => { auditEvent.initiatedByAppId = n.getStringValue(); }, "initiatedByUpn": n => { auditEvent.initiatedByUpn = n.getStringValue(); }, "initiatedByUserId": n => { auditEvent.initiatedByUserId = n.getStringValue(); }, "ipAddress": n => { auditEvent.ipAddress = n.getStringValue(); }, "requestBody": n => { auditEvent.requestBody = n.getStringValue(); }, "requestUrl": n => { auditEvent.requestUrl = n.getStringValue(); }, "tenantIds": n => { auditEvent.tenantIds = n.getStringValue(); }, "tenantNames": n => { auditEvent.tenantNames = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param AuditEventCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoAuditEventCollectionResponse(auditEventCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(auditEventCollectionResponse)), { "value": n => { auditEventCollectionResponse.value = n.getCollectionOfObjectValues(createAuditEventFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param CloudPcConnection The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCloudPcConnection(cloudPcConnection = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(cloudPcConnection)), { "displayName": n => { cloudPcConnection.displayName = n.getStringValue(); }, "healthCheckStatus": n => { cloudPcConnection.healthCheckStatus = n.getStringValue(); }, "lastRefreshedDateTime": n => { cloudPcConnection.lastRefreshedDateTime = n.getDateValue(); }, "tenantDisplayName": n => { cloudPcConnection.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { cloudPcConnection.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param CloudPcConnectionCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCloudPcConnectionCollectionResponse(cloudPcConnectionCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(cloudPcConnectionCollectionResponse)), { "value": n => { cloudPcConnectionCollectionResponse.value = n.getCollectionOfObjectValues(createCloudPcConnectionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param CloudPcDevice The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCloudPcDevice(cloudPcDevice = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(cloudPcDevice)), { "cloudPcStatus": n => { cloudPcDevice.cloudPcStatus = n.getStringValue(); }, "deviceSpecification": n => { cloudPcDevice.deviceSpecification = n.getStringValue(); }, "displayName": n => { cloudPcDevice.displayName = n.getStringValue(); }, "lastRefreshedDateTime": n => { cloudPcDevice.lastRefreshedDateTime = n.getDateValue(); }, "managedDeviceId": n => { cloudPcDevice.managedDeviceId = n.getStringValue(); }, "managedDeviceName": n => { cloudPcDevice.managedDeviceName = n.getStringValue(); }, "provisioningPolicyId": n => { cloudPcDevice.provisioningPolicyId = n.getStringValue(); }, "servicePlanName": n => { cloudPcDevice.servicePlanName = n.getStringValue(); }, "servicePlanType": n => { cloudPcDevice.servicePlanType = n.getStringValue(); }, "tenantDisplayName": n => { cloudPcDevice.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { cloudPcDevice.tenantId = n.getStringValue(); }, "userPrincipalName": n => { cloudPcDevice.userPrincipalName = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param CloudPcDeviceCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCloudPcDeviceCollectionResponse(cloudPcDeviceCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(cloudPcDeviceCollectionResponse)), { "value": n => { cloudPcDeviceCollectionResponse.value = n.getCollectionOfObjectValues(createCloudPcDeviceFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param CloudPcOverview The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCloudPcOverview(cloudPcOverview = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(cloudPcOverview)), { "frontlineLicensesCount": n => { cloudPcOverview.frontlineLicensesCount = n.getNumberValue(); }, "lastRefreshedDateTime": n => { cloudPcOverview.lastRefreshedDateTime = n.getDateValue(); }, "numberOfCloudPcConnectionStatusFailed": n => { cloudPcOverview.numberOfCloudPcConnectionStatusFailed = n.getNumberValue(); }, "numberOfCloudPcConnectionStatusPassed": n => { cloudPcOverview.numberOfCloudPcConnectionStatusPassed = n.getNumberValue(); }, "numberOfCloudPcConnectionStatusPending": n => { cloudPcOverview.numberOfCloudPcConnectionStatusPending = n.getNumberValue(); }, "numberOfCloudPcConnectionStatusRunning": n => { cloudPcOverview.numberOfCloudPcConnectionStatusRunning = n.getNumberValue(); }, "numberOfCloudPcConnectionStatusUnkownFutureValue": n => { cloudPcOverview.numberOfCloudPcConnectionStatusUnkownFutureValue = n.getNumberValue(); }, "numberOfCloudPcStatusDeprovisioning": n => { cloudPcOverview.numberOfCloudPcStatusDeprovisioning = n.getNumberValue(); }, "numberOfCloudPcStatusFailed": n => { cloudPcOverview.numberOfCloudPcStatusFailed = n.getNumberValue(); }, "numberOfCloudPcStatusInGracePeriod": n => { cloudPcOverview.numberOfCloudPcStatusInGracePeriod = n.getNumberValue(); }, "numberOfCloudPcStatusNotProvisioned": n => { cloudPcOverview.numberOfCloudPcStatusNotProvisioned = n.getNumberValue(); }, "numberOfCloudPcStatusProvisioned": n => { cloudPcOverview.numberOfCloudPcStatusProvisioned = n.getNumberValue(); }, "numberOfCloudPcStatusProvisioning": n => { cloudPcOverview.numberOfCloudPcStatusProvisioning = n.getNumberValue(); }, "numberOfCloudPcStatusUnknown": n => { cloudPcOverview.numberOfCloudPcStatusUnknown = n.getNumberValue(); }, "numberOfCloudPcStatusUpgrading": n => { cloudPcOverview.numberOfCloudPcStatusUpgrading = n.getNumberValue(); }, "tenantDisplayName": n => { cloudPcOverview.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { cloudPcOverview.tenantId = n.getStringValue(); }, "totalBusinessLicenses": n => { cloudPcOverview.totalBusinessLicenses = n.getNumberValue(); }, "totalCloudPcConnectionStatus": n => { cloudPcOverview.totalCloudPcConnectionStatus = n.getNumberValue(); }, "totalCloudPcStatus": n => { cloudPcOverview.totalCloudPcStatus = n.getNumberValue(); }, "totalEnterpriseLicenses": n => { cloudPcOverview.totalEnterpriseLicenses = n.getNumberValue(); } });
}
/**
 * The deserialization information for the current model
 * @param CloudPcOverviewCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCloudPcOverviewCollectionResponse(cloudPcOverviewCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(cloudPcOverviewCollectionResponse)), { "value": n => { cloudPcOverviewCollectionResponse.value = n.getCollectionOfObjectValues(createCloudPcOverviewFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ConditionalAccessPolicyCoverage The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoConditionalAccessPolicyCoverage(conditionalAccessPolicyCoverage = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(conditionalAccessPolicyCoverage)), { "conditionalAccessPolicyState": n => { conditionalAccessPolicyCoverage.conditionalAccessPolicyState = n.getStringValue(); }, "latestPolicyModifiedDateTime": n => { conditionalAccessPolicyCoverage.latestPolicyModifiedDateTime = n.getDateValue(); }, "requiresDeviceCompliance": n => { conditionalAccessPolicyCoverage.requiresDeviceCompliance = n.getBooleanValue(); }, "tenantDisplayName": n => { conditionalAccessPolicyCoverage.tenantDisplayName = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ConditionalAccessPolicyCoverageCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoConditionalAccessPolicyCoverageCollectionResponse(conditionalAccessPolicyCoverageCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(conditionalAccessPolicyCoverageCollectionResponse)), { "value": n => { conditionalAccessPolicyCoverageCollectionResponse.value = n.getCollectionOfObjectValues(createConditionalAccessPolicyCoverageFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param CredentialUserRegistrationsSummary The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCredentialUserRegistrationsSummary(credentialUserRegistrationsSummary = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(credentialUserRegistrationsSummary)), { "lastRefreshedDateTime": n => { credentialUserRegistrationsSummary.lastRefreshedDateTime = n.getDateValue(); }, "mfaAndSsprCapableUserCount": n => { credentialUserRegistrationsSummary.mfaAndSsprCapableUserCount = n.getNumberValue(); }, "mfaConditionalAccessPolicyState": n => { credentialUserRegistrationsSummary.mfaConditionalAccessPolicyState = n.getStringValue(); }, "mfaExcludedUserCount": n => { credentialUserRegistrationsSummary.mfaExcludedUserCount = n.getNumberValue(); }, "mfaRegisteredUserCount": n => { credentialUserRegistrationsSummary.mfaRegisteredUserCount = n.getNumberValue(); }, "securityDefaultsEnabled": n => { credentialUserRegistrationsSummary.securityDefaultsEnabled = n.getBooleanValue(); }, "ssprEnabledUserCount": n => { credentialUserRegistrationsSummary.ssprEnabledUserCount = n.getNumberValue(); }, "ssprRegisteredUserCount": n => { credentialUserRegistrationsSummary.ssprRegisteredUserCount = n.getNumberValue(); }, "tenantDisplayName": n => { credentialUserRegistrationsSummary.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { credentialUserRegistrationsSummary.tenantId = n.getStringValue(); }, "tenantLicenseType": n => { credentialUserRegistrationsSummary.tenantLicenseType = n.getStringValue(); }, "totalUserCount": n => { credentialUserRegistrationsSummary.totalUserCount = n.getNumberValue(); } });
}
/**
 * The deserialization information for the current model
 * @param CredentialUserRegistrationsSummaryCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoCredentialUserRegistrationsSummaryCollectionResponse(credentialUserRegistrationsSummaryCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(credentialUserRegistrationsSummaryCollectionResponse)), { "value": n => { credentialUserRegistrationsSummaryCollectionResponse.value = n.getCollectionOfObjectValues(createCredentialUserRegistrationsSummaryFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param DeviceAppPerformance The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoDeviceAppPerformance(deviceAppPerformance = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(deviceAppPerformance)), { "appFriendlyName": n => { deviceAppPerformance.appFriendlyName = n.getStringValue(); }, "appName": n => { deviceAppPerformance.appName = n.getStringValue(); }, "appPublisher": n => { deviceAppPerformance.appPublisher = n.getStringValue(); }, "appVersion": n => { deviceAppPerformance.appVersion = n.getStringValue(); }, "deviceId": n => { deviceAppPerformance.deviceId = n.getStringValue(); }, "deviceManufacturer": n => { deviceAppPerformance.deviceManufacturer = n.getStringValue(); }, "deviceModel": n => { deviceAppPerformance.deviceModel = n.getStringValue(); }, "deviceName": n => { deviceAppPerformance.deviceName = n.getStringValue(); }, "healthStatus": n => { deviceAppPerformance.healthStatus = n.getStringValue(); }, "isLatestUsedVersion": n => { deviceAppPerformance.isLatestUsedVersion = n.getNumberValue(); }, "isMostUsedVersion": n => { deviceAppPerformance.isMostUsedVersion = n.getNumberValue(); }, "lastUpdatedDateTime": n => { deviceAppPerformance.lastUpdatedDateTime = n.getDateValue(); }, "tenantDisplayName": n => { deviceAppPerformance.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { deviceAppPerformance.tenantId = n.getStringValue(); }, "totalAppCrashCount": n => { deviceAppPerformance.totalAppCrashCount = n.getNumberValue(); }, "totalAppFreezeCount": n => { deviceAppPerformance.totalAppFreezeCount = n.getNumberValue(); } });
}
/**
 * The deserialization information for the current model
 * @param DeviceAppPerformanceCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoDeviceAppPerformanceCollectionResponse(deviceAppPerformanceCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(deviceAppPerformanceCollectionResponse)), { "value": n => { deviceAppPerformanceCollectionResponse.value = n.getCollectionOfObjectValues(createDeviceAppPerformanceFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param DeviceCompliancePolicySettingStateSummary The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoDeviceCompliancePolicySettingStateSummary(deviceCompliancePolicySettingStateSummary = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(deviceCompliancePolicySettingStateSummary)), { "conflictDeviceCount": n => { deviceCompliancePolicySettingStateSummary.conflictDeviceCount = n.getNumberValue(); }, "errorDeviceCount": n => { deviceCompliancePolicySettingStateSummary.errorDeviceCount = n.getNumberValue(); }, "failedDeviceCount": n => { deviceCompliancePolicySettingStateSummary.failedDeviceCount = n.getNumberValue(); }, "intuneAccountId": n => { deviceCompliancePolicySettingStateSummary.intuneAccountId = n.getStringValue(); }, "intuneSettingId": n => { deviceCompliancePolicySettingStateSummary.intuneSettingId = n.getStringValue(); }, "lastRefreshedDateTime": n => { deviceCompliancePolicySettingStateSummary.lastRefreshedDateTime = n.getDateValue(); }, "notApplicableDeviceCount": n => { deviceCompliancePolicySettingStateSummary.notApplicableDeviceCount = n.getNumberValue(); }, "pendingDeviceCount": n => { deviceCompliancePolicySettingStateSummary.pendingDeviceCount = n.getNumberValue(); }, "policyType": n => { deviceCompliancePolicySettingStateSummary.policyType = n.getStringValue(); }, "settingName": n => { deviceCompliancePolicySettingStateSummary.settingName = n.getStringValue(); }, "succeededDeviceCount": n => { deviceCompliancePolicySettingStateSummary.succeededDeviceCount = n.getNumberValue(); }, "tenantDisplayName": n => { deviceCompliancePolicySettingStateSummary.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { deviceCompliancePolicySettingStateSummary.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param DeviceCompliancePolicySettingStateSummaryCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoDeviceCompliancePolicySettingStateSummaryCollectionResponse(deviceCompliancePolicySettingStateSummaryCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(deviceCompliancePolicySettingStateSummaryCollectionResponse)), { "value": n => { deviceCompliancePolicySettingStateSummaryCollectionResponse.value = n.getCollectionOfObjectValues(createDeviceCompliancePolicySettingStateSummaryFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param DeviceHealthStatus The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoDeviceHealthStatus(deviceHealthStatus = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(deviceHealthStatus)), { "blueScreenCount": n => { deviceHealthStatus.blueScreenCount = n.getNumberValue(); }, "bootTotalDurationInSeconds": n => { deviceHealthStatus.bootTotalDurationInSeconds = n.getNumberValue(); }, "deviceId": n => { deviceHealthStatus.deviceId = n.getStringValue(); }, "deviceMake": n => { deviceHealthStatus.deviceMake = n.getStringValue(); }, "deviceModel": n => { deviceHealthStatus.deviceModel = n.getStringValue(); }, "deviceName": n => { deviceHealthStatus.deviceName = n.getStringValue(); }, "healthStatus": n => { deviceHealthStatus.healthStatus = n.getStringValue(); }, "lastUpdatedDateTime": n => { deviceHealthStatus.lastUpdatedDateTime = n.getDateValue(); }, "osVersion": n => { deviceHealthStatus.osVersion = n.getStringValue(); }, "primaryDiskType": n => { deviceHealthStatus.primaryDiskType = n.getStringValue(); }, "restartCount": n => { deviceHealthStatus.restartCount = n.getNumberValue(); }, "startupPerformanceScore": n => { deviceHealthStatus.startupPerformanceScore = n.getNumberValue(); }, "tenantDisplayName": n => { deviceHealthStatus.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { deviceHealthStatus.tenantId = n.getStringValue(); }, "topProcesses": n => { deviceHealthStatus.topProcesses = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param DeviceHealthStatusCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoDeviceHealthStatusCollectionResponse(deviceHealthStatusCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(deviceHealthStatusCollectionResponse)), { "value": n => { deviceHealthStatusCollectionResponse.value = n.getCollectionOfObjectValues(createDeviceHealthStatusFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param Email The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoEmail(email = {}) {
    return {
        "backingStoreEnabled": n => { email.backingStoreEnabled = true; },
        "emailAddress": n => { email.emailAddress = n.getStringValue(); },
        "@odata.type": n => { email.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param GraphAPIErrorDetails The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoGraphAPIErrorDetails(graphAPIErrorDetails = {}) {
    return {
        "backingStoreEnabled": n => { graphAPIErrorDetails.backingStoreEnabled = true; },
        "code": n => { graphAPIErrorDetails.code = n.getStringValue(); },
        "message": n => { graphAPIErrorDetails.message = n.getStringValue(); },
        "@odata.type": n => { graphAPIErrorDetails.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param ManagedDeviceCompliance The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedDeviceCompliance(managedDeviceCompliance = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedDeviceCompliance)), { "complianceStatus": n => { managedDeviceCompliance.complianceStatus = n.getStringValue(); }, "deviceType": n => { managedDeviceCompliance.deviceType = n.getStringValue(); }, "inGracePeriodUntilDateTime": n => { managedDeviceCompliance.inGracePeriodUntilDateTime = n.getDateValue(); }, "lastRefreshedDateTime": n => { managedDeviceCompliance.lastRefreshedDateTime = n.getDateValue(); }, "lastSyncDateTime": n => { managedDeviceCompliance.lastSyncDateTime = n.getDateValue(); }, "managedDeviceId": n => { managedDeviceCompliance.managedDeviceId = n.getStringValue(); }, "managedDeviceName": n => { managedDeviceCompliance.managedDeviceName = n.getStringValue(); }, "manufacturer": n => { managedDeviceCompliance.manufacturer = n.getStringValue(); }, "model": n => { managedDeviceCompliance.model = n.getStringValue(); }, "osDescription": n => { managedDeviceCompliance.osDescription = n.getStringValue(); }, "osVersion": n => { managedDeviceCompliance.osVersion = n.getStringValue(); }, "ownerType": n => { managedDeviceCompliance.ownerType = n.getStringValue(); }, "tenantDisplayName": n => { managedDeviceCompliance.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { managedDeviceCompliance.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedDeviceComplianceCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedDeviceComplianceCollectionResponse(managedDeviceComplianceCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedDeviceComplianceCollectionResponse)), { "value": n => { managedDeviceComplianceCollectionResponse.value = n.getCollectionOfObjectValues(createManagedDeviceComplianceFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedDeviceComplianceTrend The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedDeviceComplianceTrend(managedDeviceComplianceTrend = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedDeviceComplianceTrend)), { "compliantDeviceCount": n => { managedDeviceComplianceTrend.compliantDeviceCount = n.getNumberValue(); }, "configManagerDeviceCount": n => { managedDeviceComplianceTrend.configManagerDeviceCount = n.getNumberValue(); }, "countDateTime": n => { managedDeviceComplianceTrend.countDateTime = n.getStringValue(); }, "errorDeviceCount": n => { managedDeviceComplianceTrend.errorDeviceCount = n.getNumberValue(); }, "inGracePeriodDeviceCount": n => { managedDeviceComplianceTrend.inGracePeriodDeviceCount = n.getNumberValue(); }, "noncompliantDeviceCount": n => { managedDeviceComplianceTrend.noncompliantDeviceCount = n.getNumberValue(); }, "tenantDisplayName": n => { managedDeviceComplianceTrend.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { managedDeviceComplianceTrend.tenantId = n.getStringValue(); }, "unknownDeviceCount": n => { managedDeviceComplianceTrend.unknownDeviceCount = n.getNumberValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedDeviceComplianceTrendCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedDeviceComplianceTrendCollectionResponse(managedDeviceComplianceTrendCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedDeviceComplianceTrendCollectionResponse)), { "value": n => { managedDeviceComplianceTrendCollectionResponse.value = n.getCollectionOfObjectValues(createManagedDeviceComplianceTrendFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenant The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenant(managedTenant = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenant)), { "aggregatedPolicyCompliances": n => { managedTenant.aggregatedPolicyCompliances = n.getCollectionOfObjectValues(createAggregatedPolicyComplianceFromDiscriminatorValue); }, "appPerformances": n => { managedTenant.appPerformances = n.getCollectionOfObjectValues(createAppPerformanceFromDiscriminatorValue); }, "auditEvents": n => { managedTenant.auditEvents = n.getCollectionOfObjectValues(createAuditEventFromDiscriminatorValue); }, "cloudPcConnections": n => { managedTenant.cloudPcConnections = n.getCollectionOfObjectValues(createCloudPcConnectionFromDiscriminatorValue); }, "cloudPcDevices": n => { managedTenant.cloudPcDevices = n.getCollectionOfObjectValues(createCloudPcDeviceFromDiscriminatorValue); }, "cloudPcsOverview": n => { managedTenant.cloudPcsOverview = n.getCollectionOfObjectValues(createCloudPcOverviewFromDiscriminatorValue); }, "conditionalAccessPolicyCoverages": n => { managedTenant.conditionalAccessPolicyCoverages = n.getCollectionOfObjectValues(createConditionalAccessPolicyCoverageFromDiscriminatorValue); }, "credentialUserRegistrationsSummaries": n => { managedTenant.credentialUserRegistrationsSummaries = n.getCollectionOfObjectValues(createCredentialUserRegistrationsSummaryFromDiscriminatorValue); }, "deviceAppPerformances": n => { managedTenant.deviceAppPerformances = n.getCollectionOfObjectValues(createDeviceAppPerformanceFromDiscriminatorValue); }, "deviceCompliancePolicySettingStateSummaries": n => { managedTenant.deviceCompliancePolicySettingStateSummaries = n.getCollectionOfObjectValues(createDeviceCompliancePolicySettingStateSummaryFromDiscriminatorValue); }, "deviceHealthStatuses": n => { managedTenant.deviceHealthStatuses = n.getCollectionOfObjectValues(createDeviceHealthStatusFromDiscriminatorValue); }, "managedDeviceCompliances": n => { managedTenant.managedDeviceCompliances = n.getCollectionOfObjectValues(createManagedDeviceComplianceFromDiscriminatorValue); }, "managedDeviceComplianceTrends": n => { managedTenant.managedDeviceComplianceTrends = n.getCollectionOfObjectValues(createManagedDeviceComplianceTrendFromDiscriminatorValue); }, "managedTenantAlertLogs": n => { managedTenant.managedTenantAlertLogs = n.getCollectionOfObjectValues(createManagedTenantAlertLogFromDiscriminatorValue); }, "managedTenantAlertRuleDefinitions": n => { managedTenant.managedTenantAlertRuleDefinitions = n.getCollectionOfObjectValues(createManagedTenantAlertRuleDefinitionFromDiscriminatorValue); }, "managedTenantAlertRules": n => { managedTenant.managedTenantAlertRules = n.getCollectionOfObjectValues(createManagedTenantAlertRuleFromDiscriminatorValue); }, "managedTenantAlerts": n => { managedTenant.managedTenantAlerts = n.getCollectionOfObjectValues(createManagedTenantAlertFromDiscriminatorValue); }, "managedTenantApiNotifications": n => { managedTenant.managedTenantApiNotifications = n.getCollectionOfObjectValues(createManagedTenantApiNotificationFromDiscriminatorValue); }, "managedTenantEmailNotifications": n => { managedTenant.managedTenantEmailNotifications = n.getCollectionOfObjectValues(createManagedTenantEmailNotificationFromDiscriminatorValue); }, "managedTenantTicketingEndpoints": n => { managedTenant.managedTenantTicketingEndpoints = n.getCollectionOfObjectValues(createManagedTenantTicketingEndpointFromDiscriminatorValue); }, "managementActions": n => { managedTenant.managementActions = n.getCollectionOfObjectValues(createManagementActionFromDiscriminatorValue); }, "managementActionTenantDeploymentStatuses": n => { managedTenant.managementActionTenantDeploymentStatuses = n.getCollectionOfObjectValues(createManagementActionTenantDeploymentStatusFromDiscriminatorValue); }, "managementIntents": n => { managedTenant.managementIntents = n.getCollectionOfObjectValues(createManagementIntentFromDiscriminatorValue); }, "managementTemplateCollections": n => { managedTenant.managementTemplateCollections = n.getCollectionOfObjectValues(createManagementTemplateCollectionFromDiscriminatorValue); }, "managementTemplateCollectionTenantSummaries": n => { managedTenant.managementTemplateCollectionTenantSummaries = n.getCollectionOfObjectValues(createManagementTemplateCollectionTenantSummaryFromDiscriminatorValue); }, "managementTemplates": n => { managedTenant.managementTemplates = n.getCollectionOfObjectValues(createManagementTemplateFromDiscriminatorValue); }, "managementTemplateSteps": n => { managedTenant.managementTemplateSteps = n.getCollectionOfObjectValues(createManagementTemplateStepFromDiscriminatorValue); }, "managementTemplateStepTenantSummaries": n => { managedTenant.managementTemplateStepTenantSummaries = n.getCollectionOfObjectValues(createManagementTemplateStepTenantSummaryFromDiscriminatorValue); }, "managementTemplateStepVersions": n => { managedTenant.managementTemplateStepVersions = n.getCollectionOfObjectValues(createManagementTemplateStepVersionFromDiscriminatorValue); }, "myRoles": n => { managedTenant.myRoles = n.getCollectionOfObjectValues(createMyRoleFromDiscriminatorValue); }, "tenantGroups": n => { managedTenant.tenantGroups = n.getCollectionOfObjectValues(createTenantGroupFromDiscriminatorValue); }, "tenants": n => { managedTenant.tenants = n.getCollectionOfObjectValues(createTenantFromDiscriminatorValue); }, "tenantsCustomizedInformation": n => { managedTenant.tenantsCustomizedInformation = n.getCollectionOfObjectValues(createTenantCustomizedInformationFromDiscriminatorValue); }, "tenantsDetailedInformation": n => { managedTenant.tenantsDetailedInformation = n.getCollectionOfObjectValues(createTenantDetailedInformationFromDiscriminatorValue); }, "tenantTags": n => { managedTenant.tenantTags = n.getCollectionOfObjectValues(createTenantTagFromDiscriminatorValue); }, "windowsDeviceMalwareStates": n => { managedTenant.windowsDeviceMalwareStates = n.getCollectionOfObjectValues(createWindowsDeviceMalwareStateFromDiscriminatorValue); }, "windowsProtectionStates": n => { managedTenant.windowsProtectionStates = n.getCollectionOfObjectValues(createWindowsProtectionStateFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlert The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlert(managedTenantAlert = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenantAlert)), { "alertData": n => { managedTenantAlert.alertData = n.getObjectValue(createAlertDataFromDiscriminatorValue); }, "alertDataReferenceStrings": n => { managedTenantAlert.alertDataReferenceStrings = n.getCollectionOfObjectValues(createAlertDataReferenceStringFromDiscriminatorValue); }, "alertLogs": n => { managedTenantAlert.alertLogs = n.getCollectionOfObjectValues(createManagedTenantAlertLogFromDiscriminatorValue); }, "alertRule": n => { managedTenantAlert.alertRule = n.getObjectValue(createManagedTenantAlertRuleFromDiscriminatorValue); }, "alertRuleDisplayName": n => { managedTenantAlert.alertRuleDisplayName = n.getStringValue(); }, "apiNotifications": n => { managedTenantAlert.apiNotifications = n.getCollectionOfObjectValues(createManagedTenantApiNotificationFromDiscriminatorValue); }, "assignedToUserId": n => { managedTenantAlert.assignedToUserId = n.getStringValue(); }, "correlationCount": n => { managedTenantAlert.correlationCount = n.getNumberValue(); }, "correlationId": n => { managedTenantAlert.correlationId = n.getStringValue(); }, "createdByUserId": n => { managedTenantAlert.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managedTenantAlert.createdDateTime = n.getDateValue(); }, "emailNotifications": n => { managedTenantAlert.emailNotifications = n.getCollectionOfObjectValues(createManagedTenantEmailNotificationFromDiscriminatorValue); }, "lastActionByUserId": n => { managedTenantAlert.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managedTenantAlert.lastActionDateTime = n.getDateValue(); }, "message": n => { managedTenantAlert.message = n.getStringValue(); }, "severity": n => { managedTenantAlert.severity = n.getEnumValue(AlertSeverityObject); }, "status": n => { managedTenantAlert.status = n.getEnumValue(AlertStatusObject); }, "tenantId": n => { managedTenantAlert.tenantId = n.getStringValue(); }, "title": n => { managedTenantAlert.title = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlertCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlertCollectionResponse(managedTenantAlertCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedTenantAlertCollectionResponse)), { "value": n => { managedTenantAlertCollectionResponse.value = n.getCollectionOfObjectValues(createManagedTenantAlertFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlertLog The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlertLog(managedTenantAlertLog = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenantAlertLog)), { "alert": n => { managedTenantAlertLog.alert = n.getObjectValue(createManagedTenantAlertFromDiscriminatorValue); }, "content": n => { managedTenantAlertLog.content = n.getObjectValue(createAlertLogContentFromDiscriminatorValue); }, "createdByUserId": n => { managedTenantAlertLog.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managedTenantAlertLog.createdDateTime = n.getDateValue(); }, "lastActionByUserId": n => { managedTenantAlertLog.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managedTenantAlertLog.lastActionDateTime = n.getDateValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlertLogCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlertLogCollectionResponse(managedTenantAlertLogCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedTenantAlertLogCollectionResponse)), { "value": n => { managedTenantAlertLogCollectionResponse.value = n.getCollectionOfObjectValues(createManagedTenantAlertLogFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlertRule The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlertRule(managedTenantAlertRule = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenantAlertRule)), { "alertDisplayName": n => { managedTenantAlertRule.alertDisplayName = n.getStringValue(); }, "alerts": n => { managedTenantAlertRule.alerts = n.getCollectionOfObjectValues(createManagedTenantAlertFromDiscriminatorValue); }, "alertTTL": n => { managedTenantAlertRule.alertTTL = n.getNumberValue(); }, "createdByUserId": n => { managedTenantAlertRule.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managedTenantAlertRule.createdDateTime = n.getDateValue(); }, "description": n => { managedTenantAlertRule.description = n.getStringValue(); }, "displayName": n => { managedTenantAlertRule.displayName = n.getStringValue(); }, "lastActionByUserId": n => { managedTenantAlertRule.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managedTenantAlertRule.lastActionDateTime = n.getDateValue(); }, "lastRunDateTime": n => { managedTenantAlertRule.lastRunDateTime = n.getDateValue(); }, "notificationFinalDestinations": n => { managedTenantAlertRule.notificationFinalDestinations = n.getCollectionOfEnumValues(NotificationDestinationObject); }, "ruleDefinition": n => { managedTenantAlertRule.ruleDefinition = n.getObjectValue(createManagedTenantAlertRuleDefinitionFromDiscriminatorValue); }, "severity": n => { managedTenantAlertRule.severity = n.getEnumValue(AlertSeverityObject); }, "targets": n => { managedTenantAlertRule.targets = n.getCollectionOfObjectValues(createNotificationTargetFromDiscriminatorValue); }, "tenantIds": n => { managedTenantAlertRule.tenantIds = n.getCollectionOfObjectValues(createTenantInfoFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlertRuleCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlertRuleCollectionResponse(managedTenantAlertRuleCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedTenantAlertRuleCollectionResponse)), { "value": n => { managedTenantAlertRuleCollectionResponse.value = n.getCollectionOfObjectValues(createManagedTenantAlertRuleFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlertRuleDefinition The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlertRuleDefinition(managedTenantAlertRuleDefinition = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenantAlertRuleDefinition)), { "alertRules": n => { managedTenantAlertRuleDefinition.alertRules = n.getCollectionOfObjectValues(createManagedTenantAlertRuleFromDiscriminatorValue); }, "createdByUserId": n => { managedTenantAlertRuleDefinition.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managedTenantAlertRuleDefinition.createdDateTime = n.getDateValue(); }, "definitionTemplate": n => { managedTenantAlertRuleDefinition.definitionTemplate = n.getObjectValue(createAlertRuleDefinitionTemplateFromDiscriminatorValue); }, "displayName": n => { managedTenantAlertRuleDefinition.displayName = n.getStringValue(); }, "lastActionByUserId": n => { managedTenantAlertRuleDefinition.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managedTenantAlertRuleDefinition.lastActionDateTime = n.getDateValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantAlertRuleDefinitionCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantAlertRuleDefinitionCollectionResponse(managedTenantAlertRuleDefinitionCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedTenantAlertRuleDefinitionCollectionResponse)), { "value": n => { managedTenantAlertRuleDefinitionCollectionResponse.value = n.getCollectionOfObjectValues(createManagedTenantAlertRuleDefinitionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantApiNotification The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantApiNotification(managedTenantApiNotification = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenantApiNotification)), { "alert": n => { managedTenantApiNotification.alert = n.getObjectValue(createManagedTenantAlertFromDiscriminatorValue); }, "createdByUserId": n => { managedTenantApiNotification.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managedTenantApiNotification.createdDateTime = n.getDateValue(); }, "isAcknowledged": n => { managedTenantApiNotification.isAcknowledged = n.getBooleanValue(); }, "lastActionByUserId": n => { managedTenantApiNotification.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managedTenantApiNotification.lastActionDateTime = n.getDateValue(); }, "message": n => { managedTenantApiNotification.message = n.getStringValue(); }, "title": n => { managedTenantApiNotification.title = n.getStringValue(); }, "userId": n => { managedTenantApiNotification.userId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantApiNotificationCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantApiNotificationCollectionResponse(managedTenantApiNotificationCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedTenantApiNotificationCollectionResponse)), { "value": n => { managedTenantApiNotificationCollectionResponse.value = n.getCollectionOfObjectValues(createManagedTenantApiNotificationFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantEmailNotification The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantEmailNotification(managedTenantEmailNotification = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenantEmailNotification)), { "alert": n => { managedTenantEmailNotification.alert = n.getObjectValue(createManagedTenantAlertFromDiscriminatorValue); }, "createdByUserId": n => { managedTenantEmailNotification.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managedTenantEmailNotification.createdDateTime = n.getDateValue(); }, "emailAddresses": n => { managedTenantEmailNotification.emailAddresses = n.getCollectionOfObjectValues(createEmailFromDiscriminatorValue); }, "emailBody": n => { managedTenantEmailNotification.emailBody = n.getStringValue(); }, "lastActionByUserId": n => { managedTenantEmailNotification.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managedTenantEmailNotification.lastActionDateTime = n.getDateValue(); }, "subject": n => { managedTenantEmailNotification.subject = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantEmailNotificationCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantEmailNotificationCollectionResponse(managedTenantEmailNotificationCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedTenantEmailNotificationCollectionResponse)), { "value": n => { managedTenantEmailNotificationCollectionResponse.value = n.getCollectionOfObjectValues(createManagedTenantEmailNotificationFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantTicketingEndpoint The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantTicketingEndpoint(managedTenantTicketingEndpoint = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managedTenantTicketingEndpoint)), { "createdByUserId": n => { managedTenantTicketingEndpoint.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managedTenantTicketingEndpoint.createdDateTime = n.getDateValue(); }, "displayName": n => { managedTenantTicketingEndpoint.displayName = n.getStringValue(); }, "emailAddress": n => { managedTenantTicketingEndpoint.emailAddress = n.getStringValue(); }, "lastActionByUserId": n => { managedTenantTicketingEndpoint.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managedTenantTicketingEndpoint.lastActionDateTime = n.getDateValue(); }, "phoneNumber": n => { managedTenantTicketingEndpoint.phoneNumber = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagedTenantTicketingEndpointCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagedTenantTicketingEndpointCollectionResponse(managedTenantTicketingEndpointCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managedTenantTicketingEndpointCollectionResponse)), { "value": n => { managedTenantTicketingEndpointCollectionResponse.value = n.getCollectionOfObjectValues(createManagedTenantTicketingEndpointFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementAction The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementAction(managementAction = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementAction)), { "category": n => { managementAction.category = n.getEnumValue(ManagementCategoryObject); }, "description": n => { managementAction.description = n.getStringValue(); }, "displayName": n => { managementAction.displayName = n.getStringValue(); }, "referenceTemplateId": n => { managementAction.referenceTemplateId = n.getStringValue(); }, "referenceTemplateVersion": n => { managementAction.referenceTemplateVersion = n.getNumberValue(); }, "workloadActions": n => { managementAction.workloadActions = n.getCollectionOfObjectValues(createWorkloadActionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementActionCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementActionCollectionResponse(managementActionCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementActionCollectionResponse)), { "value": n => { managementActionCollectionResponse.value = n.getCollectionOfObjectValues(createManagementActionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementActionDeploymentStatus The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementActionDeploymentStatus(managementActionDeploymentStatus = {}) {
    return {
        "backingStoreEnabled": n => { managementActionDeploymentStatus.backingStoreEnabled = true; },
        "managementActionId": n => { managementActionDeploymentStatus.managementActionId = n.getStringValue(); },
        "managementTemplateId": n => { managementActionDeploymentStatus.managementTemplateId = n.getStringValue(); },
        "managementTemplateVersion": n => { managementActionDeploymentStatus.managementTemplateVersion = n.getNumberValue(); },
        "@odata.type": n => { managementActionDeploymentStatus.odataType = n.getStringValue(); },
        "status": n => { managementActionDeploymentStatus.status = n.getEnumValue(ManagementActionStatusObject); },
        "workloadActionDeploymentStatuses": n => { managementActionDeploymentStatus.workloadActionDeploymentStatuses = n.getCollectionOfObjectValues(createWorkloadActionDeploymentStatusFromDiscriminatorValue); },
    };
}
/**
 * The deserialization information for the current model
 * @param ManagementActionInfo The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementActionInfo(managementActionInfo = {}) {
    return {
        "backingStoreEnabled": n => { managementActionInfo.backingStoreEnabled = true; },
        "managementActionId": n => { managementActionInfo.managementActionId = n.getStringValue(); },
        "managementTemplateId": n => { managementActionInfo.managementTemplateId = n.getStringValue(); },
        "managementTemplateVersion": n => { managementActionInfo.managementTemplateVersion = n.getNumberValue(); },
        "@odata.type": n => { managementActionInfo.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param ManagementActionTenantDeploymentStatus The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementActionTenantDeploymentStatus(managementActionTenantDeploymentStatus = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementActionTenantDeploymentStatus)), { "statuses": n => { managementActionTenantDeploymentStatus.statuses = n.getCollectionOfObjectValues(createManagementActionDeploymentStatusFromDiscriminatorValue); }, "tenantGroupId": n => { managementActionTenantDeploymentStatus.tenantGroupId = n.getStringValue(); }, "tenantId": n => { managementActionTenantDeploymentStatus.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementActionTenantDeploymentStatusCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementActionTenantDeploymentStatusCollectionResponse(managementActionTenantDeploymentStatusCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementActionTenantDeploymentStatusCollectionResponse)), { "value": n => { managementActionTenantDeploymentStatusCollectionResponse.value = n.getCollectionOfObjectValues(createManagementActionTenantDeploymentStatusFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementIntent The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementIntent(managementIntent = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementIntent)), { "displayName": n => { managementIntent.displayName = n.getStringValue(); }, "isGlobal": n => { managementIntent.isGlobal = n.getBooleanValue(); }, "managementTemplates": n => { managementIntent.managementTemplates = n.getCollectionOfObjectValues(createManagementTemplateDetailedInfoFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementIntentCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementIntentCollectionResponse(managementIntentCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementIntentCollectionResponse)), { "value": n => { managementIntentCollectionResponse.value = n.getCollectionOfObjectValues(createManagementIntentFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementIntentInfo The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementIntentInfo(managementIntentInfo = {}) {
    return {
        "backingStoreEnabled": n => { managementIntentInfo.backingStoreEnabled = true; },
        "managementIntentDisplayName": n => { managementIntentInfo.managementIntentDisplayName = n.getStringValue(); },
        "managementIntentId": n => { managementIntentInfo.managementIntentId = n.getStringValue(); },
        "managementTemplates": n => { managementIntentInfo.managementTemplates = n.getCollectionOfObjectValues(createManagementTemplateDetailedInfoFromDiscriminatorValue); },
        "@odata.type": n => { managementIntentInfo.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplate The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplate(managementTemplate = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementTemplate)), { "category": n => { managementTemplate.category = n.getEnumValue(ManagementCategoryObject); }, "createdByUserId": n => { managementTemplate.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managementTemplate.createdDateTime = n.getDateValue(); }, "description": n => { managementTemplate.description = n.getStringValue(); }, "displayName": n => { managementTemplate.displayName = n.getStringValue(); }, "informationLinks": n => { managementTemplate.informationLinks = n.getCollectionOfObjectValues(createActionUrlFromDiscriminatorValue); }, "lastActionByUserId": n => { managementTemplate.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managementTemplate.lastActionDateTime = n.getDateValue(); }, "managementTemplateCollections": n => { managementTemplate.managementTemplateCollections = n.getCollectionOfObjectValues(createManagementTemplateCollectionFromDiscriminatorValue); }, "managementTemplateSteps": n => { managementTemplate.managementTemplateSteps = n.getCollectionOfObjectValues(createManagementTemplateStepFromDiscriminatorValue); }, "parameters": n => { managementTemplate.parameters = n.getCollectionOfObjectValues(createTemplateParameterFromDiscriminatorValue); }, "priority": n => { managementTemplate.priority = n.getNumberValue(); }, "provider": n => { managementTemplate.provider = n.getEnumValue(ManagementProviderObject); }, "userImpact": n => { managementTemplate.userImpact = n.getStringValue(); }, "version": n => { managementTemplate.version = n.getNumberValue(); }, "workloadActions": n => { managementTemplate.workloadActions = n.getCollectionOfObjectValues(createWorkloadActionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateCollection The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateCollection(managementTemplateCollection = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementTemplateCollection)), { "createdByUserId": n => { managementTemplateCollection.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managementTemplateCollection.createdDateTime = n.getDateValue(); }, "description": n => { managementTemplateCollection.description = n.getStringValue(); }, "displayName": n => { managementTemplateCollection.displayName = n.getStringValue(); }, "lastActionByUserId": n => { managementTemplateCollection.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managementTemplateCollection.lastActionDateTime = n.getDateValue(); }, "managementTemplates": n => { managementTemplateCollection.managementTemplates = n.getCollectionOfObjectValues(createManagementTemplateFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateCollectionCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateCollectionCollectionResponse(managementTemplateCollectionCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementTemplateCollectionCollectionResponse)), { "value": n => { managementTemplateCollectionCollectionResponse.value = n.getCollectionOfObjectValues(createManagementTemplateCollectionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateCollectionResponse(managementTemplateCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementTemplateCollectionResponse)), { "value": n => { managementTemplateCollectionResponse.value = n.getCollectionOfObjectValues(createManagementTemplateFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateCollectionTenantSummary The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateCollectionTenantSummary(managementTemplateCollectionTenantSummary = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementTemplateCollectionTenantSummary)), { "completeStepsCount": n => { managementTemplateCollectionTenantSummary.completeStepsCount = n.getNumberValue(); }, "completeUsersCount": n => { managementTemplateCollectionTenantSummary.completeUsersCount = n.getNumberValue(); }, "createdByUserId": n => { managementTemplateCollectionTenantSummary.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managementTemplateCollectionTenantSummary.createdDateTime = n.getDateValue(); }, "dismissedStepsCount": n => { managementTemplateCollectionTenantSummary.dismissedStepsCount = n.getNumberValue(); }, "excludedUsersCount": n => { managementTemplateCollectionTenantSummary.excludedUsersCount = n.getNumberValue(); }, "excludedUsersDistinctCount": n => { managementTemplateCollectionTenantSummary.excludedUsersDistinctCount = n.getNumberValue(); }, "incompleteStepsCount": n => { managementTemplateCollectionTenantSummary.incompleteStepsCount = n.getNumberValue(); }, "incompleteUsersCount": n => { managementTemplateCollectionTenantSummary.incompleteUsersCount = n.getNumberValue(); }, "ineligibleStepsCount": n => { managementTemplateCollectionTenantSummary.ineligibleStepsCount = n.getNumberValue(); }, "isComplete": n => { managementTemplateCollectionTenantSummary.isComplete = n.getBooleanValue(); }, "lastActionByUserId": n => { managementTemplateCollectionTenantSummary.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managementTemplateCollectionTenantSummary.lastActionDateTime = n.getDateValue(); }, "managementTemplateCollectionDisplayName": n => { managementTemplateCollectionTenantSummary.managementTemplateCollectionDisplayName = n.getStringValue(); }, "managementTemplateCollectionId": n => { managementTemplateCollectionTenantSummary.managementTemplateCollectionId = n.getStringValue(); }, "regressedStepsCount": n => { managementTemplateCollectionTenantSummary.regressedStepsCount = n.getNumberValue(); }, "regressedUsersCount": n => { managementTemplateCollectionTenantSummary.regressedUsersCount = n.getNumberValue(); }, "tenantId": n => { managementTemplateCollectionTenantSummary.tenantId = n.getStringValue(); }, "unlicensedUsersCount": n => { managementTemplateCollectionTenantSummary.unlicensedUsersCount = n.getNumberValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateCollectionTenantSummaryCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateCollectionTenantSummaryCollectionResponse(managementTemplateCollectionTenantSummaryCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementTemplateCollectionTenantSummaryCollectionResponse)), { "value": n => { managementTemplateCollectionTenantSummaryCollectionResponse.value = n.getCollectionOfObjectValues(createManagementTemplateCollectionTenantSummaryFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateDetailedInfo The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateDetailedInfo(managementTemplateDetailedInfo = {}) {
    return {
        "backingStoreEnabled": n => { managementTemplateDetailedInfo.backingStoreEnabled = true; },
        "category": n => { managementTemplateDetailedInfo.category = n.getEnumValue(ManagementCategoryObject); },
        "displayName": n => { managementTemplateDetailedInfo.displayName = n.getStringValue(); },
        "managementTemplateId": n => { managementTemplateDetailedInfo.managementTemplateId = n.getStringValue(); },
        "@odata.type": n => { managementTemplateDetailedInfo.odataType = n.getStringValue(); },
        "version": n => { managementTemplateDetailedInfo.version = n.getNumberValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStep The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStep(managementTemplateStep = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementTemplateStep)), { "acceptedVersion": n => { managementTemplateStep.acceptedVersion = n.getObjectValue(createManagementTemplateStepVersionFromDiscriminatorValue); }, "category": n => { managementTemplateStep.category = n.getEnumValue(ManagementCategoryObject); }, "createdByUserId": n => { managementTemplateStep.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managementTemplateStep.createdDateTime = n.getDateValue(); }, "description": n => { managementTemplateStep.description = n.getStringValue(); }, "displayName": n => { managementTemplateStep.displayName = n.getStringValue(); }, "informationLinks": n => { managementTemplateStep.informationLinks = n.getCollectionOfObjectValues(createActionUrlFromDiscriminatorValue); }, "lastActionByUserId": n => { managementTemplateStep.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managementTemplateStep.lastActionDateTime = n.getDateValue(); }, "managementTemplate": n => { managementTemplateStep.managementTemplate = n.getObjectValue(createManagementTemplateFromDiscriminatorValue); }, "portalLink": n => { managementTemplateStep.portalLink = n.getObjectValue(createActionUrlFromDiscriminatorValue); }, "priority": n => { managementTemplateStep.priority = n.getNumberValue(); }, "userImpact": n => { managementTemplateStep.userImpact = n.getStringValue(); }, "versions": n => { managementTemplateStep.versions = n.getCollectionOfObjectValues(createManagementTemplateStepVersionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStepCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStepCollectionResponse(managementTemplateStepCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementTemplateStepCollectionResponse)), { "value": n => { managementTemplateStepCollectionResponse.value = n.getCollectionOfObjectValues(createManagementTemplateStepFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStepDeployment The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStepDeployment(managementTemplateStepDeployment = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementTemplateStepDeployment)), { "createdByUserId": n => { managementTemplateStepDeployment.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managementTemplateStepDeployment.createdDateTime = n.getDateValue(); }, "error": n => { managementTemplateStepDeployment.errorEscaped = n.getObjectValue(createGraphAPIErrorDetailsFromDiscriminatorValue); }, "lastActionByUserId": n => { managementTemplateStepDeployment.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managementTemplateStepDeployment.lastActionDateTime = n.getDateValue(); }, "status": n => { managementTemplateStepDeployment.status = n.getEnumValue(ManagementTemplateDeploymentStatusObject); }, "templateStepVersion": n => { managementTemplateStepDeployment.templateStepVersion = n.getObjectValue(createManagementTemplateStepVersionFromDiscriminatorValue); }, "tenantId": n => { managementTemplateStepDeployment.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStepDeploymentCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStepDeploymentCollectionResponse(managementTemplateStepDeploymentCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementTemplateStepDeploymentCollectionResponse)), { "value": n => { managementTemplateStepDeploymentCollectionResponse.value = n.getCollectionOfObjectValues(createManagementTemplateStepDeploymentFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStepTenantSummary The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStepTenantSummary(managementTemplateStepTenantSummary = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementTemplateStepTenantSummary)), { "assignedTenantsCount": n => { managementTemplateStepTenantSummary.assignedTenantsCount = n.getNumberValue(); }, "compliantTenantsCount": n => { managementTemplateStepTenantSummary.compliantTenantsCount = n.getNumberValue(); }, "createdByUserId": n => { managementTemplateStepTenantSummary.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managementTemplateStepTenantSummary.createdDateTime = n.getDateValue(); }, "dismissedTenantsCount": n => { managementTemplateStepTenantSummary.dismissedTenantsCount = n.getNumberValue(); }, "ineligibleTenantsCount": n => { managementTemplateStepTenantSummary.ineligibleTenantsCount = n.getNumberValue(); }, "lastActionByUserId": n => { managementTemplateStepTenantSummary.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managementTemplateStepTenantSummary.lastActionDateTime = n.getDateValue(); }, "managementTemplateCollectionDisplayName": n => { managementTemplateStepTenantSummary.managementTemplateCollectionDisplayName = n.getStringValue(); }, "managementTemplateCollectionId": n => { managementTemplateStepTenantSummary.managementTemplateCollectionId = n.getStringValue(); }, "managementTemplateDisplayName": n => { managementTemplateStepTenantSummary.managementTemplateDisplayName = n.getStringValue(); }, "managementTemplateId": n => { managementTemplateStepTenantSummary.managementTemplateId = n.getStringValue(); }, "managementTemplateStepDisplayName": n => { managementTemplateStepTenantSummary.managementTemplateStepDisplayName = n.getStringValue(); }, "managementTemplateStepId": n => { managementTemplateStepTenantSummary.managementTemplateStepId = n.getStringValue(); }, "notCompliantTenantsCount": n => { managementTemplateStepTenantSummary.notCompliantTenantsCount = n.getNumberValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStepTenantSummaryCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStepTenantSummaryCollectionResponse(managementTemplateStepTenantSummaryCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementTemplateStepTenantSummaryCollectionResponse)), { "value": n => { managementTemplateStepTenantSummaryCollectionResponse.value = n.getCollectionOfObjectValues(createManagementTemplateStepTenantSummaryFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStepVersion The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStepVersion(managementTemplateStepVersion = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(managementTemplateStepVersion)), { "acceptedFor": n => { managementTemplateStepVersion.acceptedFor = n.getObjectValue(createManagementTemplateStepFromDiscriminatorValue); }, "contentMarkdown": n => { managementTemplateStepVersion.contentMarkdown = n.getStringValue(); }, "createdByUserId": n => { managementTemplateStepVersion.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { managementTemplateStepVersion.createdDateTime = n.getDateValue(); }, "deployments": n => { managementTemplateStepVersion.deployments = n.getCollectionOfObjectValues(createManagementTemplateStepDeploymentFromDiscriminatorValue); }, "lastActionByUserId": n => { managementTemplateStepVersion.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { managementTemplateStepVersion.lastActionDateTime = n.getDateValue(); }, "name": n => { managementTemplateStepVersion.name = n.getStringValue(); }, "templateStep": n => { managementTemplateStepVersion.templateStep = n.getObjectValue(createManagementTemplateStepFromDiscriminatorValue); }, "version": n => { managementTemplateStepVersion.version = n.getNumberValue(); }, "versionInformation": n => { managementTemplateStepVersion.versionInformation = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param ManagementTemplateStepVersionCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoManagementTemplateStepVersionCollectionResponse(managementTemplateStepVersionCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(managementTemplateStepVersionCollectionResponse)), { "value": n => { managementTemplateStepVersionCollectionResponse.value = n.getCollectionOfObjectValues(createManagementTemplateStepVersionFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param MyRole The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoMyRole(myRole = {}) {
    return {
        "assignments": n => { myRole.assignments = n.getCollectionOfObjectValues(createRoleAssignmentFromDiscriminatorValue); },
        "backingStoreEnabled": n => { myRole.backingStoreEnabled = true; },
        "@odata.type": n => { myRole.odataType = n.getStringValue(); },
        "tenantId": n => { myRole.tenantId = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param MyRoleCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoMyRoleCollectionResponse(myRoleCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(myRoleCollectionResponse)), { "value": n => { myRoleCollectionResponse.value = n.getCollectionOfObjectValues(createMyRoleFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param NotificationTarget The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoNotificationTarget(notificationTarget = {}) {
    return {
        "backingStoreEnabled": n => { notificationTarget.backingStoreEnabled = true; },
        "displayName": n => { notificationTarget.displayName = n.getStringValue(); },
        "@odata.type": n => { notificationTarget.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param RoleAssignment The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoRoleAssignment(roleAssignment = {}) {
    return {
        "assignmentType": n => { roleAssignment.assignmentType = n.getEnumValue(DelegatedPrivilegeStatusObject); },
        "backingStoreEnabled": n => { roleAssignment.backingStoreEnabled = true; },
        "@odata.type": n => { roleAssignment.odataType = n.getStringValue(); },
        "roles": n => { roleAssignment.roles = n.getCollectionOfObjectValues(createRoleDefinitionFromDiscriminatorValue); },
    };
}
/**
 * The deserialization information for the current model
 * @param RoleDefinition The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoRoleDefinition(roleDefinition = {}) {
    return {
        "backingStoreEnabled": n => { roleDefinition.backingStoreEnabled = true; },
        "description": n => { roleDefinition.description = n.getStringValue(); },
        "displayName": n => { roleDefinition.displayName = n.getStringValue(); },
        "@odata.type": n => { roleDefinition.odataType = n.getStringValue(); },
        "templateId": n => { roleDefinition.templateId = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param Setting The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoSetting(setting = {}) {
    return {
        "backingStoreEnabled": n => { setting.backingStoreEnabled = true; },
        "displayName": n => { setting.displayName = n.getStringValue(); },
        "jsonValue": n => { setting.jsonValue = n.getStringValue(); },
        "@odata.type": n => { setting.odataType = n.getStringValue(); },
        "overwriteAllowed": n => { setting.overwriteAllowed = n.getBooleanValue(); },
        "settingId": n => { setting.settingId = n.getStringValue(); },
        "valueType": n => { setting.valueType = n.getEnumValue(ManagementParameterValueTypeObject); },
    };
}
/**
 * The deserialization information for the current model
 * @param TemplateParameter The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTemplateParameter(templateParameter = {}) {
    return {
        "backingStoreEnabled": n => { templateParameter.backingStoreEnabled = true; },
        "description": n => { templateParameter.description = n.getStringValue(); },
        "displayName": n => { templateParameter.displayName = n.getStringValue(); },
        "jsonAllowedValues": n => { templateParameter.jsonAllowedValues = n.getStringValue(); },
        "jsonDefaultValue": n => { templateParameter.jsonDefaultValue = n.getStringValue(); },
        "@odata.type": n => { templateParameter.odataType = n.getStringValue(); },
        "valueType": n => { templateParameter.valueType = n.getEnumValue(ManagementParameterValueTypeObject); },
    };
}
/**
 * The deserialization information for the current model
 * @param Tenant The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenant(tenant = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(tenant)), { "contract": n => { tenant.contract = n.getObjectValue(createTenantContractFromDiscriminatorValue); }, "createdDateTime": n => { tenant.createdDateTime = n.getDateValue(); }, "displayName": n => { tenant.displayName = n.getStringValue(); }, "lastUpdatedDateTime": n => { tenant.lastUpdatedDateTime = n.getDateValue(); }, "tenantId": n => { tenant.tenantId = n.getStringValue(); }, "tenantStatusInformation": n => { tenant.tenantStatusInformation = n.getObjectValue(createTenantStatusInformationFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param TenantCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantCollectionResponse(tenantCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(tenantCollectionResponse)), { "value": n => { tenantCollectionResponse.value = n.getCollectionOfObjectValues(createTenantFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param TenantContactInformation The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantContactInformation(tenantContactInformation = {}) {
    return {
        "backingStoreEnabled": n => { tenantContactInformation.backingStoreEnabled = true; },
        "email": n => { tenantContactInformation.email = n.getStringValue(); },
        "name": n => { tenantContactInformation.name = n.getStringValue(); },
        "notes": n => { tenantContactInformation.notes = n.getStringValue(); },
        "@odata.type": n => { tenantContactInformation.odataType = n.getStringValue(); },
        "phone": n => { tenantContactInformation.phone = n.getStringValue(); },
        "title": n => { tenantContactInformation.title = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param TenantContract The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantContract(tenantContract = {}) {
    return {
        "backingStoreEnabled": n => { tenantContract.backingStoreEnabled = true; },
        "contractType": n => { tenantContract.contractType = n.getNumberValue(); },
        "defaultDomainName": n => { tenantContract.defaultDomainName = n.getStringValue(); },
        "displayName": n => { tenantContract.displayName = n.getStringValue(); },
        "@odata.type": n => { tenantContract.odataType = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param TenantCustomizedInformation The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantCustomizedInformation(tenantCustomizedInformation = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(tenantCustomizedInformation)), { "businessRelationship": n => { tenantCustomizedInformation.businessRelationship = n.getStringValue(); }, "complianceRequirements": n => { tenantCustomizedInformation.complianceRequirements = n.getCollectionOfPrimitiveValues("string"); }, "contacts": n => { tenantCustomizedInformation.contacts = n.getCollectionOfObjectValues(createTenantContactInformationFromDiscriminatorValue); }, "displayName": n => { tenantCustomizedInformation.displayName = n.getStringValue(); }, "managedServicesPlans": n => { tenantCustomizedInformation.managedServicesPlans = n.getCollectionOfPrimitiveValues("string"); }, "note": n => { tenantCustomizedInformation.note = n.getStringValue(); }, "noteLastModifiedDateTime": n => { tenantCustomizedInformation.noteLastModifiedDateTime = n.getDateValue(); }, "partnerRelationshipManagerUserIds": n => { tenantCustomizedInformation.partnerRelationshipManagerUserIds = n.getCollectionOfPrimitiveValues("string"); }, "tenantId": n => { tenantCustomizedInformation.tenantId = n.getStringValue(); }, "website": n => { tenantCustomizedInformation.website = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param TenantCustomizedInformationCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantCustomizedInformationCollectionResponse(tenantCustomizedInformationCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(tenantCustomizedInformationCollectionResponse)), { "value": n => { tenantCustomizedInformationCollectionResponse.value = n.getCollectionOfObjectValues(createTenantCustomizedInformationFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param TenantDetailedInformation The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantDetailedInformation(tenantDetailedInformation = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(tenantDetailedInformation)), { "city": n => { tenantDetailedInformation.city = n.getStringValue(); }, "countryCode": n => { tenantDetailedInformation.countryCode = n.getStringValue(); }, "countryName": n => { tenantDetailedInformation.countryName = n.getStringValue(); }, "defaultDomainName": n => { tenantDetailedInformation.defaultDomainName = n.getStringValue(); }, "displayName": n => { tenantDetailedInformation.displayName = n.getStringValue(); }, "industryName": n => { tenantDetailedInformation.industryName = n.getStringValue(); }, "region": n => { tenantDetailedInformation.region = n.getStringValue(); }, "segmentName": n => { tenantDetailedInformation.segmentName = n.getStringValue(); }, "tenantId": n => { tenantDetailedInformation.tenantId = n.getStringValue(); }, "verticalName": n => { tenantDetailedInformation.verticalName = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param TenantDetailedInformationCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantDetailedInformationCollectionResponse(tenantDetailedInformationCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(tenantDetailedInformationCollectionResponse)), { "value": n => { tenantDetailedInformationCollectionResponse.value = n.getCollectionOfObjectValues(createTenantDetailedInformationFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param TenantGroup The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantGroup(tenantGroup = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(tenantGroup)), { "allTenantsIncluded": n => { tenantGroup.allTenantsIncluded = n.getBooleanValue(); }, "displayName": n => { tenantGroup.displayName = n.getStringValue(); }, "managementActions": n => { tenantGroup.managementActions = n.getCollectionOfObjectValues(createManagementActionInfoFromDiscriminatorValue); }, "managementIntents": n => { tenantGroup.managementIntents = n.getCollectionOfObjectValues(createManagementIntentInfoFromDiscriminatorValue); }, "tenantIds": n => { tenantGroup.tenantIds = n.getCollectionOfPrimitiveValues("string"); } });
}
/**
 * The deserialization information for the current model
 * @param TenantGroupCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantGroupCollectionResponse(tenantGroupCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(tenantGroupCollectionResponse)), { "value": n => { tenantGroupCollectionResponse.value = n.getCollectionOfObjectValues(createTenantGroupFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param TenantInfo The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantInfo(tenantInfo = {}) {
    return {
        "backingStoreEnabled": n => { tenantInfo.backingStoreEnabled = true; },
        "@odata.type": n => { tenantInfo.odataType = n.getStringValue(); },
        "tenantId": n => { tenantInfo.tenantId = n.getStringValue(); },
    };
}
/**
 * The deserialization information for the current model
 * @param TenantStatusInformation The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantStatusInformation(tenantStatusInformation = {}) {
    return {
        "backingStoreEnabled": n => { tenantStatusInformation.backingStoreEnabled = true; },
        "delegatedPrivilegeStatus": n => { tenantStatusInformation.delegatedPrivilegeStatus = n.getEnumValue(DelegatedPrivilegeStatusObject); },
        "lastDelegatedPrivilegeRefreshDateTime": n => { tenantStatusInformation.lastDelegatedPrivilegeRefreshDateTime = n.getDateValue(); },
        "@odata.type": n => { tenantStatusInformation.odataType = n.getStringValue(); },
        "offboardedByUserId": n => { tenantStatusInformation.offboardedByUserId = n.getStringValue(); },
        "offboardedDateTime": n => { tenantStatusInformation.offboardedDateTime = n.getDateValue(); },
        "onboardedByUserId": n => { tenantStatusInformation.onboardedByUserId = n.getStringValue(); },
        "onboardedDateTime": n => { tenantStatusInformation.onboardedDateTime = n.getDateValue(); },
        "onboardingStatus": n => { tenantStatusInformation.onboardingStatus = n.getEnumValue(TenantOnboardingStatusObject); },
        "tenantOnboardingEligibilityReason": n => { tenantStatusInformation.tenantOnboardingEligibilityReason = n.getEnumValue(TenantOnboardingEligibilityReasonObject); },
        "workloadStatuses": n => { tenantStatusInformation.workloadStatuses = n.getCollectionOfObjectValues(createWorkloadStatusFromDiscriminatorValue); },
    };
}
/**
 * The deserialization information for the current model
 * @param TenantTag The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantTag(tenantTag = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(tenantTag)), { "createdByUserId": n => { tenantTag.createdByUserId = n.getStringValue(); }, "createdDateTime": n => { tenantTag.createdDateTime = n.getDateValue(); }, "deletedDateTime": n => { tenantTag.deletedDateTime = n.getDateValue(); }, "description": n => { tenantTag.description = n.getStringValue(); }, "displayName": n => { tenantTag.displayName = n.getStringValue(); }, "lastActionByUserId": n => { tenantTag.lastActionByUserId = n.getStringValue(); }, "lastActionDateTime": n => { tenantTag.lastActionDateTime = n.getDateValue(); }, "tenants": n => { tenantTag.tenants = n.getCollectionOfObjectValues(createTenantInfoFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param TenantTagCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoTenantTagCollectionResponse(tenantTagCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(tenantTagCollectionResponse)), { "value": n => { tenantTagCollectionResponse.value = n.getCollectionOfObjectValues(createTenantTagFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param WindowsDeviceMalwareState The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoWindowsDeviceMalwareState(windowsDeviceMalwareState = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(windowsDeviceMalwareState)), { "additionalInformationUrl": n => { windowsDeviceMalwareState.additionalInformationUrl = n.getStringValue(); }, "detectionCount": n => { windowsDeviceMalwareState.detectionCount = n.getNumberValue(); }, "deviceDeleted": n => { windowsDeviceMalwareState.deviceDeleted = n.getBooleanValue(); }, "initialDetectionDateTime": n => { windowsDeviceMalwareState.initialDetectionDateTime = n.getDateValue(); }, "lastRefreshedDateTime": n => { windowsDeviceMalwareState.lastRefreshedDateTime = n.getDateValue(); }, "lastStateChangeDateTime": n => { windowsDeviceMalwareState.lastStateChangeDateTime = n.getDateValue(); }, "malwareCategory": n => { windowsDeviceMalwareState.malwareCategory = n.getStringValue(); }, "malwareDisplayName": n => { windowsDeviceMalwareState.malwareDisplayName = n.getStringValue(); }, "malwareExecutionState": n => { windowsDeviceMalwareState.malwareExecutionState = n.getStringValue(); }, "malwareId": n => { windowsDeviceMalwareState.malwareId = n.getStringValue(); }, "malwareSeverity": n => { windowsDeviceMalwareState.malwareSeverity = n.getStringValue(); }, "malwareThreatState": n => { windowsDeviceMalwareState.malwareThreatState = n.getStringValue(); }, "managedDeviceId": n => { windowsDeviceMalwareState.managedDeviceId = n.getStringValue(); }, "managedDeviceName": n => { windowsDeviceMalwareState.managedDeviceName = n.getStringValue(); }, "tenantDisplayName": n => { windowsDeviceMalwareState.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { windowsDeviceMalwareState.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param WindowsDeviceMalwareStateCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoWindowsDeviceMalwareStateCollectionResponse(windowsDeviceMalwareStateCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(windowsDeviceMalwareStateCollectionResponse)), { "value": n => { windowsDeviceMalwareStateCollectionResponse.value = n.getCollectionOfObjectValues(createWindowsDeviceMalwareStateFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param WindowsProtectionState The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoWindowsProtectionState(windowsProtectionState = {}) {
    return Object.assign(Object.assign({}, deserializeIntoEntity(windowsProtectionState)), { "antiMalwareVersion": n => { windowsProtectionState.antiMalwareVersion = n.getStringValue(); }, "attentionRequired": n => { windowsProtectionState.attentionRequired = n.getBooleanValue(); }, "deviceDeleted": n => { windowsProtectionState.deviceDeleted = n.getBooleanValue(); }, "devicePropertyRefreshDateTime": n => { windowsProtectionState.devicePropertyRefreshDateTime = n.getDateValue(); }, "engineVersion": n => { windowsProtectionState.engineVersion = n.getStringValue(); }, "fullScanOverdue": n => { windowsProtectionState.fullScanOverdue = n.getBooleanValue(); }, "fullScanRequired": n => { windowsProtectionState.fullScanRequired = n.getBooleanValue(); }, "lastFullScanDateTime": n => { windowsProtectionState.lastFullScanDateTime = n.getDateValue(); }, "lastFullScanSignatureVersion": n => { windowsProtectionState.lastFullScanSignatureVersion = n.getStringValue(); }, "lastQuickScanDateTime": n => { windowsProtectionState.lastQuickScanDateTime = n.getDateValue(); }, "lastQuickScanSignatureVersion": n => { windowsProtectionState.lastQuickScanSignatureVersion = n.getStringValue(); }, "lastRefreshedDateTime": n => { windowsProtectionState.lastRefreshedDateTime = n.getDateValue(); }, "lastReportedDateTime": n => { windowsProtectionState.lastReportedDateTime = n.getDateValue(); }, "malwareProtectionEnabled": n => { windowsProtectionState.malwareProtectionEnabled = n.getBooleanValue(); }, "managedDeviceHealthState": n => { windowsProtectionState.managedDeviceHealthState = n.getStringValue(); }, "managedDeviceId": n => { windowsProtectionState.managedDeviceId = n.getStringValue(); }, "managedDeviceName": n => { windowsProtectionState.managedDeviceName = n.getStringValue(); }, "networkInspectionSystemEnabled": n => { windowsProtectionState.networkInspectionSystemEnabled = n.getBooleanValue(); }, "quickScanOverdue": n => { windowsProtectionState.quickScanOverdue = n.getBooleanValue(); }, "realTimeProtectionEnabled": n => { windowsProtectionState.realTimeProtectionEnabled = n.getBooleanValue(); }, "rebootRequired": n => { windowsProtectionState.rebootRequired = n.getBooleanValue(); }, "signatureUpdateOverdue": n => { windowsProtectionState.signatureUpdateOverdue = n.getBooleanValue(); }, "signatureVersion": n => { windowsProtectionState.signatureVersion = n.getStringValue(); }, "tenantDisplayName": n => { windowsProtectionState.tenantDisplayName = n.getStringValue(); }, "tenantId": n => { windowsProtectionState.tenantId = n.getStringValue(); } });
}
/**
 * The deserialization information for the current model
 * @param WindowsProtectionStateCollectionResponse The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoWindowsProtectionStateCollectionResponse(windowsProtectionStateCollectionResponse = {}) {
    return Object.assign(Object.assign({}, deserializeIntoBaseCollectionPaginationCountResponse(windowsProtectionStateCollectionResponse)), { "value": n => { windowsProtectionStateCollectionResponse.value = n.getCollectionOfObjectValues(createWindowsProtectionStateFromDiscriminatorValue); } });
}
/**
 * The deserialization information for the current model
 * @param WorkloadAction The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoWorkloadAction(workloadAction = {}) {
    return {
        "actionId": n => { workloadAction.actionId = n.getStringValue(); },
        "backingStoreEnabled": n => { workloadAction.backingStoreEnabled = true; },
        "category": n => { workloadAction.category = n.getEnumValue(WorkloadActionCategoryObject); },
        "description": n => { workloadAction.description = n.getStringValue(); },
        "displayName": n => { workloadAction.displayName = n.getStringValue(); },
        "licenses": n => { workloadAction.licenses = n.getCollectionOfPrimitiveValues("string"); },
        "@odata.type": n => { workloadAction.odataType = n.getStringValue(); },
        "service": n => { workloadAction.service = n.getStringValue(); },
        "settings": n => { workloadAction.settings = n.getCollectionOfObjectValues(createSettingFromDiscriminatorValue); },
    };
}
/**
 * The deserialization information for the current model
 * @param WorkloadActionDeploymentStatus The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoWorkloadActionDeploymentStatus(workloadActionDeploymentStatus = {}) {
    return {
        "actionId": n => { workloadActionDeploymentStatus.actionId = n.getStringValue(); },
        "backingStoreEnabled": n => { workloadActionDeploymentStatus.backingStoreEnabled = true; },
        "deployedPolicyId": n => { workloadActionDeploymentStatus.deployedPolicyId = n.getStringValue(); },
        "error": n => { workloadActionDeploymentStatus.errorEscaped = n.getObjectValue(createGenericErrorFromDiscriminatorValue); },
        "excludeGroups": n => { workloadActionDeploymentStatus.excludeGroups = n.getCollectionOfPrimitiveValues("string"); },
        "includeAllUsers": n => { workloadActionDeploymentStatus.includeAllUsers = n.getBooleanValue(); },
        "includeGroups": n => { workloadActionDeploymentStatus.includeGroups = n.getCollectionOfPrimitiveValues("string"); },
        "lastDeploymentDateTime": n => { workloadActionDeploymentStatus.lastDeploymentDateTime = n.getDateValue(); },
        "@odata.type": n => { workloadActionDeploymentStatus.odataType = n.getStringValue(); },
        "status": n => { workloadActionDeploymentStatus.status = n.getEnumValue(WorkloadActionStatusObject); },
    };
}
/**
 * The deserialization information for the current model
 * @param WorkloadStatus The instance to deserialize into.
 * @returns {Record<string, (node: ParseNode) => void>}
 */
// @ts-ignore
export function deserializeIntoWorkloadStatus(workloadStatus = {}) {
    return {
        "backingStoreEnabled": n => { workloadStatus.backingStoreEnabled = true; },
        "displayName": n => { workloadStatus.displayName = n.getStringValue(); },
        "@odata.type": n => { workloadStatus.odataType = n.getStringValue(); },
        "offboardedDateTime": n => { workloadStatus.offboardedDateTime = n.getDateValue(); },
        "onboardedDateTime": n => { workloadStatus.onboardedDateTime = n.getDateValue(); },
        "onboardingStatus": n => { workloadStatus.onboardingStatus = n.getEnumValue(WorkloadOnboardingStatusObject); },
    };
}
/**
 * Serializes information the current object
 * @param AggregatedPolicyCompliance The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAggregatedPolicyCompliance(writer, aggregatedPolicyCompliance = {}, isSerializingDerivedType = false) {
    if (!aggregatedPolicyCompliance || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, aggregatedPolicyCompliance, isSerializingDerivedType);
    writer.writeStringValue("compliancePolicyId", aggregatedPolicyCompliance.compliancePolicyId);
    writer.writeStringValue("compliancePolicyName", aggregatedPolicyCompliance.compliancePolicyName);
    writer.writeStringValue("compliancePolicyPlatform", aggregatedPolicyCompliance.compliancePolicyPlatform);
    writer.writeStringValue("compliancePolicyType", aggregatedPolicyCompliance.compliancePolicyType);
    writer.writeDateValue("lastRefreshedDateTime", aggregatedPolicyCompliance.lastRefreshedDateTime);
    writer.writeNumberValue("numberOfCompliantDevices", aggregatedPolicyCompliance.numberOfCompliantDevices);
    writer.writeNumberValue("numberOfErrorDevices", aggregatedPolicyCompliance.numberOfErrorDevices);
    writer.writeNumberValue("numberOfNonCompliantDevices", aggregatedPolicyCompliance.numberOfNonCompliantDevices);
    writer.writeDateValue("policyModifiedDateTime", aggregatedPolicyCompliance.policyModifiedDateTime);
    writer.writeStringValue("tenantDisplayName", aggregatedPolicyCompliance.tenantDisplayName);
    writer.writeStringValue("tenantId", aggregatedPolicyCompliance.tenantId);
}
/**
 * Serializes information the current object
 * @param AggregatedPolicyComplianceCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAggregatedPolicyComplianceCollectionResponse(writer, aggregatedPolicyComplianceCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!aggregatedPolicyComplianceCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, aggregatedPolicyComplianceCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", aggregatedPolicyComplianceCollectionResponse.value, serializeAggregatedPolicyCompliance);
}
/**
 * Serializes information the current object
 * @param AlertData The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAlertData(writer, alertData = {}, isSerializingDerivedType = false) {
    if (!alertData || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("displayName", alertData.displayName);
    writer.writeStringValue("@odata.type", alertData.odataType);
    writer.writeAdditionalData(alertData.additionalData);
}
/**
 * Serializes information the current object
 * @param AlertDataReferenceString The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAlertDataReferenceString(writer, alertDataReferenceString = {}, isSerializingDerivedType = false) {
    if (!alertDataReferenceString || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("displayName", alertDataReferenceString.displayName);
    writer.writeStringValue("@odata.type", alertDataReferenceString.odataType);
    writer.writeAdditionalData(alertDataReferenceString.additionalData);
}
/**
 * Serializes information the current object
 * @param AlertLogContent The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAlertLogContent(writer, alertLogContent = {}, isSerializingDerivedType = false) {
    if (!alertLogContent || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("displayName", alertLogContent.displayName);
    writer.writeStringValue("@odata.type", alertLogContent.odataType);
    writer.writeAdditionalData(alertLogContent.additionalData);
}
/**
 * Serializes information the current object
 * @param AlertRuleDefinitionTemplate The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAlertRuleDefinitionTemplate(writer, alertRuleDefinitionTemplate = {}, isSerializingDerivedType = false) {
    if (!alertRuleDefinitionTemplate || isSerializingDerivedType) {
        return;
    }
    writer.writeEnumValue("defaultSeverity", alertRuleDefinitionTemplate.defaultSeverity);
    writer.writeStringValue("@odata.type", alertRuleDefinitionTemplate.odataType);
    writer.writeAdditionalData(alertRuleDefinitionTemplate.additionalData);
}
/**
 * Serializes information the current object
 * @param AppPerformance The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAppPerformance(writer, appPerformance = {}, isSerializingDerivedType = false) {
    if (!appPerformance || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, appPerformance, isSerializingDerivedType);
    writer.writeStringValue("appFriendlyName", appPerformance.appFriendlyName);
    writer.writeStringValue("appName", appPerformance.appName);
    writer.writeStringValue("appPublisher", appPerformance.appPublisher);
    writer.writeDateValue("lastUpdatedDateTime", appPerformance.lastUpdatedDateTime);
    writer.writeNumberValue("meanTimeToFailureInMinutes", appPerformance.meanTimeToFailureInMinutes);
    writer.writeStringValue("tenantDisplayName", appPerformance.tenantDisplayName);
    writer.writeStringValue("tenantId", appPerformance.tenantId);
    writer.writeNumberValue("totalActiveDeviceCount", appPerformance.totalActiveDeviceCount);
    writer.writeNumberValue("totalAppCrashCount", appPerformance.totalAppCrashCount);
    writer.writeNumberValue("totalAppFreezeCount", appPerformance.totalAppFreezeCount);
}
/**
 * Serializes information the current object
 * @param AppPerformanceCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAppPerformanceCollectionResponse(writer, appPerformanceCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!appPerformanceCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, appPerformanceCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", appPerformanceCollectionResponse.value, serializeAppPerformance);
}
/**
 * Serializes information the current object
 * @param AuditEvent The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAuditEvent(writer, auditEvent = {}, isSerializingDerivedType = false) {
    if (!auditEvent || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, auditEvent, isSerializingDerivedType);
    writer.writeStringValue("activity", auditEvent.activity);
    writer.writeDateValue("activityDateTime", auditEvent.activityDateTime);
    writer.writeStringValue("activityId", auditEvent.activityId);
    writer.writeStringValue("category", auditEvent.category);
    writer.writeStringValue("httpVerb", auditEvent.httpVerb);
    writer.writeStringValue("initiatedByAppId", auditEvent.initiatedByAppId);
    writer.writeStringValue("initiatedByUpn", auditEvent.initiatedByUpn);
    writer.writeStringValue("initiatedByUserId", auditEvent.initiatedByUserId);
    writer.writeStringValue("ipAddress", auditEvent.ipAddress);
    writer.writeStringValue("requestBody", auditEvent.requestBody);
    writer.writeStringValue("requestUrl", auditEvent.requestUrl);
    writer.writeStringValue("tenantIds", auditEvent.tenantIds);
    writer.writeStringValue("tenantNames", auditEvent.tenantNames);
}
/**
 * Serializes information the current object
 * @param AuditEventCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeAuditEventCollectionResponse(writer, auditEventCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!auditEventCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, auditEventCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", auditEventCollectionResponse.value, serializeAuditEvent);
}
/**
 * Serializes information the current object
 * @param CloudPcConnection The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCloudPcConnection(writer, cloudPcConnection = {}, isSerializingDerivedType = false) {
    if (!cloudPcConnection || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, cloudPcConnection, isSerializingDerivedType);
    writer.writeStringValue("displayName", cloudPcConnection.displayName);
    writer.writeStringValue("healthCheckStatus", cloudPcConnection.healthCheckStatus);
    writer.writeDateValue("lastRefreshedDateTime", cloudPcConnection.lastRefreshedDateTime);
    writer.writeStringValue("tenantDisplayName", cloudPcConnection.tenantDisplayName);
    writer.writeStringValue("tenantId", cloudPcConnection.tenantId);
}
/**
 * Serializes information the current object
 * @param CloudPcConnectionCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCloudPcConnectionCollectionResponse(writer, cloudPcConnectionCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!cloudPcConnectionCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, cloudPcConnectionCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", cloudPcConnectionCollectionResponse.value, serializeCloudPcConnection);
}
/**
 * Serializes information the current object
 * @param CloudPcDevice The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCloudPcDevice(writer, cloudPcDevice = {}, isSerializingDerivedType = false) {
    if (!cloudPcDevice || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, cloudPcDevice, isSerializingDerivedType);
    writer.writeStringValue("cloudPcStatus", cloudPcDevice.cloudPcStatus);
    writer.writeStringValue("deviceSpecification", cloudPcDevice.deviceSpecification);
    writer.writeStringValue("displayName", cloudPcDevice.displayName);
    writer.writeDateValue("lastRefreshedDateTime", cloudPcDevice.lastRefreshedDateTime);
    writer.writeStringValue("managedDeviceId", cloudPcDevice.managedDeviceId);
    writer.writeStringValue("managedDeviceName", cloudPcDevice.managedDeviceName);
    writer.writeStringValue("provisioningPolicyId", cloudPcDevice.provisioningPolicyId);
    writer.writeStringValue("servicePlanName", cloudPcDevice.servicePlanName);
    writer.writeStringValue("servicePlanType", cloudPcDevice.servicePlanType);
    writer.writeStringValue("tenantDisplayName", cloudPcDevice.tenantDisplayName);
    writer.writeStringValue("tenantId", cloudPcDevice.tenantId);
    writer.writeStringValue("userPrincipalName", cloudPcDevice.userPrincipalName);
}
/**
 * Serializes information the current object
 * @param CloudPcDeviceCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCloudPcDeviceCollectionResponse(writer, cloudPcDeviceCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!cloudPcDeviceCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, cloudPcDeviceCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", cloudPcDeviceCollectionResponse.value, serializeCloudPcDevice);
}
/**
 * Serializes information the current object
 * @param CloudPcOverview The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCloudPcOverview(writer, cloudPcOverview = {}, isSerializingDerivedType = false) {
    if (!cloudPcOverview || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, cloudPcOverview, isSerializingDerivedType);
    writer.writeNumberValue("frontlineLicensesCount", cloudPcOverview.frontlineLicensesCount);
    writer.writeDateValue("lastRefreshedDateTime", cloudPcOverview.lastRefreshedDateTime);
    writer.writeNumberValue("numberOfCloudPcConnectionStatusFailed", cloudPcOverview.numberOfCloudPcConnectionStatusFailed);
    writer.writeNumberValue("numberOfCloudPcConnectionStatusPassed", cloudPcOverview.numberOfCloudPcConnectionStatusPassed);
    writer.writeNumberValue("numberOfCloudPcConnectionStatusPending", cloudPcOverview.numberOfCloudPcConnectionStatusPending);
    writer.writeNumberValue("numberOfCloudPcConnectionStatusRunning", cloudPcOverview.numberOfCloudPcConnectionStatusRunning);
    writer.writeNumberValue("numberOfCloudPcConnectionStatusUnkownFutureValue", cloudPcOverview.numberOfCloudPcConnectionStatusUnkownFutureValue);
    writer.writeNumberValue("numberOfCloudPcStatusDeprovisioning", cloudPcOverview.numberOfCloudPcStatusDeprovisioning);
    writer.writeNumberValue("numberOfCloudPcStatusFailed", cloudPcOverview.numberOfCloudPcStatusFailed);
    writer.writeNumberValue("numberOfCloudPcStatusInGracePeriod", cloudPcOverview.numberOfCloudPcStatusInGracePeriod);
    writer.writeNumberValue("numberOfCloudPcStatusNotProvisioned", cloudPcOverview.numberOfCloudPcStatusNotProvisioned);
    writer.writeNumberValue("numberOfCloudPcStatusProvisioned", cloudPcOverview.numberOfCloudPcStatusProvisioned);
    writer.writeNumberValue("numberOfCloudPcStatusProvisioning", cloudPcOverview.numberOfCloudPcStatusProvisioning);
    writer.writeNumberValue("numberOfCloudPcStatusUnknown", cloudPcOverview.numberOfCloudPcStatusUnknown);
    writer.writeNumberValue("numberOfCloudPcStatusUpgrading", cloudPcOverview.numberOfCloudPcStatusUpgrading);
    writer.writeStringValue("tenantDisplayName", cloudPcOverview.tenantDisplayName);
    writer.writeStringValue("tenantId", cloudPcOverview.tenantId);
    writer.writeNumberValue("totalBusinessLicenses", cloudPcOverview.totalBusinessLicenses);
    writer.writeNumberValue("totalCloudPcConnectionStatus", cloudPcOverview.totalCloudPcConnectionStatus);
    writer.writeNumberValue("totalCloudPcStatus", cloudPcOverview.totalCloudPcStatus);
    writer.writeNumberValue("totalEnterpriseLicenses", cloudPcOverview.totalEnterpriseLicenses);
}
/**
 * Serializes information the current object
 * @param CloudPcOverviewCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCloudPcOverviewCollectionResponse(writer, cloudPcOverviewCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!cloudPcOverviewCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, cloudPcOverviewCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", cloudPcOverviewCollectionResponse.value, serializeCloudPcOverview);
}
/**
 * Serializes information the current object
 * @param ConditionalAccessPolicyCoverage The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeConditionalAccessPolicyCoverage(writer, conditionalAccessPolicyCoverage = {}, isSerializingDerivedType = false) {
    if (!conditionalAccessPolicyCoverage || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, conditionalAccessPolicyCoverage, isSerializingDerivedType);
    writer.writeStringValue("conditionalAccessPolicyState", conditionalAccessPolicyCoverage.conditionalAccessPolicyState);
    writer.writeDateValue("latestPolicyModifiedDateTime", conditionalAccessPolicyCoverage.latestPolicyModifiedDateTime);
    writer.writeBooleanValue("requiresDeviceCompliance", conditionalAccessPolicyCoverage.requiresDeviceCompliance);
    writer.writeStringValue("tenantDisplayName", conditionalAccessPolicyCoverage.tenantDisplayName);
}
/**
 * Serializes information the current object
 * @param ConditionalAccessPolicyCoverageCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeConditionalAccessPolicyCoverageCollectionResponse(writer, conditionalAccessPolicyCoverageCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!conditionalAccessPolicyCoverageCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, conditionalAccessPolicyCoverageCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", conditionalAccessPolicyCoverageCollectionResponse.value, serializeConditionalAccessPolicyCoverage);
}
/**
 * Serializes information the current object
 * @param CredentialUserRegistrationsSummary The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCredentialUserRegistrationsSummary(writer, credentialUserRegistrationsSummary = {}, isSerializingDerivedType = false) {
    if (!credentialUserRegistrationsSummary || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, credentialUserRegistrationsSummary, isSerializingDerivedType);
    writer.writeDateValue("lastRefreshedDateTime", credentialUserRegistrationsSummary.lastRefreshedDateTime);
    writer.writeNumberValue("mfaAndSsprCapableUserCount", credentialUserRegistrationsSummary.mfaAndSsprCapableUserCount);
    writer.writeStringValue("mfaConditionalAccessPolicyState", credentialUserRegistrationsSummary.mfaConditionalAccessPolicyState);
    writer.writeNumberValue("mfaExcludedUserCount", credentialUserRegistrationsSummary.mfaExcludedUserCount);
    writer.writeNumberValue("mfaRegisteredUserCount", credentialUserRegistrationsSummary.mfaRegisteredUserCount);
    writer.writeBooleanValue("securityDefaultsEnabled", credentialUserRegistrationsSummary.securityDefaultsEnabled);
    writer.writeNumberValue("ssprEnabledUserCount", credentialUserRegistrationsSummary.ssprEnabledUserCount);
    writer.writeNumberValue("ssprRegisteredUserCount", credentialUserRegistrationsSummary.ssprRegisteredUserCount);
    writer.writeStringValue("tenantDisplayName", credentialUserRegistrationsSummary.tenantDisplayName);
    writer.writeStringValue("tenantId", credentialUserRegistrationsSummary.tenantId);
    writer.writeStringValue("tenantLicenseType", credentialUserRegistrationsSummary.tenantLicenseType);
    writer.writeNumberValue("totalUserCount", credentialUserRegistrationsSummary.totalUserCount);
}
/**
 * Serializes information the current object
 * @param CredentialUserRegistrationsSummaryCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeCredentialUserRegistrationsSummaryCollectionResponse(writer, credentialUserRegistrationsSummaryCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!credentialUserRegistrationsSummaryCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, credentialUserRegistrationsSummaryCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", credentialUserRegistrationsSummaryCollectionResponse.value, serializeCredentialUserRegistrationsSummary);
}
/**
 * Serializes information the current object
 * @param DeviceAppPerformance The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeDeviceAppPerformance(writer, deviceAppPerformance = {}, isSerializingDerivedType = false) {
    if (!deviceAppPerformance || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, deviceAppPerformance, isSerializingDerivedType);
    writer.writeStringValue("appFriendlyName", deviceAppPerformance.appFriendlyName);
    writer.writeStringValue("appName", deviceAppPerformance.appName);
    writer.writeStringValue("appPublisher", deviceAppPerformance.appPublisher);
    writer.writeStringValue("appVersion", deviceAppPerformance.appVersion);
    writer.writeStringValue("deviceId", deviceAppPerformance.deviceId);
    writer.writeStringValue("deviceManufacturer", deviceAppPerformance.deviceManufacturer);
    writer.writeStringValue("deviceModel", deviceAppPerformance.deviceModel);
    writer.writeStringValue("deviceName", deviceAppPerformance.deviceName);
    writer.writeStringValue("healthStatus", deviceAppPerformance.healthStatus);
    writer.writeNumberValue("isLatestUsedVersion", deviceAppPerformance.isLatestUsedVersion);
    writer.writeNumberValue("isMostUsedVersion", deviceAppPerformance.isMostUsedVersion);
    writer.writeDateValue("lastUpdatedDateTime", deviceAppPerformance.lastUpdatedDateTime);
    writer.writeStringValue("tenantDisplayName", deviceAppPerformance.tenantDisplayName);
    writer.writeStringValue("tenantId", deviceAppPerformance.tenantId);
    writer.writeNumberValue("totalAppCrashCount", deviceAppPerformance.totalAppCrashCount);
    writer.writeNumberValue("totalAppFreezeCount", deviceAppPerformance.totalAppFreezeCount);
}
/**
 * Serializes information the current object
 * @param DeviceAppPerformanceCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeDeviceAppPerformanceCollectionResponse(writer, deviceAppPerformanceCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!deviceAppPerformanceCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, deviceAppPerformanceCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", deviceAppPerformanceCollectionResponse.value, serializeDeviceAppPerformance);
}
/**
 * Serializes information the current object
 * @param DeviceCompliancePolicySettingStateSummary The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeDeviceCompliancePolicySettingStateSummary(writer, deviceCompliancePolicySettingStateSummary = {}, isSerializingDerivedType = false) {
    if (!deviceCompliancePolicySettingStateSummary || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, deviceCompliancePolicySettingStateSummary, isSerializingDerivedType);
    writer.writeNumberValue("conflictDeviceCount", deviceCompliancePolicySettingStateSummary.conflictDeviceCount);
    writer.writeNumberValue("errorDeviceCount", deviceCompliancePolicySettingStateSummary.errorDeviceCount);
    writer.writeNumberValue("failedDeviceCount", deviceCompliancePolicySettingStateSummary.failedDeviceCount);
    writer.writeStringValue("intuneAccountId", deviceCompliancePolicySettingStateSummary.intuneAccountId);
    writer.writeStringValue("intuneSettingId", deviceCompliancePolicySettingStateSummary.intuneSettingId);
    writer.writeDateValue("lastRefreshedDateTime", deviceCompliancePolicySettingStateSummary.lastRefreshedDateTime);
    writer.writeNumberValue("notApplicableDeviceCount", deviceCompliancePolicySettingStateSummary.notApplicableDeviceCount);
    writer.writeNumberValue("pendingDeviceCount", deviceCompliancePolicySettingStateSummary.pendingDeviceCount);
    writer.writeStringValue("policyType", deviceCompliancePolicySettingStateSummary.policyType);
    writer.writeStringValue("settingName", deviceCompliancePolicySettingStateSummary.settingName);
    writer.writeNumberValue("succeededDeviceCount", deviceCompliancePolicySettingStateSummary.succeededDeviceCount);
    writer.writeStringValue("tenantDisplayName", deviceCompliancePolicySettingStateSummary.tenantDisplayName);
    writer.writeStringValue("tenantId", deviceCompliancePolicySettingStateSummary.tenantId);
}
/**
 * Serializes information the current object
 * @param DeviceCompliancePolicySettingStateSummaryCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeDeviceCompliancePolicySettingStateSummaryCollectionResponse(writer, deviceCompliancePolicySettingStateSummaryCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!deviceCompliancePolicySettingStateSummaryCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, deviceCompliancePolicySettingStateSummaryCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", deviceCompliancePolicySettingStateSummaryCollectionResponse.value, serializeDeviceCompliancePolicySettingStateSummary);
}
/**
 * Serializes information the current object
 * @param DeviceHealthStatus The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeDeviceHealthStatus(writer, deviceHealthStatus = {}, isSerializingDerivedType = false) {
    if (!deviceHealthStatus || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, deviceHealthStatus, isSerializingDerivedType);
    writer.writeNumberValue("blueScreenCount", deviceHealthStatus.blueScreenCount);
    writer.writeNumberValue("bootTotalDurationInSeconds", deviceHealthStatus.bootTotalDurationInSeconds);
    writer.writeStringValue("deviceId", deviceHealthStatus.deviceId);
    writer.writeStringValue("deviceMake", deviceHealthStatus.deviceMake);
    writer.writeStringValue("deviceModel", deviceHealthStatus.deviceModel);
    writer.writeStringValue("deviceName", deviceHealthStatus.deviceName);
    writer.writeStringValue("healthStatus", deviceHealthStatus.healthStatus);
    writer.writeDateValue("lastUpdatedDateTime", deviceHealthStatus.lastUpdatedDateTime);
    writer.writeStringValue("osVersion", deviceHealthStatus.osVersion);
    writer.writeStringValue("primaryDiskType", deviceHealthStatus.primaryDiskType);
    writer.writeNumberValue("restartCount", deviceHealthStatus.restartCount);
    writer.writeNumberValue("startupPerformanceScore", deviceHealthStatus.startupPerformanceScore);
    writer.writeStringValue("tenantDisplayName", deviceHealthStatus.tenantDisplayName);
    writer.writeStringValue("tenantId", deviceHealthStatus.tenantId);
    writer.writeStringValue("topProcesses", deviceHealthStatus.topProcesses);
}
/**
 * Serializes information the current object
 * @param DeviceHealthStatusCollectionResponse The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeDeviceHealthStatusCollectionResponse(writer, deviceHealthStatusCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!deviceHealthStatusCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, deviceHealthStatusCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", deviceHealthStatusCollectionResponse.value, serializeDeviceHealthStatus);
}
/**
 * Serializes information the current object
 * @param Email The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeEmail(writer, email = {}, isSerializingDerivedType = false) {
    if (!email || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("emailAddress", email.emailAddress);
    writer.writeStringValue("@odata.type", email.odataType);
    writer.writeAdditionalData(email.additionalData);
}
/**
 * Serializes information the current object
 * @param GraphAPIErrorDetails The instance to serialize from.
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeGraphAPIErrorDetails(writer, graphAPIErrorDetails = {}, isSerializingDerivedType = false) {
    if (!graphAPIErrorDetails || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("code", graphAPIErrorDetails.code);
    writer.writeStringValue("message", graphAPIErrorDetails.message);
    writer.writeStringValue("@odata.type", graphAPIErrorDetails.odataType);
    writer.writeAdditionalData(graphAPIErrorDetails.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedDeviceCompliance The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedDeviceCompliance(writer, managedDeviceCompliance = {}, isSerializingDerivedType = false) {
    if (!managedDeviceCompliance || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedDeviceCompliance, isSerializingDerivedType);
    writer.writeStringValue("complianceStatus", managedDeviceCompliance.complianceStatus);
    writer.writeStringValue("deviceType", managedDeviceCompliance.deviceType);
    writer.writeDateValue("inGracePeriodUntilDateTime", managedDeviceCompliance.inGracePeriodUntilDateTime);
    writer.writeDateValue("lastRefreshedDateTime", managedDeviceCompliance.lastRefreshedDateTime);
    writer.writeDateValue("lastSyncDateTime", managedDeviceCompliance.lastSyncDateTime);
    writer.writeStringValue("managedDeviceId", managedDeviceCompliance.managedDeviceId);
    writer.writeStringValue("managedDeviceName", managedDeviceCompliance.managedDeviceName);
    writer.writeStringValue("manufacturer", managedDeviceCompliance.manufacturer);
    writer.writeStringValue("model", managedDeviceCompliance.model);
    writer.writeStringValue("osDescription", managedDeviceCompliance.osDescription);
    writer.writeStringValue("osVersion", managedDeviceCompliance.osVersion);
    writer.writeStringValue("ownerType", managedDeviceCompliance.ownerType);
    writer.writeStringValue("tenantDisplayName", managedDeviceCompliance.tenantDisplayName);
    writer.writeStringValue("tenantId", managedDeviceCompliance.tenantId);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedDeviceComplianceCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedDeviceComplianceCollectionResponse(writer, managedDeviceComplianceCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedDeviceComplianceCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedDeviceComplianceCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedDeviceComplianceCollectionResponse.value, serializeManagedDeviceCompliance);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedDeviceComplianceTrend The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedDeviceComplianceTrend(writer, managedDeviceComplianceTrend = {}, isSerializingDerivedType = false) {
    if (!managedDeviceComplianceTrend || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedDeviceComplianceTrend, isSerializingDerivedType);
    writer.writeNumberValue("compliantDeviceCount", managedDeviceComplianceTrend.compliantDeviceCount);
    writer.writeNumberValue("configManagerDeviceCount", managedDeviceComplianceTrend.configManagerDeviceCount);
    writer.writeStringValue("countDateTime", managedDeviceComplianceTrend.countDateTime);
    writer.writeNumberValue("errorDeviceCount", managedDeviceComplianceTrend.errorDeviceCount);
    writer.writeNumberValue("inGracePeriodDeviceCount", managedDeviceComplianceTrend.inGracePeriodDeviceCount);
    writer.writeNumberValue("noncompliantDeviceCount", managedDeviceComplianceTrend.noncompliantDeviceCount);
    writer.writeStringValue("tenantDisplayName", managedDeviceComplianceTrend.tenantDisplayName);
    writer.writeStringValue("tenantId", managedDeviceComplianceTrend.tenantId);
    writer.writeNumberValue("unknownDeviceCount", managedDeviceComplianceTrend.unknownDeviceCount);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedDeviceComplianceTrendCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedDeviceComplianceTrendCollectionResponse(writer, managedDeviceComplianceTrendCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedDeviceComplianceTrendCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedDeviceComplianceTrendCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedDeviceComplianceTrendCollectionResponse.value, serializeManagedDeviceComplianceTrend);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenant The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenant(writer, managedTenant = {}, isSerializingDerivedType = false) {
    if (!managedTenant || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenant, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("aggregatedPolicyCompliances", managedTenant.aggregatedPolicyCompliances, serializeAggregatedPolicyCompliance);
    writer.writeCollectionOfObjectValues("appPerformances", managedTenant.appPerformances, serializeAppPerformance);
    writer.writeCollectionOfObjectValues("auditEvents", managedTenant.auditEvents, serializeAuditEvent);
    writer.writeCollectionOfObjectValues("cloudPcConnections", managedTenant.cloudPcConnections, serializeCloudPcConnection);
    writer.writeCollectionOfObjectValues("cloudPcDevices", managedTenant.cloudPcDevices, serializeCloudPcDevice);
    writer.writeCollectionOfObjectValues("cloudPcsOverview", managedTenant.cloudPcsOverview, serializeCloudPcOverview);
    writer.writeCollectionOfObjectValues("conditionalAccessPolicyCoverages", managedTenant.conditionalAccessPolicyCoverages, serializeConditionalAccessPolicyCoverage);
    writer.writeCollectionOfObjectValues("credentialUserRegistrationsSummaries", managedTenant.credentialUserRegistrationsSummaries, serializeCredentialUserRegistrationsSummary);
    writer.writeCollectionOfObjectValues("deviceAppPerformances", managedTenant.deviceAppPerformances, serializeDeviceAppPerformance);
    writer.writeCollectionOfObjectValues("deviceCompliancePolicySettingStateSummaries", managedTenant.deviceCompliancePolicySettingStateSummaries, serializeDeviceCompliancePolicySettingStateSummary);
    writer.writeCollectionOfObjectValues("deviceHealthStatuses", managedTenant.deviceHealthStatuses, serializeDeviceHealthStatus);
    writer.writeCollectionOfObjectValues("managedDeviceCompliances", managedTenant.managedDeviceCompliances, serializeManagedDeviceCompliance);
    writer.writeCollectionOfObjectValues("managedDeviceComplianceTrends", managedTenant.managedDeviceComplianceTrends, serializeManagedDeviceComplianceTrend);
    writer.writeCollectionOfObjectValues("managedTenantAlertLogs", managedTenant.managedTenantAlertLogs, serializeManagedTenantAlertLog);
    writer.writeCollectionOfObjectValues("managedTenantAlertRuleDefinitions", managedTenant.managedTenantAlertRuleDefinitions, serializeManagedTenantAlertRuleDefinition);
    writer.writeCollectionOfObjectValues("managedTenantAlertRules", managedTenant.managedTenantAlertRules, serializeManagedTenantAlertRule);
    writer.writeCollectionOfObjectValues("managedTenantAlerts", managedTenant.managedTenantAlerts, serializeManagedTenantAlert);
    writer.writeCollectionOfObjectValues("managedTenantApiNotifications", managedTenant.managedTenantApiNotifications, serializeManagedTenantApiNotification);
    writer.writeCollectionOfObjectValues("managedTenantEmailNotifications", managedTenant.managedTenantEmailNotifications, serializeManagedTenantEmailNotification);
    writer.writeCollectionOfObjectValues("managedTenantTicketingEndpoints", managedTenant.managedTenantTicketingEndpoints, serializeManagedTenantTicketingEndpoint);
    writer.writeCollectionOfObjectValues("managementActions", managedTenant.managementActions, serializeManagementAction);
    writer.writeCollectionOfObjectValues("managementActionTenantDeploymentStatuses", managedTenant.managementActionTenantDeploymentStatuses, serializeManagementActionTenantDeploymentStatus);
    writer.writeCollectionOfObjectValues("managementIntents", managedTenant.managementIntents, serializeManagementIntent);
    writer.writeCollectionOfObjectValues("managementTemplateCollections", managedTenant.managementTemplateCollections, serializeManagementTemplateCollection);
    writer.writeCollectionOfObjectValues("managementTemplateCollectionTenantSummaries", managedTenant.managementTemplateCollectionTenantSummaries, serializeManagementTemplateCollectionTenantSummary);
    writer.writeCollectionOfObjectValues("managementTemplates", managedTenant.managementTemplates, serializeManagementTemplate);
    writer.writeCollectionOfObjectValues("managementTemplateSteps", managedTenant.managementTemplateSteps, serializeManagementTemplateStep);
    writer.writeCollectionOfObjectValues("managementTemplateStepTenantSummaries", managedTenant.managementTemplateStepTenantSummaries, serializeManagementTemplateStepTenantSummary);
    writer.writeCollectionOfObjectValues("managementTemplateStepVersions", managedTenant.managementTemplateStepVersions, serializeManagementTemplateStepVersion);
    writer.writeCollectionOfObjectValues("myRoles", managedTenant.myRoles, serializeMyRole);
    writer.writeCollectionOfObjectValues("tenantGroups", managedTenant.tenantGroups, serializeTenantGroup);
    writer.writeCollectionOfObjectValues("tenants", managedTenant.tenants, serializeTenant);
    writer.writeCollectionOfObjectValues("tenantsCustomizedInformation", managedTenant.tenantsCustomizedInformation, serializeTenantCustomizedInformation);
    writer.writeCollectionOfObjectValues("tenantsDetailedInformation", managedTenant.tenantsDetailedInformation, serializeTenantDetailedInformation);
    writer.writeCollectionOfObjectValues("tenantTags", managedTenant.tenantTags, serializeTenantTag);
    writer.writeCollectionOfObjectValues("windowsDeviceMalwareStates", managedTenant.windowsDeviceMalwareStates, serializeWindowsDeviceMalwareState);
    writer.writeCollectionOfObjectValues("windowsProtectionStates", managedTenant.windowsProtectionStates, serializeWindowsProtectionState);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlert The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlert(writer, managedTenantAlert = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlert || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenantAlert, isSerializingDerivedType);
    writer.writeObjectValue("alertData", managedTenantAlert.alertData, serializeAlertData);
    writer.writeCollectionOfObjectValues("alertDataReferenceStrings", managedTenantAlert.alertDataReferenceStrings, serializeAlertDataReferenceString);
    writer.writeCollectionOfObjectValues("alertLogs", managedTenantAlert.alertLogs, serializeManagedTenantAlertLog);
    writer.writeObjectValue("alertRule", managedTenantAlert.alertRule, serializeManagedTenantAlertRule);
    writer.writeStringValue("alertRuleDisplayName", managedTenantAlert.alertRuleDisplayName);
    writer.writeCollectionOfObjectValues("apiNotifications", managedTenantAlert.apiNotifications, serializeManagedTenantApiNotification);
    writer.writeStringValue("assignedToUserId", managedTenantAlert.assignedToUserId);
    writer.writeNumberValue("correlationCount", managedTenantAlert.correlationCount);
    writer.writeStringValue("correlationId", managedTenantAlert.correlationId);
    writer.writeStringValue("createdByUserId", managedTenantAlert.createdByUserId);
    writer.writeDateValue("createdDateTime", managedTenantAlert.createdDateTime);
    writer.writeCollectionOfObjectValues("emailNotifications", managedTenantAlert.emailNotifications, serializeManagedTenantEmailNotification);
    writer.writeStringValue("lastActionByUserId", managedTenantAlert.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managedTenantAlert.lastActionDateTime);
    writer.writeStringValue("message", managedTenantAlert.message);
    writer.writeEnumValue("severity", managedTenantAlert.severity);
    writer.writeEnumValue("status", managedTenantAlert.status);
    writer.writeStringValue("tenantId", managedTenantAlert.tenantId);
    writer.writeStringValue("title", managedTenantAlert.title);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlertCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlertCollectionResponse(writer, managedTenantAlertCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlertCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedTenantAlertCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedTenantAlertCollectionResponse.value, serializeManagedTenantAlert);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlertLog The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlertLog(writer, managedTenantAlertLog = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlertLog || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenantAlertLog, isSerializingDerivedType);
    writer.writeObjectValue("alert", managedTenantAlertLog.alert, serializeManagedTenantAlert);
    writer.writeObjectValue("content", managedTenantAlertLog.content, serializeAlertLogContent);
    writer.writeStringValue("createdByUserId", managedTenantAlertLog.createdByUserId);
    writer.writeDateValue("createdDateTime", managedTenantAlertLog.createdDateTime);
    writer.writeStringValue("lastActionByUserId", managedTenantAlertLog.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managedTenantAlertLog.lastActionDateTime);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlertLogCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlertLogCollectionResponse(writer, managedTenantAlertLogCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlertLogCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedTenantAlertLogCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedTenantAlertLogCollectionResponse.value, serializeManagedTenantAlertLog);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlertRule The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlertRule(writer, managedTenantAlertRule = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlertRule || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenantAlertRule, isSerializingDerivedType);
    writer.writeStringValue("alertDisplayName", managedTenantAlertRule.alertDisplayName);
    writer.writeCollectionOfObjectValues("alerts", managedTenantAlertRule.alerts, serializeManagedTenantAlert);
    writer.writeNumberValue("alertTTL", managedTenantAlertRule.alertTTL);
    writer.writeStringValue("createdByUserId", managedTenantAlertRule.createdByUserId);
    writer.writeDateValue("createdDateTime", managedTenantAlertRule.createdDateTime);
    writer.writeStringValue("description", managedTenantAlertRule.description);
    writer.writeStringValue("displayName", managedTenantAlertRule.displayName);
    writer.writeStringValue("lastActionByUserId", managedTenantAlertRule.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managedTenantAlertRule.lastActionDateTime);
    writer.writeDateValue("lastRunDateTime", managedTenantAlertRule.lastRunDateTime);
    writer.writeEnumValue("notificationFinalDestinations", managedTenantAlertRule.notificationFinalDestinations);
    writer.writeObjectValue("ruleDefinition", managedTenantAlertRule.ruleDefinition, serializeManagedTenantAlertRuleDefinition);
    writer.writeEnumValue("severity", managedTenantAlertRule.severity);
    writer.writeCollectionOfObjectValues("targets", managedTenantAlertRule.targets, serializeNotificationTarget);
    writer.writeCollectionOfObjectValues("tenantIds", managedTenantAlertRule.tenantIds, serializeTenantInfo);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlertRuleCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlertRuleCollectionResponse(writer, managedTenantAlertRuleCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlertRuleCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedTenantAlertRuleCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedTenantAlertRuleCollectionResponse.value, serializeManagedTenantAlertRule);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlertRuleDefinition The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlertRuleDefinition(writer, managedTenantAlertRuleDefinition = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlertRuleDefinition || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenantAlertRuleDefinition, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("alertRules", managedTenantAlertRuleDefinition.alertRules, serializeManagedTenantAlertRule);
    writer.writeStringValue("createdByUserId", managedTenantAlertRuleDefinition.createdByUserId);
    writer.writeDateValue("createdDateTime", managedTenantAlertRuleDefinition.createdDateTime);
    writer.writeObjectValue("definitionTemplate", managedTenantAlertRuleDefinition.definitionTemplate, serializeAlertRuleDefinitionTemplate);
    writer.writeStringValue("displayName", managedTenantAlertRuleDefinition.displayName);
    writer.writeStringValue("lastActionByUserId", managedTenantAlertRuleDefinition.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managedTenantAlertRuleDefinition.lastActionDateTime);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantAlertRuleDefinitionCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantAlertRuleDefinitionCollectionResponse(writer, managedTenantAlertRuleDefinitionCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedTenantAlertRuleDefinitionCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedTenantAlertRuleDefinitionCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedTenantAlertRuleDefinitionCollectionResponse.value, serializeManagedTenantAlertRuleDefinition);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantApiNotification The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantApiNotification(writer, managedTenantApiNotification = {}, isSerializingDerivedType = false) {
    if (!managedTenantApiNotification || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenantApiNotification, isSerializingDerivedType);
    writer.writeObjectValue("alert", managedTenantApiNotification.alert, serializeManagedTenantAlert);
    writer.writeStringValue("createdByUserId", managedTenantApiNotification.createdByUserId);
    writer.writeDateValue("createdDateTime", managedTenantApiNotification.createdDateTime);
    writer.writeBooleanValue("isAcknowledged", managedTenantApiNotification.isAcknowledged);
    writer.writeStringValue("lastActionByUserId", managedTenantApiNotification.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managedTenantApiNotification.lastActionDateTime);
    writer.writeStringValue("message", managedTenantApiNotification.message);
    writer.writeStringValue("title", managedTenantApiNotification.title);
    writer.writeStringValue("userId", managedTenantApiNotification.userId);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantApiNotificationCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantApiNotificationCollectionResponse(writer, managedTenantApiNotificationCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedTenantApiNotificationCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedTenantApiNotificationCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedTenantApiNotificationCollectionResponse.value, serializeManagedTenantApiNotification);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantEmailNotification The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantEmailNotification(writer, managedTenantEmailNotification = {}, isSerializingDerivedType = false) {
    if (!managedTenantEmailNotification || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenantEmailNotification, isSerializingDerivedType);
    writer.writeObjectValue("alert", managedTenantEmailNotification.alert, serializeManagedTenantAlert);
    writer.writeStringValue("createdByUserId", managedTenantEmailNotification.createdByUserId);
    writer.writeDateValue("createdDateTime", managedTenantEmailNotification.createdDateTime);
    writer.writeCollectionOfObjectValues("emailAddresses", managedTenantEmailNotification.emailAddresses, serializeEmail);
    writer.writeStringValue("emailBody", managedTenantEmailNotification.emailBody);
    writer.writeStringValue("lastActionByUserId", managedTenantEmailNotification.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managedTenantEmailNotification.lastActionDateTime);
    writer.writeStringValue("subject", managedTenantEmailNotification.subject);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantEmailNotificationCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantEmailNotificationCollectionResponse(writer, managedTenantEmailNotificationCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedTenantEmailNotificationCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedTenantEmailNotificationCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedTenantEmailNotificationCollectionResponse.value, serializeManagedTenantEmailNotification);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantTicketingEndpoint The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantTicketingEndpoint(writer, managedTenantTicketingEndpoint = {}, isSerializingDerivedType = false) {
    if (!managedTenantTicketingEndpoint || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managedTenantTicketingEndpoint, isSerializingDerivedType);
    writer.writeStringValue("createdByUserId", managedTenantTicketingEndpoint.createdByUserId);
    writer.writeDateValue("createdDateTime", managedTenantTicketingEndpoint.createdDateTime);
    writer.writeStringValue("displayName", managedTenantTicketingEndpoint.displayName);
    writer.writeStringValue("emailAddress", managedTenantTicketingEndpoint.emailAddress);
    writer.writeStringValue("lastActionByUserId", managedTenantTicketingEndpoint.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managedTenantTicketingEndpoint.lastActionDateTime);
    writer.writeStringValue("phoneNumber", managedTenantTicketingEndpoint.phoneNumber);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagedTenantTicketingEndpointCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagedTenantTicketingEndpointCollectionResponse(writer, managedTenantTicketingEndpointCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managedTenantTicketingEndpointCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managedTenantTicketingEndpointCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managedTenantTicketingEndpointCollectionResponse.value, serializeManagedTenantTicketingEndpoint);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementAction The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementAction(writer, managementAction = {}, isSerializingDerivedType = false) {
    if (!managementAction || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementAction, isSerializingDerivedType);
    writer.writeEnumValue("category", managementAction.category);
    writer.writeStringValue("description", managementAction.description);
    writer.writeStringValue("displayName", managementAction.displayName);
    writer.writeStringValue("referenceTemplateId", managementAction.referenceTemplateId);
    writer.writeNumberValue("referenceTemplateVersion", managementAction.referenceTemplateVersion);
    writer.writeCollectionOfObjectValues("workloadActions", managementAction.workloadActions, serializeWorkloadAction);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementActionCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementActionCollectionResponse(writer, managementActionCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementActionCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementActionCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementActionCollectionResponse.value, serializeManagementAction);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementActionDeploymentStatus The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementActionDeploymentStatus(writer, managementActionDeploymentStatus = {}, isSerializingDerivedType = false) {
    if (!managementActionDeploymentStatus || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("managementActionId", managementActionDeploymentStatus.managementActionId);
    writer.writeStringValue("managementTemplateId", managementActionDeploymentStatus.managementTemplateId);
    writer.writeNumberValue("managementTemplateVersion", managementActionDeploymentStatus.managementTemplateVersion);
    writer.writeStringValue("@odata.type", managementActionDeploymentStatus.odataType);
    writer.writeEnumValue("status", managementActionDeploymentStatus.status);
    writer.writeCollectionOfObjectValues("workloadActionDeploymentStatuses", managementActionDeploymentStatus.workloadActionDeploymentStatuses, serializeWorkloadActionDeploymentStatus);
    writer.writeAdditionalData(managementActionDeploymentStatus.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementActionInfo The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementActionInfo(writer, managementActionInfo = {}, isSerializingDerivedType = false) {
    if (!managementActionInfo || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("managementActionId", managementActionInfo.managementActionId);
    writer.writeStringValue("managementTemplateId", managementActionInfo.managementTemplateId);
    writer.writeNumberValue("managementTemplateVersion", managementActionInfo.managementTemplateVersion);
    writer.writeStringValue("@odata.type", managementActionInfo.odataType);
    writer.writeAdditionalData(managementActionInfo.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementActionTenantDeploymentStatus The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementActionTenantDeploymentStatus(writer, managementActionTenantDeploymentStatus = {}, isSerializingDerivedType = false) {
    if (!managementActionTenantDeploymentStatus || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementActionTenantDeploymentStatus, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("statuses", managementActionTenantDeploymentStatus.statuses, serializeManagementActionDeploymentStatus);
    writer.writeStringValue("tenantGroupId", managementActionTenantDeploymentStatus.tenantGroupId);
    writer.writeStringValue("tenantId", managementActionTenantDeploymentStatus.tenantId);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementActionTenantDeploymentStatusCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementActionTenantDeploymentStatusCollectionResponse(writer, managementActionTenantDeploymentStatusCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementActionTenantDeploymentStatusCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementActionTenantDeploymentStatusCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementActionTenantDeploymentStatusCollectionResponse.value, serializeManagementActionTenantDeploymentStatus);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementIntent The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementIntent(writer, managementIntent = {}, isSerializingDerivedType = false) {
    if (!managementIntent || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementIntent, isSerializingDerivedType);
    writer.writeStringValue("displayName", managementIntent.displayName);
    writer.writeBooleanValue("isGlobal", managementIntent.isGlobal);
    writer.writeCollectionOfObjectValues("managementTemplates", managementIntent.managementTemplates, serializeManagementTemplateDetailedInfo);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementIntentCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementIntentCollectionResponse(writer, managementIntentCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementIntentCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementIntentCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementIntentCollectionResponse.value, serializeManagementIntent);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementIntentInfo The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementIntentInfo(writer, managementIntentInfo = {}, isSerializingDerivedType = false) {
    if (!managementIntentInfo || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("managementIntentDisplayName", managementIntentInfo.managementIntentDisplayName);
    writer.writeStringValue("managementIntentId", managementIntentInfo.managementIntentId);
    writer.writeCollectionOfObjectValues("managementTemplates", managementIntentInfo.managementTemplates, serializeManagementTemplateDetailedInfo);
    writer.writeStringValue("@odata.type", managementIntentInfo.odataType);
    writer.writeAdditionalData(managementIntentInfo.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplate The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplate(writer, managementTemplate = {}, isSerializingDerivedType = false) {
    if (!managementTemplate || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementTemplate, isSerializingDerivedType);
    writer.writeEnumValue("category", managementTemplate.category);
    writer.writeStringValue("createdByUserId", managementTemplate.createdByUserId);
    writer.writeDateValue("createdDateTime", managementTemplate.createdDateTime);
    writer.writeStringValue("description", managementTemplate.description);
    writer.writeStringValue("displayName", managementTemplate.displayName);
    writer.writeCollectionOfObjectValues("informationLinks", managementTemplate.informationLinks, serializeActionUrl);
    writer.writeStringValue("lastActionByUserId", managementTemplate.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managementTemplate.lastActionDateTime);
    writer.writeCollectionOfObjectValues("managementTemplateCollections", managementTemplate.managementTemplateCollections, serializeManagementTemplateCollection);
    writer.writeCollectionOfObjectValues("managementTemplateSteps", managementTemplate.managementTemplateSteps, serializeManagementTemplateStep);
    writer.writeCollectionOfObjectValues("parameters", managementTemplate.parameters, serializeTemplateParameter);
    writer.writeNumberValue("priority", managementTemplate.priority);
    writer.writeEnumValue("provider", managementTemplate.provider);
    writer.writeStringValue("userImpact", managementTemplate.userImpact);
    writer.writeNumberValue("version", managementTemplate.version);
    writer.writeCollectionOfObjectValues("workloadActions", managementTemplate.workloadActions, serializeWorkloadAction);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateCollection The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateCollection(writer, managementTemplateCollection = {}, isSerializingDerivedType = false) {
    if (!managementTemplateCollection || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementTemplateCollection, isSerializingDerivedType);
    writer.writeStringValue("createdByUserId", managementTemplateCollection.createdByUserId);
    writer.writeDateValue("createdDateTime", managementTemplateCollection.createdDateTime);
    writer.writeStringValue("description", managementTemplateCollection.description);
    writer.writeStringValue("displayName", managementTemplateCollection.displayName);
    writer.writeStringValue("lastActionByUserId", managementTemplateCollection.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managementTemplateCollection.lastActionDateTime);
    writer.writeCollectionOfObjectValues("managementTemplates", managementTemplateCollection.managementTemplates, serializeManagementTemplate);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateCollectionCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateCollectionCollectionResponse(writer, managementTemplateCollectionCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementTemplateCollectionCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementTemplateCollectionCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementTemplateCollectionCollectionResponse.value, serializeManagementTemplateCollection);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateCollectionResponse(writer, managementTemplateCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementTemplateCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementTemplateCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementTemplateCollectionResponse.value, serializeManagementTemplate);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateCollectionTenantSummary The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateCollectionTenantSummary(writer, managementTemplateCollectionTenantSummary = {}, isSerializingDerivedType = false) {
    if (!managementTemplateCollectionTenantSummary || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementTemplateCollectionTenantSummary, isSerializingDerivedType);
    writer.writeNumberValue("completeStepsCount", managementTemplateCollectionTenantSummary.completeStepsCount);
    writer.writeNumberValue("completeUsersCount", managementTemplateCollectionTenantSummary.completeUsersCount);
    writer.writeStringValue("createdByUserId", managementTemplateCollectionTenantSummary.createdByUserId);
    writer.writeDateValue("createdDateTime", managementTemplateCollectionTenantSummary.createdDateTime);
    writer.writeNumberValue("dismissedStepsCount", managementTemplateCollectionTenantSummary.dismissedStepsCount);
    writer.writeNumberValue("excludedUsersCount", managementTemplateCollectionTenantSummary.excludedUsersCount);
    writer.writeNumberValue("excludedUsersDistinctCount", managementTemplateCollectionTenantSummary.excludedUsersDistinctCount);
    writer.writeNumberValue("incompleteStepsCount", managementTemplateCollectionTenantSummary.incompleteStepsCount);
    writer.writeNumberValue("incompleteUsersCount", managementTemplateCollectionTenantSummary.incompleteUsersCount);
    writer.writeNumberValue("ineligibleStepsCount", managementTemplateCollectionTenantSummary.ineligibleStepsCount);
    writer.writeBooleanValue("isComplete", managementTemplateCollectionTenantSummary.isComplete);
    writer.writeStringValue("lastActionByUserId", managementTemplateCollectionTenantSummary.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managementTemplateCollectionTenantSummary.lastActionDateTime);
    writer.writeStringValue("managementTemplateCollectionDisplayName", managementTemplateCollectionTenantSummary.managementTemplateCollectionDisplayName);
    writer.writeStringValue("managementTemplateCollectionId", managementTemplateCollectionTenantSummary.managementTemplateCollectionId);
    writer.writeNumberValue("regressedStepsCount", managementTemplateCollectionTenantSummary.regressedStepsCount);
    writer.writeNumberValue("regressedUsersCount", managementTemplateCollectionTenantSummary.regressedUsersCount);
    writer.writeStringValue("tenantId", managementTemplateCollectionTenantSummary.tenantId);
    writer.writeNumberValue("unlicensedUsersCount", managementTemplateCollectionTenantSummary.unlicensedUsersCount);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateCollectionTenantSummaryCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateCollectionTenantSummaryCollectionResponse(writer, managementTemplateCollectionTenantSummaryCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementTemplateCollectionTenantSummaryCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementTemplateCollectionTenantSummaryCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementTemplateCollectionTenantSummaryCollectionResponse.value, serializeManagementTemplateCollectionTenantSummary);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateDetailedInfo The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateDetailedInfo(writer, managementTemplateDetailedInfo = {}, isSerializingDerivedType = false) {
    if (!managementTemplateDetailedInfo || isSerializingDerivedType) {
        return;
    }
    writer.writeEnumValue("category", managementTemplateDetailedInfo.category);
    writer.writeStringValue("displayName", managementTemplateDetailedInfo.displayName);
    writer.writeStringValue("managementTemplateId", managementTemplateDetailedInfo.managementTemplateId);
    writer.writeStringValue("@odata.type", managementTemplateDetailedInfo.odataType);
    writer.writeNumberValue("version", managementTemplateDetailedInfo.version);
    writer.writeAdditionalData(managementTemplateDetailedInfo.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStep The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStep(writer, managementTemplateStep = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStep || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementTemplateStep, isSerializingDerivedType);
    writer.writeObjectValue("acceptedVersion", managementTemplateStep.acceptedVersion, serializeManagementTemplateStepVersion);
    writer.writeEnumValue("category", managementTemplateStep.category);
    writer.writeStringValue("createdByUserId", managementTemplateStep.createdByUserId);
    writer.writeDateValue("createdDateTime", managementTemplateStep.createdDateTime);
    writer.writeStringValue("description", managementTemplateStep.description);
    writer.writeStringValue("displayName", managementTemplateStep.displayName);
    writer.writeCollectionOfObjectValues("informationLinks", managementTemplateStep.informationLinks, serializeActionUrl);
    writer.writeStringValue("lastActionByUserId", managementTemplateStep.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managementTemplateStep.lastActionDateTime);
    writer.writeObjectValue("managementTemplate", managementTemplateStep.managementTemplate, serializeManagementTemplate);
    writer.writeObjectValue("portalLink", managementTemplateStep.portalLink, serializeActionUrl);
    writer.writeNumberValue("priority", managementTemplateStep.priority);
    writer.writeStringValue("userImpact", managementTemplateStep.userImpact);
    writer.writeCollectionOfObjectValues("versions", managementTemplateStep.versions, serializeManagementTemplateStepVersion);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStepCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStepCollectionResponse(writer, managementTemplateStepCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStepCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementTemplateStepCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementTemplateStepCollectionResponse.value, serializeManagementTemplateStep);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStepDeployment The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStepDeployment(writer, managementTemplateStepDeployment = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStepDeployment || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementTemplateStepDeployment, isSerializingDerivedType);
    writer.writeStringValue("createdByUserId", managementTemplateStepDeployment.createdByUserId);
    writer.writeDateValue("createdDateTime", managementTemplateStepDeployment.createdDateTime);
    writer.writeObjectValue("error", managementTemplateStepDeployment.errorEscaped, serializeGraphAPIErrorDetails);
    writer.writeStringValue("lastActionByUserId", managementTemplateStepDeployment.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managementTemplateStepDeployment.lastActionDateTime);
    writer.writeEnumValue("status", managementTemplateStepDeployment.status);
    writer.writeObjectValue("templateStepVersion", managementTemplateStepDeployment.templateStepVersion, serializeManagementTemplateStepVersion);
    writer.writeStringValue("tenantId", managementTemplateStepDeployment.tenantId);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStepDeploymentCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStepDeploymentCollectionResponse(writer, managementTemplateStepDeploymentCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStepDeploymentCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementTemplateStepDeploymentCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementTemplateStepDeploymentCollectionResponse.value, serializeManagementTemplateStepDeployment);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStepTenantSummary The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStepTenantSummary(writer, managementTemplateStepTenantSummary = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStepTenantSummary || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementTemplateStepTenantSummary, isSerializingDerivedType);
    writer.writeNumberValue("assignedTenantsCount", managementTemplateStepTenantSummary.assignedTenantsCount);
    writer.writeNumberValue("compliantTenantsCount", managementTemplateStepTenantSummary.compliantTenantsCount);
    writer.writeStringValue("createdByUserId", managementTemplateStepTenantSummary.createdByUserId);
    writer.writeDateValue("createdDateTime", managementTemplateStepTenantSummary.createdDateTime);
    writer.writeNumberValue("dismissedTenantsCount", managementTemplateStepTenantSummary.dismissedTenantsCount);
    writer.writeNumberValue("ineligibleTenantsCount", managementTemplateStepTenantSummary.ineligibleTenantsCount);
    writer.writeStringValue("lastActionByUserId", managementTemplateStepTenantSummary.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managementTemplateStepTenantSummary.lastActionDateTime);
    writer.writeStringValue("managementTemplateCollectionDisplayName", managementTemplateStepTenantSummary.managementTemplateCollectionDisplayName);
    writer.writeStringValue("managementTemplateCollectionId", managementTemplateStepTenantSummary.managementTemplateCollectionId);
    writer.writeStringValue("managementTemplateDisplayName", managementTemplateStepTenantSummary.managementTemplateDisplayName);
    writer.writeStringValue("managementTemplateId", managementTemplateStepTenantSummary.managementTemplateId);
    writer.writeStringValue("managementTemplateStepDisplayName", managementTemplateStepTenantSummary.managementTemplateStepDisplayName);
    writer.writeStringValue("managementTemplateStepId", managementTemplateStepTenantSummary.managementTemplateStepId);
    writer.writeNumberValue("notCompliantTenantsCount", managementTemplateStepTenantSummary.notCompliantTenantsCount);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStepTenantSummaryCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStepTenantSummaryCollectionResponse(writer, managementTemplateStepTenantSummaryCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStepTenantSummaryCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementTemplateStepTenantSummaryCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementTemplateStepTenantSummaryCollectionResponse.value, serializeManagementTemplateStepTenantSummary);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStepVersion The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStepVersion(writer, managementTemplateStepVersion = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStepVersion || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, managementTemplateStepVersion, isSerializingDerivedType);
    writer.writeObjectValue("acceptedFor", managementTemplateStepVersion.acceptedFor, serializeManagementTemplateStep);
    writer.writeStringValue("contentMarkdown", managementTemplateStepVersion.contentMarkdown);
    writer.writeStringValue("createdByUserId", managementTemplateStepVersion.createdByUserId);
    writer.writeDateValue("createdDateTime", managementTemplateStepVersion.createdDateTime);
    writer.writeCollectionOfObjectValues("deployments", managementTemplateStepVersion.deployments, serializeManagementTemplateStepDeployment);
    writer.writeStringValue("lastActionByUserId", managementTemplateStepVersion.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", managementTemplateStepVersion.lastActionDateTime);
    writer.writeStringValue("name", managementTemplateStepVersion.name);
    writer.writeObjectValue("templateStep", managementTemplateStepVersion.templateStep, serializeManagementTemplateStep);
    writer.writeNumberValue("version", managementTemplateStepVersion.version);
    writer.writeStringValue("versionInformation", managementTemplateStepVersion.versionInformation);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param ManagementTemplateStepVersionCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeManagementTemplateStepVersionCollectionResponse(writer, managementTemplateStepVersionCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!managementTemplateStepVersionCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, managementTemplateStepVersionCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", managementTemplateStepVersionCollectionResponse.value, serializeManagementTemplateStepVersion);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param MyRole The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeMyRole(writer, myRole = {}, isSerializingDerivedType = false) {
    if (!myRole || isSerializingDerivedType) {
        return;
    }
    writer.writeCollectionOfObjectValues("assignments", myRole.assignments, serializeRoleAssignment);
    writer.writeStringValue("@odata.type", myRole.odataType);
    writer.writeStringValue("tenantId", myRole.tenantId);
    writer.writeAdditionalData(myRole.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param MyRoleCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeMyRoleCollectionResponse(writer, myRoleCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!myRoleCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, myRoleCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", myRoleCollectionResponse.value, serializeMyRole);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param NotificationTarget The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeNotificationTarget(writer, notificationTarget = {}, isSerializingDerivedType = false) {
    if (!notificationTarget || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("displayName", notificationTarget.displayName);
    writer.writeStringValue("@odata.type", notificationTarget.odataType);
    writer.writeAdditionalData(notificationTarget.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param RoleAssignment The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeRoleAssignment(writer, roleAssignment = {}, isSerializingDerivedType = false) {
    if (!roleAssignment || isSerializingDerivedType) {
        return;
    }
    writer.writeEnumValue("assignmentType", roleAssignment.assignmentType);
    writer.writeStringValue("@odata.type", roleAssignment.odataType);
    writer.writeCollectionOfObjectValues("roles", roleAssignment.roles, serializeRoleDefinition);
    writer.writeAdditionalData(roleAssignment.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param RoleDefinition The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeRoleDefinition(writer, roleDefinition = {}, isSerializingDerivedType = false) {
    if (!roleDefinition || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("description", roleDefinition.description);
    writer.writeStringValue("displayName", roleDefinition.displayName);
    writer.writeStringValue("@odata.type", roleDefinition.odataType);
    writer.writeStringValue("templateId", roleDefinition.templateId);
    writer.writeAdditionalData(roleDefinition.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param Setting The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeSetting(writer, setting = {}, isSerializingDerivedType = false) {
    if (!setting || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("displayName", setting.displayName);
    writer.writeStringValue("jsonValue", setting.jsonValue);
    writer.writeStringValue("@odata.type", setting.odataType);
    writer.writeBooleanValue("overwriteAllowed", setting.overwriteAllowed);
    writer.writeStringValue("settingId", setting.settingId);
    writer.writeEnumValue("valueType", setting.valueType);
    writer.writeAdditionalData(setting.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TemplateParameter The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTemplateParameter(writer, templateParameter = {}, isSerializingDerivedType = false) {
    if (!templateParameter || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("description", templateParameter.description);
    writer.writeStringValue("displayName", templateParameter.displayName);
    writer.writeStringValue("jsonAllowedValues", templateParameter.jsonAllowedValues);
    writer.writeStringValue("jsonDefaultValue", templateParameter.jsonDefaultValue);
    writer.writeStringValue("@odata.type", templateParameter.odataType);
    writer.writeEnumValue("valueType", templateParameter.valueType);
    writer.writeAdditionalData(templateParameter.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param Tenant The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenant(writer, tenant = {}, isSerializingDerivedType = false) {
    if (!tenant || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, tenant, isSerializingDerivedType);
    writer.writeObjectValue("contract", tenant.contract, serializeTenantContract);
    writer.writeDateValue("createdDateTime", tenant.createdDateTime);
    writer.writeStringValue("displayName", tenant.displayName);
    writer.writeDateValue("lastUpdatedDateTime", tenant.lastUpdatedDateTime);
    writer.writeStringValue("tenantId", tenant.tenantId);
    writer.writeObjectValue("tenantStatusInformation", tenant.tenantStatusInformation, serializeTenantStatusInformation);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantCollectionResponse(writer, tenantCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!tenantCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, tenantCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", tenantCollectionResponse.value, serializeTenant);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantContactInformation The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantContactInformation(writer, tenantContactInformation = {}, isSerializingDerivedType = false) {
    if (!tenantContactInformation || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("email", tenantContactInformation.email);
    writer.writeStringValue("name", tenantContactInformation.name);
    writer.writeStringValue("notes", tenantContactInformation.notes);
    writer.writeStringValue("@odata.type", tenantContactInformation.odataType);
    writer.writeStringValue("phone", tenantContactInformation.phone);
    writer.writeStringValue("title", tenantContactInformation.title);
    writer.writeAdditionalData(tenantContactInformation.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantContract The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantContract(writer, tenantContract = {}, isSerializingDerivedType = false) {
    if (!tenantContract || isSerializingDerivedType) {
        return;
    }
    writer.writeNumberValue("contractType", tenantContract.contractType);
    writer.writeStringValue("defaultDomainName", tenantContract.defaultDomainName);
    writer.writeStringValue("displayName", tenantContract.displayName);
    writer.writeStringValue("@odata.type", tenantContract.odataType);
    writer.writeAdditionalData(tenantContract.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantCustomizedInformation The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantCustomizedInformation(writer, tenantCustomizedInformation = {}, isSerializingDerivedType = false) {
    if (!tenantCustomizedInformation || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, tenantCustomizedInformation, isSerializingDerivedType);
    writer.writeStringValue("businessRelationship", tenantCustomizedInformation.businessRelationship);
    writer.writeCollectionOfPrimitiveValues("complianceRequirements", tenantCustomizedInformation.complianceRequirements);
    writer.writeCollectionOfObjectValues("contacts", tenantCustomizedInformation.contacts, serializeTenantContactInformation);
    writer.writeStringValue("displayName", tenantCustomizedInformation.displayName);
    writer.writeCollectionOfPrimitiveValues("managedServicesPlans", tenantCustomizedInformation.managedServicesPlans);
    writer.writeStringValue("note", tenantCustomizedInformation.note);
    writer.writeDateValue("noteLastModifiedDateTime", tenantCustomizedInformation.noteLastModifiedDateTime);
    writer.writeCollectionOfPrimitiveValues("partnerRelationshipManagerUserIds", tenantCustomizedInformation.partnerRelationshipManagerUserIds);
    writer.writeStringValue("tenantId", tenantCustomizedInformation.tenantId);
    writer.writeStringValue("website", tenantCustomizedInformation.website);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantCustomizedInformationCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantCustomizedInformationCollectionResponse(writer, tenantCustomizedInformationCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!tenantCustomizedInformationCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, tenantCustomizedInformationCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", tenantCustomizedInformationCollectionResponse.value, serializeTenantCustomizedInformation);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantDetailedInformation The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantDetailedInformation(writer, tenantDetailedInformation = {}, isSerializingDerivedType = false) {
    if (!tenantDetailedInformation || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, tenantDetailedInformation, isSerializingDerivedType);
    writer.writeStringValue("city", tenantDetailedInformation.city);
    writer.writeStringValue("countryCode", tenantDetailedInformation.countryCode);
    writer.writeStringValue("countryName", tenantDetailedInformation.countryName);
    writer.writeStringValue("defaultDomainName", tenantDetailedInformation.defaultDomainName);
    writer.writeStringValue("displayName", tenantDetailedInformation.displayName);
    writer.writeStringValue("industryName", tenantDetailedInformation.industryName);
    writer.writeStringValue("region", tenantDetailedInformation.region);
    writer.writeStringValue("segmentName", tenantDetailedInformation.segmentName);
    writer.writeStringValue("tenantId", tenantDetailedInformation.tenantId);
    writer.writeStringValue("verticalName", tenantDetailedInformation.verticalName);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantDetailedInformationCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantDetailedInformationCollectionResponse(writer, tenantDetailedInformationCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!tenantDetailedInformationCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, tenantDetailedInformationCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", tenantDetailedInformationCollectionResponse.value, serializeTenantDetailedInformation);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantGroup The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantGroup(writer, tenantGroup = {}, isSerializingDerivedType = false) {
    if (!tenantGroup || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, tenantGroup, isSerializingDerivedType);
    writer.writeBooleanValue("allTenantsIncluded", tenantGroup.allTenantsIncluded);
    writer.writeStringValue("displayName", tenantGroup.displayName);
    writer.writeCollectionOfObjectValues("managementActions", tenantGroup.managementActions, serializeManagementActionInfo);
    writer.writeCollectionOfObjectValues("managementIntents", tenantGroup.managementIntents, serializeManagementIntentInfo);
    writer.writeCollectionOfPrimitiveValues("tenantIds", tenantGroup.tenantIds);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantGroupCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantGroupCollectionResponse(writer, tenantGroupCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!tenantGroupCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, tenantGroupCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", tenantGroupCollectionResponse.value, serializeTenantGroup);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantInfo The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantInfo(writer, tenantInfo = {}, isSerializingDerivedType = false) {
    if (!tenantInfo || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("@odata.type", tenantInfo.odataType);
    writer.writeStringValue("tenantId", tenantInfo.tenantId);
    writer.writeAdditionalData(tenantInfo.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantStatusInformation The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantStatusInformation(writer, tenantStatusInformation = {}, isSerializingDerivedType = false) {
    if (!tenantStatusInformation || isSerializingDerivedType) {
        return;
    }
    writer.writeEnumValue("delegatedPrivilegeStatus", tenantStatusInformation.delegatedPrivilegeStatus);
    writer.writeDateValue("lastDelegatedPrivilegeRefreshDateTime", tenantStatusInformation.lastDelegatedPrivilegeRefreshDateTime);
    writer.writeStringValue("@odata.type", tenantStatusInformation.odataType);
    writer.writeStringValue("offboardedByUserId", tenantStatusInformation.offboardedByUserId);
    writer.writeDateValue("offboardedDateTime", tenantStatusInformation.offboardedDateTime);
    writer.writeStringValue("onboardedByUserId", tenantStatusInformation.onboardedByUserId);
    writer.writeDateValue("onboardedDateTime", tenantStatusInformation.onboardedDateTime);
    writer.writeEnumValue("onboardingStatus", tenantStatusInformation.onboardingStatus);
    writer.writeEnumValue("tenantOnboardingEligibilityReason", tenantStatusInformation.tenantOnboardingEligibilityReason);
    writer.writeCollectionOfObjectValues("workloadStatuses", tenantStatusInformation.workloadStatuses, serializeWorkloadStatus);
    writer.writeAdditionalData(tenantStatusInformation.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantTag The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantTag(writer, tenantTag = {}, isSerializingDerivedType = false) {
    if (!tenantTag || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, tenantTag, isSerializingDerivedType);
    writer.writeStringValue("createdByUserId", tenantTag.createdByUserId);
    writer.writeDateValue("createdDateTime", tenantTag.createdDateTime);
    writer.writeDateValue("deletedDateTime", tenantTag.deletedDateTime);
    writer.writeStringValue("description", tenantTag.description);
    writer.writeStringValue("displayName", tenantTag.displayName);
    writer.writeStringValue("lastActionByUserId", tenantTag.lastActionByUserId);
    writer.writeDateValue("lastActionDateTime", tenantTag.lastActionDateTime);
    writer.writeCollectionOfObjectValues("tenants", tenantTag.tenants, serializeTenantInfo);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param TenantTagCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeTenantTagCollectionResponse(writer, tenantTagCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!tenantTagCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, tenantTagCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", tenantTagCollectionResponse.value, serializeTenantTag);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param WindowsDeviceMalwareState The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeWindowsDeviceMalwareState(writer, windowsDeviceMalwareState = {}, isSerializingDerivedType = false) {
    if (!windowsDeviceMalwareState || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, windowsDeviceMalwareState, isSerializingDerivedType);
    writer.writeStringValue("additionalInformationUrl", windowsDeviceMalwareState.additionalInformationUrl);
    writer.writeNumberValue("detectionCount", windowsDeviceMalwareState.detectionCount);
    writer.writeBooleanValue("deviceDeleted", windowsDeviceMalwareState.deviceDeleted);
    writer.writeDateValue("initialDetectionDateTime", windowsDeviceMalwareState.initialDetectionDateTime);
    writer.writeDateValue("lastRefreshedDateTime", windowsDeviceMalwareState.lastRefreshedDateTime);
    writer.writeDateValue("lastStateChangeDateTime", windowsDeviceMalwareState.lastStateChangeDateTime);
    writer.writeStringValue("malwareCategory", windowsDeviceMalwareState.malwareCategory);
    writer.writeStringValue("malwareDisplayName", windowsDeviceMalwareState.malwareDisplayName);
    writer.writeStringValue("malwareExecutionState", windowsDeviceMalwareState.malwareExecutionState);
    writer.writeStringValue("malwareId", windowsDeviceMalwareState.malwareId);
    writer.writeStringValue("malwareSeverity", windowsDeviceMalwareState.malwareSeverity);
    writer.writeStringValue("malwareThreatState", windowsDeviceMalwareState.malwareThreatState);
    writer.writeStringValue("managedDeviceId", windowsDeviceMalwareState.managedDeviceId);
    writer.writeStringValue("managedDeviceName", windowsDeviceMalwareState.managedDeviceName);
    writer.writeStringValue("tenantDisplayName", windowsDeviceMalwareState.tenantDisplayName);
    writer.writeStringValue("tenantId", windowsDeviceMalwareState.tenantId);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param WindowsDeviceMalwareStateCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeWindowsDeviceMalwareStateCollectionResponse(writer, windowsDeviceMalwareStateCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!windowsDeviceMalwareStateCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, windowsDeviceMalwareStateCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", windowsDeviceMalwareStateCollectionResponse.value, serializeWindowsDeviceMalwareState);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param WindowsProtectionState The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeWindowsProtectionState(writer, windowsProtectionState = {}, isSerializingDerivedType = false) {
    if (!windowsProtectionState || isSerializingDerivedType) {
        return;
    }
    serializeEntity(writer, windowsProtectionState, isSerializingDerivedType);
    writer.writeStringValue("antiMalwareVersion", windowsProtectionState.antiMalwareVersion);
    writer.writeBooleanValue("attentionRequired", windowsProtectionState.attentionRequired);
    writer.writeBooleanValue("deviceDeleted", windowsProtectionState.deviceDeleted);
    writer.writeDateValue("devicePropertyRefreshDateTime", windowsProtectionState.devicePropertyRefreshDateTime);
    writer.writeStringValue("engineVersion", windowsProtectionState.engineVersion);
    writer.writeBooleanValue("fullScanOverdue", windowsProtectionState.fullScanOverdue);
    writer.writeBooleanValue("fullScanRequired", windowsProtectionState.fullScanRequired);
    writer.writeDateValue("lastFullScanDateTime", windowsProtectionState.lastFullScanDateTime);
    writer.writeStringValue("lastFullScanSignatureVersion", windowsProtectionState.lastFullScanSignatureVersion);
    writer.writeDateValue("lastQuickScanDateTime", windowsProtectionState.lastQuickScanDateTime);
    writer.writeStringValue("lastQuickScanSignatureVersion", windowsProtectionState.lastQuickScanSignatureVersion);
    writer.writeDateValue("lastRefreshedDateTime", windowsProtectionState.lastRefreshedDateTime);
    writer.writeDateValue("lastReportedDateTime", windowsProtectionState.lastReportedDateTime);
    writer.writeBooleanValue("malwareProtectionEnabled", windowsProtectionState.malwareProtectionEnabled);
    writer.writeStringValue("managedDeviceHealthState", windowsProtectionState.managedDeviceHealthState);
    writer.writeStringValue("managedDeviceId", windowsProtectionState.managedDeviceId);
    writer.writeStringValue("managedDeviceName", windowsProtectionState.managedDeviceName);
    writer.writeBooleanValue("networkInspectionSystemEnabled", windowsProtectionState.networkInspectionSystemEnabled);
    writer.writeBooleanValue("quickScanOverdue", windowsProtectionState.quickScanOverdue);
    writer.writeBooleanValue("realTimeProtectionEnabled", windowsProtectionState.realTimeProtectionEnabled);
    writer.writeBooleanValue("rebootRequired", windowsProtectionState.rebootRequired);
    writer.writeBooleanValue("signatureUpdateOverdue", windowsProtectionState.signatureUpdateOverdue);
    writer.writeStringValue("signatureVersion", windowsProtectionState.signatureVersion);
    writer.writeStringValue("tenantDisplayName", windowsProtectionState.tenantDisplayName);
    writer.writeStringValue("tenantId", windowsProtectionState.tenantId);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param WindowsProtectionStateCollectionResponse The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeWindowsProtectionStateCollectionResponse(writer, windowsProtectionStateCollectionResponse = {}, isSerializingDerivedType = false) {
    if (!windowsProtectionStateCollectionResponse || isSerializingDerivedType) {
        return;
    }
    serializeBaseCollectionPaginationCountResponse(writer, windowsProtectionStateCollectionResponse, isSerializingDerivedType);
    writer.writeCollectionOfObjectValues("value", windowsProtectionStateCollectionResponse.value, serializeWindowsProtectionState);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param WorkloadAction The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeWorkloadAction(writer, workloadAction = {}, isSerializingDerivedType = false) {
    if (!workloadAction || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("actionId", workloadAction.actionId);
    writer.writeEnumValue("category", workloadAction.category);
    writer.writeStringValue("description", workloadAction.description);
    writer.writeStringValue("displayName", workloadAction.displayName);
    writer.writeCollectionOfPrimitiveValues("licenses", workloadAction.licenses);
    writer.writeStringValue("@odata.type", workloadAction.odataType);
    writer.writeStringValue("service", workloadAction.service);
    writer.writeCollectionOfObjectValues("settings", workloadAction.settings, serializeSetting);
    writer.writeAdditionalData(workloadAction.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param WorkloadActionDeploymentStatus The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeWorkloadActionDeploymentStatus(writer, workloadActionDeploymentStatus = {}, isSerializingDerivedType = false) {
    if (!workloadActionDeploymentStatus || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("actionId", workloadActionDeploymentStatus.actionId);
    writer.writeStringValue("deployedPolicyId", workloadActionDeploymentStatus.deployedPolicyId);
    writer.writeObjectValue("error", workloadActionDeploymentStatus.errorEscaped, serializeGenericError);
    writer.writeCollectionOfPrimitiveValues("excludeGroups", workloadActionDeploymentStatus.excludeGroups);
    writer.writeBooleanValue("includeAllUsers", workloadActionDeploymentStatus.includeAllUsers);
    writer.writeCollectionOfPrimitiveValues("includeGroups", workloadActionDeploymentStatus.includeGroups);
    writer.writeDateValue("lastDeploymentDateTime", workloadActionDeploymentStatus.lastDeploymentDateTime);
    writer.writeStringValue("@odata.type", workloadActionDeploymentStatus.odataType);
    writer.writeEnumValue("status", workloadActionDeploymentStatus.status);
    writer.writeAdditionalData(workloadActionDeploymentStatus.additionalData);
}
/**
 * Serializes information the current object
 * @param isSerializingDerivedType A boolean indicating whether the serialization is for a derived type.
 * @param WorkloadStatus The instance to serialize from.
 * @param writer Serialization writer to use to serialize this model
 */
// @ts-ignore
export function serializeWorkloadStatus(writer, workloadStatus = {}, isSerializingDerivedType = false) {
    if (!workloadStatus || isSerializingDerivedType) {
        return;
    }
    writer.writeStringValue("displayName", workloadStatus.displayName);
    writer.writeStringValue("@odata.type", workloadStatus.odataType);
    writer.writeDateValue("offboardedDateTime", workloadStatus.offboardedDateTime);
    writer.writeDateValue("onboardedDateTime", workloadStatus.onboardedDateTime);
    writer.writeEnumValue("onboardingStatus", workloadStatus.onboardingStatus);
    writer.writeAdditionalData(workloadStatus.additionalData);
}
export const AlertSeverityObject = {
    Unknown: "unknown",
    Informational: "informational",
    Low: "low",
    Medium: "medium",
    High: "high",
    UnknownFutureValue: "unknownFutureValue",
};
export const AlertStatusObject = {
    Unknown: "unknown",
    NewAlert: "newAlert",
    InProgress: "inProgress",
    Resolved: "resolved",
    Dismissed: "dismissed",
    UnknownFutureValue: "unknownFutureValue",
};
export const DelegatedPrivilegeStatusObject = {
    None: "none",
    DelegatedAdminPrivileges: "delegatedAdminPrivileges",
    UnknownFutureValue: "unknownFutureValue",
    GranularDelegatedAdminPrivileges: "granularDelegatedAdminPrivileges",
    DelegatedAndGranularDelegetedAdminPrivileges: "delegatedAndGranularDelegetedAdminPrivileges",
};
export const ManagementActionStatusObject = {
    ToAddress: "toAddress",
    Completed: "completed",
    ErrorEscaped: "error",
    TimeOut: "timeOut",
    InProgress: "inProgress",
    Planned: "planned",
    ResolvedBy3rdParty: "resolvedBy3rdParty",
    ResolvedThroughAlternateMitigation: "resolvedThroughAlternateMitigation",
    RiskAccepted: "riskAccepted",
    UnknownFutureValue: "unknownFutureValue",
};
export const ManagementCategoryObject = {
    Custom: "custom",
    Devices: "devices",
    Identity: "identity",
    Data: "data",
    UnknownFutureValue: "unknownFutureValue",
};
export const ManagementParameterValueTypeObject = {
    String: "string",
    Integer: "integer",
    Boolean: "boolean",
    Guid: "guid",
    StringCollection: "stringCollection",
    IntegerCollection: "integerCollection",
    BooleanCollection: "booleanCollection",
    GuidCollection: "guidCollection",
    UnknownFutureValue: "unknownFutureValue",
};
export const ManagementProviderObject = {
    Microsoft: "microsoft",
    Community: "community",
    IndirectProvider: "indirectProvider",
    Self: "self",
    UnknownFutureValue: "unknownFutureValue",
};
export const ManagementTemplateDeploymentStatusObject = {
    Unknown: "unknown",
    InProgress: "inProgress",
    Completed: "completed",
    Failed: "failed",
    Ineligible: "ineligible",
    UnknownFutureValue: "unknownFutureValue",
};
export const NotificationDestinationObject = {
    None: "none",
    Api: "api",
    Email: "email",
    Sms: "sms",
    UnknownFutureValue: "unknownFutureValue",
};
export const TenantOnboardingEligibilityReasonObject = {
    None: "none",
    ContractType: "contractType",
    DelegatedAdminPrivileges: "delegatedAdminPrivileges",
    UsersCount: "usersCount",
    License: "license",
    UnknownFutureValue: "unknownFutureValue",
};
export const TenantOnboardingStatusObject = {
    Ineligible: "ineligible",
    InProcess: "inProcess",
    Active: "active",
    Inactive: "inactive",
    UnknownFutureValue: "unknownFutureValue",
    Disabled: "disabled",
};
export const WorkloadActionCategoryObject = {
    Automated: "automated",
    Manual: "manual",
    UnknownFutureValue: "unknownFutureValue",
};
export const WorkloadActionStatusObject = {
    ToAddress: "toAddress",
    Completed: "completed",
    ErrorEscaped: "error",
    TimeOut: "timeOut",
    InProgress: "inProgress",
    UnknownFutureValue: "unknownFutureValue",
};
export const WorkloadOnboardingStatusObject = {
    NotOnboarded: "notOnboarded",
    Onboarded: "onboarded",
    UnknownFutureValue: "unknownFutureValue",
};
/* tslint:enable */
/* eslint-enable */
//# sourceMappingURL=index.js.map