// Code generated by msgraph-generate.go DO NOT EDIT.

package msgraph

import "time"

// AdvancedThreatProtectionOnboardingDeviceSettingState ATP onboarding State for a given device.
type AdvancedThreatProtectionOnboardingDeviceSettingState struct {
	// Entity is the base model of AdvancedThreatProtectionOnboardingDeviceSettingState
	Entity
	// PlatformType Device platform type
	PlatformType *DeviceType `json:"platformType,omitempty"`
	// Setting The setting class name and property name.
	Setting *string `json:"setting,omitempty"`
	// SettingName The Setting Name that is being reported
	SettingName *string `json:"settingName,omitempty"`
	// DeviceID The Device Id that is being reported
	DeviceID *string `json:"deviceId,omitempty"`
	// DeviceName The Device Name that is being reported
	DeviceName *string `json:"deviceName,omitempty"`
	// UserID The user Id that is being reported
	UserID *string `json:"userId,omitempty"`
	// UserEmail The User email address that is being reported
	UserEmail *string `json:"userEmail,omitempty"`
	// UserName The User Name that is being reported
	UserName *string `json:"userName,omitempty"`
	// UserPrincipalName The User PrincipalName that is being reported
	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
	// DeviceModel The device model that is being reported
	DeviceModel *string `json:"deviceModel,omitempty"`
	// State The compliance state of the setting
	State *ComplianceStatus `json:"state,omitempty"`
	// ComplianceGracePeriodExpirationDateTime The DateTime when device compliance grace period expires
	ComplianceGracePeriodExpirationDateTime *time.Time `json:"complianceGracePeriodExpirationDateTime,omitempty"`
}