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

package msgraph

// TargetedManagedAppConfiguration Configuration used to deliver a set of custom settings as-is to all users in the targeted security group
type TargetedManagedAppConfiguration struct {
	// ManagedAppConfiguration is the base model of TargetedManagedAppConfiguration
	ManagedAppConfiguration
	// DeployedAppCount Count of apps to which the current policy is deployed.
	DeployedAppCount *int `json:"deployedAppCount,omitempty"`
	// IsAssigned Indicates if the policy is deployed to any inclusion groups or not.
	IsAssigned *bool `json:"isAssigned,omitempty"`
	// Apps undocumented
	Apps []ManagedMobileApp `json:"apps,omitempty"`
	// DeploymentSummary undocumented
	DeploymentSummary *ManagedAppPolicyDeploymentSummary `json:"deploymentSummary,omitempty"`
	// Assignments undocumented
	Assignments []TargetedManagedAppPolicyAssignment `json:"assignments,omitempty"`
}

// TargetedManagedAppConfigurationPolicySetItem A class containing the properties used for Targeted managed app configuration PolicySetItem.
type TargetedManagedAppConfigurationPolicySetItem struct {
	// PolicySetItem is the base model of TargetedManagedAppConfigurationPolicySetItem
	PolicySetItem
}

// TargetedManagedAppPolicyAssignment The type for deployment of groups or apps.
type TargetedManagedAppPolicyAssignment struct {
	// Entity is the base model of TargetedManagedAppPolicyAssignment
	Entity
	// Target Identifier for deployment to a group or app
	Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
	// Source Type of resource used for deployment to a group, direct or parcel/policySet
	Source *DeviceAndAppManagementAssignmentSource `json:"source,omitempty"`
	// SourceID Identifier for resource used for deployment to a group
	SourceID *string `json:"sourceId,omitempty"`
}

// TargetedManagedAppProtection Policy used to configure detailed management settings targeted to specific security groups
type TargetedManagedAppProtection struct {
	// ManagedAppProtection is the base model of TargetedManagedAppProtection
	ManagedAppProtection
	// IsAssigned Indicates if the policy is deployed to any inclusion groups or not.
	IsAssigned *bool `json:"isAssigned,omitempty"`
	// TargetedAppManagementLevels The intended app management levels for this policy
	TargetedAppManagementLevels *AppManagementLevel `json:"targetedAppManagementLevels,omitempty"`
	// Assignments undocumented
	Assignments []TargetedManagedAppPolicyAssignment `json:"assignments,omitempty"`
}
