// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT.

package armenclave_test

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/enclave/armenclave"
	"log"
)

// Generated from example definition: 2026-03-01-preview/Community_PostCheckAddressSpaceAvailability.json
func ExampleCommunityClient_CheckAddressSpaceAvailability() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armenclave.NewClientFactory("CA1CB369-DD26-4DB2-9D43-9AFEF0F22093", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCommunityClient().CheckAddressSpaceAvailability(ctx, "rgopenapi", "TestMyCommunity", armenclave.CheckAddressSpaceAvailabilityRequest{
		CommunityResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestMyRg/providers/Microsoft.Mission/communities/TestMyCommunity"),
		EnclaveVirtualNetwork: &armenclave.VirtualNetworkModel{
			NetworkSize:     to.Ptr("small"),
			CustomCidrRange: to.Ptr("10.0.0.0/24"),
			SubnetConfigurations: []*armenclave.SubnetConfiguration{
				{
					SubnetName:        to.Ptr("test"),
					NetworkPrefixSize: to.Ptr[int32](26),
				},
			},
			AllowSubnetCommunication: to.Ptr(true),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armenclave.CommunityClientCheckAddressSpaceAvailabilityResponse{
	// 	CheckAddressSpaceAvailabilityResponse: armenclave.CheckAddressSpaceAvailabilityResponse{
	// 		Value: to.Ptr(true),
	// 	},
	// }
}

// Generated from example definition: 2026-03-01-preview/Community_CreateOrUpdate.json
func ExampleCommunityClient_BeginCreateOrUpdate() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armenclave.NewClientFactory("c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCommunityClient().BeginCreateOrUpdate(ctx, "rgopenapi", "TestMyCommunity", armenclave.CommunityResource{
		Identity: &armenclave.ManagedServiceIdentity{
			Type: to.Ptr(armenclave.ManagedServiceIdentityTypeSystemAssignedUserAssigned),
			UserAssignedIdentities: map[string]*armenclave.UserAssignedIdentity{
				"/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {},
			},
		},
		Properties: &armenclave.CommunityProperties{
			AddressSpace: to.Ptr(""),
			DNSServers: []*string{
				to.Ptr("azure.net"),
			},
			GovernedServiceList: []*armenclave.GovernedServiceItem{
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierAKS),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierAppService),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierContainerRegistry),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierCosmosDB),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierKeyVault),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierMicrosoftSQL),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierMonitoring),
					Option:       to.Ptr(armenclave.GovernedServiceItemOption("Not Applicable")),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierPostgreSQL),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierServiceBus),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierStorage),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierAzureFirewalls),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierInsights),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierLogic),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierPrivateDNSZones),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierDataConnectors),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
			},
			CommunityRoleAssignments: []*armenclave.RoleAssignmentItem{
				{
					RoleDefinitionID: to.Ptr("b24988ac-6180-42a0-ab88-20f7382dd24c"),
					Principals: []*armenclave.Principal{
						{
							ID:   to.Ptr("01234567-89ab-ef01-2345-0123456789ab"),
							Type: to.Ptr(armenclave.PrincipalTypeGroup),
						},
						{
							ID:   to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c0"),
							Type: to.Ptr(armenclave.PrincipalTypeUser),
						},
					},
					Condition: to.Ptr("@RoleDefinition.Name StringNotEquals 'Owner'"),
				},
				{
					RoleDefinitionID: to.Ptr("18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"),
					Principals: []*armenclave.Principal{
						{
							ID:   to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
							Type: to.Ptr(armenclave.PrincipalTypeUser),
						},
					},
				},
			},
			GranularApprovalSettings: &armenclave.ApprovalSettings{
				CommunityEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](2),
					MandatoryApprovers: []*armenclave.MandatoryApprover{
						{
							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000001"),
						},
					},
				},
				EnclaveEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](1),
				},
				EnclaveCreation: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
				},
				ConnectionCreation: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](1),
					MandatoryApprovers: []*armenclave.MandatoryApprover{
						{
							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000002"),
						},
					},
				},
				ConnectionUpdate: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](1),
				},
				CommunityMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](2),
					MandatoryApprovers: []*armenclave.MandatoryApprover{
						{
							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000003"),
						},
						{
							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000004"),
						},
					},
				},
				EnclaveMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
				},
			},
			MaintenanceModeConfiguration: &armenclave.MaintenanceModeConfigurationModel{
				Mode: to.Ptr(armenclave.MaintenanceModeConfigurationModelModeOff),
				Principals: []*armenclave.Principal{
					{
						ID:   to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
						Type: to.Ptr(armenclave.PrincipalTypeUser),
					},
				},
				Justification: to.Ptr(armenclave.MaintenanceModeConfigurationModelJustificationOff),
			},
			FirewallSKU: to.Ptr(armenclave.FirewallSKUStandard),
			MonitoringSettings: &armenclave.MonitoringSettingsModel{
				DiagnosticDestinations: []*armenclave.MonitoringDestination{
					{
						DestinationType: to.Ptr(armenclave.MonitoringDestinationTypeCommunityWorkspace),
					},
					{
						DestinationType:        to.Ptr(armenclave.MonitoringDestinationTypeEnclaveWorkspace),
						DiagnosticSettingsName: to.Ptr("customName"),
					},
					{
						DestinationType:           to.Ptr(armenclave.MonitoringDestinationTypeCustomWorkspace),
						CustomWorkspaceResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.OperationalInsights/workspaces/CustomWorkspace"),
						DiagnosticSettingsName:    to.Ptr("customName"),
					},
					{
						DestinationType:           to.Ptr(armenclave.MonitoringDestinationTypeCustomWorkspace),
						CustomWorkspaceResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.OperationalInsights/workspaces/CustomWorkspace"),
						DiagnosticSettingsName:    to.Ptr("customName"),
					},
				},
				FlowLogDestination: &armenclave.MonitoringDestination{
					DestinationType:           to.Ptr(armenclave.MonitoringDestinationTypeCustomWorkspace),
					CustomWorkspaceResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.OperationalInsights/workspaces/CustomWorkspace"),
					DiagnosticSettingsName:    to.Ptr("customName"),
				},
			},
			AddressSpaces: []*string{
				to.Ptr("10.0.0.0/16"),
				to.Ptr("10.1.0.0/16"),
			},
		},
		Tags: map[string]*string{
			"sampletag": to.Ptr("samplevalue"),
		},
		Location: to.Ptr("westcentralus"),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armenclave.CommunityClientCreateOrUpdateResponse{
	// 	CommunityResource: armenclave.CommunityResource{
	// 		Identity: &armenclave.ManagedServiceIdentity{
	// 			Type: to.Ptr(armenclave.ManagedServiceIdentityTypeSystemAssignedUserAssigned),
	// 			PrincipalID: to.Ptr("1a2e532b-9900-414c-8600-cfc6126628d7"),
	// 			TenantID: to.Ptr("f686d426-8d16-42db-81b7-ab578e110ccd"),
	// 			UserAssignedIdentities: map[string]*armenclave.UserAssignedIdentity{
	// 				"/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": &armenclave.UserAssignedIdentity{
	// 					PrincipalID: to.Ptr("f4aa4954-a564-4933-a7e1-502019d807c2"),
	// 					ClientID: to.Ptr("b82bf757-ee7f-4632-9df1-5e52a720fdd2"),
	// 				},
	// 			},
	// 		},
	// 		Properties: &armenclave.CommunityProperties{
	// 			AddressSpace: to.Ptr(""),
	// 			DNSServers: []*string{
	// 				to.Ptr("azure.net"),
	// 			},
	// 			ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
	// 			ResourceCollection: []*string{
	// 				to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestMyRg"),
	// 			},
	// 			GovernedServiceList: []*armenclave.GovernedServiceItem{
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAKS),
	// 					ServiceName: to.Ptr("AKS"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("d300338e-65d1-4be3-b18e-fb4ce5715a8f"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAppService),
	// 					ServiceName: to.Ptr("App Service"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("528d78c5-246c-4f26-ade6-d30798705411"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierContainerRegistry),
	// 					ServiceName: to.Ptr("Container Registry"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("b3fe25eb-cdc6-475f-96a5-04ac270f630d"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierCosmosDB),
	// 					ServiceName: to.Ptr("CosmosDB"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("6bd484ca-ae8d-46cf-9b33-e1feef84bfba"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierKeyVault),
	// 					ServiceName: to.Ptr("Key Vault"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("4f4dba0f-a5ee-494b-8df7-f9727dea6f37"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierMicrosoftSQL),
	// 					ServiceName: to.Ptr("Microsoft SQL"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("0fbe78a5-1722-4f1b-83a5-89c14151fa60"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierMonitoring),
	// 					ServiceName: to.Ptr("Monitoring"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOption("Not Applicable")),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("0a9ea1cb-7925-47fc-b0fe-8bb0a8190423"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierPostgreSQL),
	// 					ServiceName: to.Ptr("PostgreSQL"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("5eaa16b4-81f2-4354-aef3-2d77288e396e"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierServiceBus),
	// 					ServiceName: to.Ptr("Service Bus"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("8fcdb3f1-1369-426d-9917-81edfee903ab"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierStorage),
	// 					ServiceName: to.Ptr("Storage"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("ca122c06-05f6-4423-9018-ccb523168eb2"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAzureFirewalls),
	// 					ServiceName: to.Ptr("Azure Firewalls"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierInsights),
	// 					ServiceName: to.Ptr("Insights"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierLogic),
	// 					ServiceName: to.Ptr("Logic"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierPrivateDNSZones),
	// 					ServiceName: to.Ptr("Private DNS Zones"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierDataConnectors),
	// 					ServiceName: to.Ptr("Data Connectors"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 			},
	// 			CommunityRoleAssignments: []*armenclave.RoleAssignmentItem{
	// 				{
	// 					RoleDefinitionID: to.Ptr("b24988ac-6180-42a0-ab88-20f7382dd24c"),
	// 					Principals: []*armenclave.Principal{
	// 						{
	// 							ID: to.Ptr("01234567-89ab-ef01-2345-0123456789ab"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeGroup),
	// 						},
	// 						{
	// 							ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c0"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 						},
	// 					},
	// 					Condition: to.Ptr("@RoleDefinition.Name StringNotEquals 'Owner'"),
	// 				},
	// 				{
	// 					RoleDefinitionID: to.Ptr("18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"),
	// 					Principals: []*armenclave.Principal{
	// 						{
	// 							ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 						},
	// 					},
	// 				},
	// 			},
	// 			GranularApprovalSettings: &armenclave.ApprovalSettings{
	// 				CommunityEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](2),
	// 					MandatoryApprovers: []*armenclave.MandatoryApprover{
	// 						{
	// 							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000001"),
	// 						},
	// 					},
	// 				},
	// 				EnclaveEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](1),
	// 				},
	// 				EnclaveCreation: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
	// 				},
	// 				ConnectionCreation: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](1),
	// 					MandatoryApprovers: []*armenclave.MandatoryApprover{
	// 						{
	// 							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000002"),
	// 						},
	// 					},
	// 				},
	// 				ConnectionUpdate: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](1),
	// 				},
	// 				CommunityMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](2),
	// 					MandatoryApprovers: []*armenclave.MandatoryApprover{
	// 						{
	// 							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000003"),
	// 						},
	// 						{
	// 							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000004"),
	// 						},
	// 					},
	// 				},
	// 				EnclaveMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
	// 				},
	// 			},
	// 			MaintenanceModeConfiguration: &armenclave.MaintenanceModeConfigurationModel{
	// 				Mode: to.Ptr(armenclave.MaintenanceModeConfigurationModelModeOff),
	// 				Principals: []*armenclave.Principal{
	// 					{
	// 						ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
	// 						Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 					},
	// 				},
	// 				Justification: to.Ptr(armenclave.MaintenanceModeConfigurationModelJustificationOff),
	// 			},
	// 			FirewallSKU: to.Ptr(armenclave.FirewallSKUStandard),
	// 			DedicatedHubList: []*armenclave.DedicatedHubResource{
	// 				{
	// 					ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.Mission/communities/TestMyCommunity/dedicatedHubs/TestDedicatedHub"),
	// 					Name: to.Ptr("TestDedicatedHub"),
	// 					Type: to.Ptr("Microsoft.Mission/communities/dedicatedHubs"),
	// 					Location: to.Ptr("westcentralus"),
	// 					Properties: &armenclave.DedicatedHubProperties{
	// 						ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
	// 						VHubResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/virtualHubs/TestVirtualHub"),
	// 						FirewallResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/azureFirewalls/TestFirewall"),
	// 						FirewallPolicyResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/firewallPolicies/TestFirewallPolicy"),
	// 						Designation: to.Ptr(armenclave.DesignationPooled),
	// 					},
	// 					Tags: map[string]*string{
	// 						"environment": to.Ptr("test"),
	// 					},
	// 					SystemData: &armenclave.SystemData{
	// 						CreatedBy: to.Ptr("myAlias"),
	// 						CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 						CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 						LastModifiedBy: to.Ptr("myAlias"),
	// 						LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 						LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 					},
	// 				},
	// 			},
	// 			AddressSpaces: []*string{
	// 				to.Ptr("10.0.0.0/16"),
	// 				to.Ptr("10.1.0.0/16"),
	// 			},
	// 		},
	// 		Tags: map[string]*string{
	// 			"sampletag": to.Ptr("samplevalue"),
	// 		},
	// 		Location: to.Ptr("westcentralus"),
	// 		ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/testrg/providers/Microsoft.Mission/communities/TestMyCommunity"),
	// 		Name: to.Ptr("TestMyCommunity"),
	// 		Type: to.Ptr("Microsoft.Mission/communities"),
	// 		SystemData: &armenclave.SystemData{
	// 			CreatedBy: to.Ptr("myAlias"),
	// 			CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("myAlias"),
	// 			LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 		},
	// 	},
	// }
}

// Generated from example definition: 2026-03-01-preview/Community_Delete.json
func ExampleCommunityClient_BeginDelete() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armenclave.NewClientFactory("CA1CB369-DD26-4DB2-9D43-9AFEF0F22093", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCommunityClient().BeginDelete(ctx, "rgopenapi", "TestMyCommunity", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

// Generated from example definition: 2026-03-01-preview/Community_Get.json
func ExampleCommunityClient_Get() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armenclave.NewClientFactory("CA1CB369-DD26-4DB2-9D43-9AFEF0F22093", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCommunityClient().Get(ctx, "rgopenapi", "TestMyCommunity", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armenclave.CommunityClientGetResponse{
	// 	CommunityResource: armenclave.CommunityResource{
	// 		Identity: &armenclave.ManagedServiceIdentity{
	// 			Type: to.Ptr(armenclave.ManagedServiceIdentityTypeSystemAssignedUserAssigned),
	// 			PrincipalID: to.Ptr("1a2e532b-9900-414c-8600-cfc6126628d7"),
	// 			TenantID: to.Ptr("f686d426-8d16-42db-81b7-ab578e110ccd"),
	// 			UserAssignedIdentities: map[string]*armenclave.UserAssignedIdentity{
	// 				"/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": &armenclave.UserAssignedIdentity{
	// 					PrincipalID: to.Ptr("f4aa4954-a564-4933-a7e1-502019d807c2"),
	// 					ClientID: to.Ptr("b82bf757-ee7f-4632-9df1-5e52a720fdd2"),
	// 				},
	// 			},
	// 		},
	// 		Properties: &armenclave.CommunityProperties{
	// 			AddressSpace: to.Ptr(""),
	// 			DNSServers: []*string{
	// 				to.Ptr("azure.net"),
	// 			},
	// 			ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
	// 			ManagedOnBehalfOfConfiguration: &armenclave.ManagedOnBehalfOfConfiguration{
	// 				MoboBrokerResources: []*armenclave.MoboBrokerResource{
	// 					{
	// 						ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestMyRg/providers/Microsoft.Resources/moboBrokers/bnthrkwfkfeorrzvtdxbfz"),
	// 					},
	// 				},
	// 			},
	// 			ResourceCollection: []*string{
	// 				to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestMyRg"),
	// 			},
	// 			GovernedServiceList: []*armenclave.GovernedServiceItem{
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAKS),
	// 					ServiceName: to.Ptr("AKS"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("d300338e-65d1-4be3-b18e-fb4ce5715a8f"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAppService),
	// 					ServiceName: to.Ptr("App Service"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("528d78c5-246c-4f26-ade6-d30798705411"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierContainerRegistry),
	// 					ServiceName: to.Ptr("Container Registry"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("b3fe25eb-cdc6-475f-96a5-04ac270f630d"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierCosmosDB),
	// 					ServiceName: to.Ptr("CosmosDB"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("6bd484ca-ae8d-46cf-9b33-e1feef84bfba"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierKeyVault),
	// 					ServiceName: to.Ptr("Key Vault"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("4f4dba0f-a5ee-494b-8df7-f9727dea6f37"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierMicrosoftSQL),
	// 					ServiceName: to.Ptr("Microsoft SQL"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("0fbe78a5-1722-4f1b-83a5-89c14151fa60"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierMonitoring),
	// 					ServiceName: to.Ptr("Monitoring"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOption("Not Applicable")),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("0a9ea1cb-7925-47fc-b0fe-8bb0a8190423"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierPostgreSQL),
	// 					ServiceName: to.Ptr("PostgreSQL"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("5eaa16b4-81f2-4354-aef3-2d77288e396e"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierServiceBus),
	// 					ServiceName: to.Ptr("Service Bus"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("8fcdb3f1-1369-426d-9917-81edfee903ab"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierStorage),
	// 					ServiceName: to.Ptr("Storage"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("ca122c06-05f6-4423-9018-ccb523168eb2"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAzureFirewalls),
	// 					ServiceName: to.Ptr("Azure Firewalls"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierInsights),
	// 					ServiceName: to.Ptr("Insights"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierLogic),
	// 					ServiceName: to.Ptr("Logic"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierPrivateDNSZones),
	// 					ServiceName: to.Ptr("Private DNS Zones"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierDataConnectors),
	// 					ServiceName: to.Ptr("Data Connectors"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 			},
	// 			CommunityRoleAssignments: []*armenclave.RoleAssignmentItem{
	// 				{
	// 					RoleDefinitionID: to.Ptr("b24988ac-6180-42a0-ab88-20f7382dd24c"),
	// 					Principals: []*armenclave.Principal{
	// 						{
	// 							ID: to.Ptr("01234567-89ab-ef01-2345-0123456789ab"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeGroup),
	// 						},
	// 						{
	// 							ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c0"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 						},
	// 					},
	// 					Condition: to.Ptr("@RoleDefinition.Name StringNotEquals 'Owner'"),
	// 				},
	// 				{
	// 					RoleDefinitionID: to.Ptr("18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"),
	// 					Principals: []*armenclave.Principal{
	// 						{
	// 							ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 						},
	// 					},
	// 				},
	// 			},
	// 			MaintenanceModeConfiguration: &armenclave.MaintenanceModeConfigurationModel{
	// 				Mode: to.Ptr(armenclave.MaintenanceModeConfigurationModelModeOff),
	// 				Principals: []*armenclave.Principal{
	// 					{
	// 						ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
	// 						Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 					},
	// 				},
	// 				Justification: to.Ptr(armenclave.MaintenanceModeConfigurationModelJustificationOff),
	// 			},
	// 			FirewallSKU: to.Ptr(armenclave.FirewallSKUStandard),
	// 			DedicatedHubList: []*armenclave.DedicatedHubResource{
	// 				{
	// 					ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.Mission/communities/TestMyCommunity/dedicatedHubs/TestDedicatedHub"),
	// 					Name: to.Ptr("TestDedicatedHub"),
	// 					Type: to.Ptr("Microsoft.Mission/communities/dedicatedHubs"),
	// 					Location: to.Ptr("westcentralus"),
	// 					Properties: &armenclave.DedicatedHubProperties{
	// 						ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
	// 						VHubResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/virtualHubs/TestVirtualHub"),
	// 						FirewallResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/azureFirewalls/TestFirewall"),
	// 						FirewallPolicyResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/firewallPolicies/TestFirewallPolicy"),
	// 						Designation: to.Ptr(armenclave.DesignationPooled),
	// 					},
	// 					Tags: map[string]*string{
	// 						"environment": to.Ptr("test"),
	// 					},
	// 					SystemData: &armenclave.SystemData{
	// 						CreatedBy: to.Ptr("myAlias"),
	// 						CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 						CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 						LastModifiedBy: to.Ptr("myAlias"),
	// 						LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 						LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 					},
	// 				},
	// 			},
	// 			MonitoringSettings: &armenclave.MonitoringSettingsModel{
	// 				DiagnosticDestinations: []*armenclave.MonitoringDestination{
	// 					{
	// 						DestinationType: to.Ptr(armenclave.MonitoringDestinationTypeCommunityWorkspace),
	// 					},
	// 					{
	// 						DestinationType: to.Ptr(armenclave.MonitoringDestinationTypeEnclaveWorkspace),
	// 						DiagnosticSettingsName: to.Ptr("customName"),
	// 					},
	// 					{
	// 						DestinationType: to.Ptr(armenclave.MonitoringDestinationTypeCustomWorkspace),
	// 						CustomWorkspaceResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.OperationalInsights/workspaces/CustomWorkspace"),
	// 						DiagnosticSettingsName: to.Ptr("customName"),
	// 					},
	// 					{
	// 						DestinationType: to.Ptr(armenclave.MonitoringDestinationTypeCustomWorkspace),
	// 						CustomWorkspaceResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.OperationalInsights/workspaces/CustomWorkspace"),
	// 						DiagnosticSettingsName: to.Ptr("customName"),
	// 					},
	// 				},
	// 				FlowLogDestination: &armenclave.MonitoringDestination{
	// 					DestinationType: to.Ptr(armenclave.MonitoringDestinationTypeCustomWorkspace),
	// 					CustomWorkspaceResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.OperationalInsights/workspaces/CustomWorkspace"),
	// 					DiagnosticSettingsName: to.Ptr("customName"),
	// 				},
	// 			},
	// 			AddressSpaces: []*string{
	// 				to.Ptr("10.0.0.0/16"),
	// 				to.Ptr("10.1.0.0/16"),
	// 			},
	// 		},
	// 		Tags: map[string]*string{
	// 			"sampletag": to.Ptr("samplevalue"),
	// 		},
	// 		Location: to.Ptr("westcentralus"),
	// 		ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/testrg/providers/Microsoft.Mission/communities/TestMyCommunity"),
	// 		Name: to.Ptr("TestMyCommunity"),
	// 		Type: to.Ptr("Microsoft.Mission/communities"),
	// 		SystemData: &armenclave.SystemData{
	// 			CreatedBy: to.Ptr("myAlias"),
	// 			CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("myAlias"),
	// 			LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 		},
	// 	},
	// }
}

// Generated from example definition: 2026-03-01-preview/Community_ListByResourceGroup.json
func ExampleCommunityClient_NewListByResourceGroupPager() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armenclave.NewClientFactory("CA1CB369-DD26-4DB2-9D43-9AFEF0F22093", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewCommunityClient().NewListByResourceGroupPager("rgopenapi", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armenclave.CommunityClientListByResourceGroupResponse{
		// 	CommunityResourceListResult: armenclave.CommunityResourceListResult{
		// 		Value: []*armenclave.CommunityResource{
		// 			{
		// 				Identity: &armenclave.ManagedServiceIdentity{
		// 					Type: to.Ptr(armenclave.ManagedServiceIdentityTypeSystemAssignedUserAssigned),
		// 					PrincipalID: to.Ptr("1a2e532b-9900-414c-8600-cfc6126628d7"),
		// 					TenantID: to.Ptr("f686d426-8d16-42db-81b7-ab578e110ccd"),
		// 					UserAssignedIdentities: map[string]*armenclave.UserAssignedIdentity{
		// 						"/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": &armenclave.UserAssignedIdentity{
		// 							PrincipalID: to.Ptr("f4aa4954-a564-4933-a7e1-502019d807c2"),
		// 							ClientID: to.Ptr("b82bf757-ee7f-4632-9df1-5e52a720fdd2"),
		// 						},
		// 					},
		// 				},
		// 				Properties: &armenclave.CommunityProperties{
		// 					AddressSpace: to.Ptr("10.0.0.0/24"),
		// 					DNSServers: []*string{
		// 						to.Ptr("azure.net"),
		// 					},
		// 					ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
		// 					ResourceCollection: []*string{
		// 						to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestMyRg"),
		// 					},
		// 					GovernedServiceList: []*armenclave.GovernedServiceItem{
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierAKS),
		// 							ServiceName: to.Ptr("AKS"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("d300338e-65d1-4be3-b18e-fb4ce5715a8f"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierAppService),
		// 							ServiceName: to.Ptr("App Service"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("528d78c5-246c-4f26-ade6-d30798705411"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierContainerRegistry),
		// 							ServiceName: to.Ptr("Container Registry"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("b3fe25eb-cdc6-475f-96a5-04ac270f630d"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierCosmosDB),
		// 							ServiceName: to.Ptr("CosmosDB"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("6bd484ca-ae8d-46cf-9b33-e1feef84bfba"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierKeyVault),
		// 							ServiceName: to.Ptr("Key Vault"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("4f4dba0f-a5ee-494b-8df7-f9727dea6f37"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierMicrosoftSQL),
		// 							ServiceName: to.Ptr("Microsoft SQL"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("0fbe78a5-1722-4f1b-83a5-89c14151fa60"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierMonitoring),
		// 							ServiceName: to.Ptr("Monitoring"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOption("Not Applicable")),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("0a9ea1cb-7925-47fc-b0fe-8bb0a8190423"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierPostgreSQL),
		// 							ServiceName: to.Ptr("PostgreSQL"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("5eaa16b4-81f2-4354-aef3-2d77288e396e"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierServiceBus),
		// 							ServiceName: to.Ptr("Service Bus"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("8fcdb3f1-1369-426d-9917-81edfee903ab"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierStorage),
		// 							ServiceName: to.Ptr("Storage"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("ca122c06-05f6-4423-9018-ccb523168eb2"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierAzureFirewalls),
		// 							ServiceName: to.Ptr("Azure Firewalls"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierInsights),
		// 							ServiceName: to.Ptr("Insights"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierLogic),
		// 							ServiceName: to.Ptr("Logic"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierPrivateDNSZones),
		// 							ServiceName: to.Ptr("Private DNS Zones"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierDataConnectors),
		// 							ServiceName: to.Ptr("Data Connectors"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 					},
		// 					CommunityRoleAssignments: []*armenclave.RoleAssignmentItem{
		// 						{
		// 							RoleDefinitionID: to.Ptr("b24988ac-6180-42a0-ab88-20f7382dd24c"),
		// 							Principals: []*armenclave.Principal{
		// 								{
		// 									ID: to.Ptr("01234567-89ab-ef01-2345-0123456789ab"),
		// 									Type: to.Ptr(armenclave.PrincipalTypeGroup),
		// 								},
		// 								{
		// 									ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c0"),
		// 									Type: to.Ptr(armenclave.PrincipalTypeUser),
		// 								},
		// 							},
		// 							Condition: to.Ptr("@RoleDefinition.Name StringNotEquals 'Owner'"),
		// 						},
		// 						{
		// 							RoleDefinitionID: to.Ptr("18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"),
		// 							Principals: []*armenclave.Principal{
		// 								{
		// 									ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
		// 									Type: to.Ptr(armenclave.PrincipalTypeUser),
		// 								},
		// 							},
		// 						},
		// 					},
		// 					MaintenanceModeConfiguration: &armenclave.MaintenanceModeConfigurationModel{
		// 						Mode: to.Ptr(armenclave.MaintenanceModeConfigurationModelModeOff),
		// 						Principals: []*armenclave.Principal{
		// 							{
		// 								ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
		// 								Type: to.Ptr(armenclave.PrincipalTypeUser),
		// 							},
		// 						},
		// 						Justification: to.Ptr(armenclave.MaintenanceModeConfigurationModelJustificationOff),
		// 					},
		// 					FirewallSKU: to.Ptr(armenclave.FirewallSKUStandard),
		// 					DedicatedHubList: []*armenclave.DedicatedHubResource{
		// 						{
		// 							ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.Mission/communities/TestMyCommunity/dedicatedHubs/TestDedicatedHub"),
		// 							Name: to.Ptr("TestDedicatedHub"),
		// 							Type: to.Ptr("Microsoft.Mission/communities/dedicatedHubs"),
		// 							Location: to.Ptr("westcentralus"),
		// 							Properties: &armenclave.DedicatedHubProperties{
		// 								ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
		// 								VHubResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/virtualHubs/TestVirtualHub"),
		// 								FirewallResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/azureFirewalls/TestFirewall"),
		// 								FirewallPolicyResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/firewallPolicies/TestFirewallPolicy"),
		// 								Designation: to.Ptr(armenclave.DesignationPooled),
		// 							},
		// 							Tags: map[string]*string{
		// 								"environment": to.Ptr("test"),
		// 							},
		// 							SystemData: &armenclave.SystemData{
		// 								CreatedBy: to.Ptr("myAlias"),
		// 								CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 								CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 								LastModifiedBy: to.Ptr("myAlias"),
		// 								LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 								LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 							},
		// 						},
		// 					},
		// 					AddressSpaces: []*string{
		// 						to.Ptr("10.0.0.0/16"),
		// 						to.Ptr("10.1.0.0/16"),
		// 					},
		// 				},
		// 				Tags: map[string]*string{
		// 					"sampletag": to.Ptr("samplevalue"),
		// 				},
		// 				Location: to.Ptr("westcentralus"),
		// 				ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/testrg/providers/Microsoft.Mission/communities/TestMyCommunity"),
		// 				Name: to.Ptr("TestMyCommunity"),
		// 				Type: to.Ptr("Microsoft.Mission/communities"),
		// 				SystemData: &armenclave.SystemData{
		// 					CreatedBy: to.Ptr("myAlias"),
		// 					CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("myAlias"),
		// 					LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 				},
		// 			},
		// 		},
		// 		NextLink: to.Ptr("https://microsoft.com/a"),
		// 	},
		// }
	}
}

// Generated from example definition: 2026-03-01-preview/Community_ListBySubscription.json
func ExampleCommunityClient_NewListBySubscriptionPager() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armenclave.NewClientFactory("CA1CB369-DD26-4DB2-9D43-9AFEF0F22093", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewCommunityClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armenclave.CommunityClientListBySubscriptionResponse{
		// 	CommunityResourceListResult: armenclave.CommunityResourceListResult{
		// 		Value: []*armenclave.CommunityResource{
		// 			{
		// 				Identity: &armenclave.ManagedServiceIdentity{
		// 					Type: to.Ptr(armenclave.ManagedServiceIdentityTypeSystemAssignedUserAssigned),
		// 					PrincipalID: to.Ptr("1a2e532b-9900-414c-8600-cfc6126628d7"),
		// 					TenantID: to.Ptr("f686d426-8d16-42db-81b7-ab578e110ccd"),
		// 					UserAssignedIdentities: map[string]*armenclave.UserAssignedIdentity{
		// 						"/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": &armenclave.UserAssignedIdentity{
		// 							PrincipalID: to.Ptr("f4aa4954-a564-4933-a7e1-502019d807c2"),
		// 							ClientID: to.Ptr("b82bf757-ee7f-4632-9df1-5e52a720fdd2"),
		// 						},
		// 					},
		// 				},
		// 				Properties: &armenclave.CommunityProperties{
		// 					AddressSpace: to.Ptr("10.0.0.0/24"),
		// 					DNSServers: []*string{
		// 						to.Ptr("azure.net"),
		// 					},
		// 					ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
		// 					ResourceCollection: []*string{
		// 						to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestMyRg"),
		// 					},
		// 					GovernedServiceList: []*armenclave.GovernedServiceItem{
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierAKS),
		// 							ServiceName: to.Ptr("AKS"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("d300338e-65d1-4be3-b18e-fb4ce5715a8f"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierAppService),
		// 							ServiceName: to.Ptr("App Service"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("528d78c5-246c-4f26-ade6-d30798705411"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierContainerRegistry),
		// 							ServiceName: to.Ptr("Container Registry"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("b3fe25eb-cdc6-475f-96a5-04ac270f630d"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierCosmosDB),
		// 							ServiceName: to.Ptr("CosmosDB"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("6bd484ca-ae8d-46cf-9b33-e1feef84bfba"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierKeyVault),
		// 							ServiceName: to.Ptr("Key Vault"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("4f4dba0f-a5ee-494b-8df7-f9727dea6f37"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierMicrosoftSQL),
		// 							ServiceName: to.Ptr("Microsoft SQL"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("0fbe78a5-1722-4f1b-83a5-89c14151fa60"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierMonitoring),
		// 							ServiceName: to.Ptr("Monitoring"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOption("Not Applicable")),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("0a9ea1cb-7925-47fc-b0fe-8bb0a8190423"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierPostgreSQL),
		// 							ServiceName: to.Ptr("PostgreSQL"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("5eaa16b4-81f2-4354-aef3-2d77288e396e"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierServiceBus),
		// 							ServiceName: to.Ptr("Service Bus"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("8fcdb3f1-1369-426d-9917-81edfee903ab"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierStorage),
		// 							ServiceName: to.Ptr("Storage"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 								to.Ptr("ca122c06-05f6-4423-9018-ccb523168eb2"),
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierAzureFirewalls),
		// 							ServiceName: to.Ptr("Azure Firewalls"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierInsights),
		// 							ServiceName: to.Ptr("Insights"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierLogic),
		// 							ServiceName: to.Ptr("Logic"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierPrivateDNSZones),
		// 							ServiceName: to.Ptr("Private DNS Zones"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 						{
		// 							ServiceID: to.Ptr(armenclave.ServiceIdentifierDataConnectors),
		// 							ServiceName: to.Ptr("Data Connectors"),
		// 							Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
		// 							Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
		// 							PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
		// 							Initiatives: []*string{
		// 							},
		// 						},
		// 					},
		// 					CommunityRoleAssignments: []*armenclave.RoleAssignmentItem{
		// 						{
		// 							RoleDefinitionID: to.Ptr("b24988ac-6180-42a0-ab88-20f7382dd24c"),
		// 							Principals: []*armenclave.Principal{
		// 								{
		// 									ID: to.Ptr("01234567-89ab-ef01-2345-0123456789ab"),
		// 									Type: to.Ptr(armenclave.PrincipalTypeGroup),
		// 								},
		// 								{
		// 									ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c0"),
		// 									Type: to.Ptr(armenclave.PrincipalTypeUser),
		// 								},
		// 							},
		// 							Condition: to.Ptr("@RoleDefinition.Name StringNotEquals 'Owner'"),
		// 						},
		// 						{
		// 							RoleDefinitionID: to.Ptr("18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"),
		// 							Principals: []*armenclave.Principal{
		// 								{
		// 									ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
		// 									Type: to.Ptr(armenclave.PrincipalTypeUser),
		// 								},
		// 							},
		// 						},
		// 					},
		// 					MaintenanceModeConfiguration: &armenclave.MaintenanceModeConfigurationModel{
		// 						Mode: to.Ptr(armenclave.MaintenanceModeConfigurationModelModeOff),
		// 						Principals: []*armenclave.Principal{
		// 							{
		// 								ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
		// 								Type: to.Ptr(armenclave.PrincipalTypeUser),
		// 							},
		// 						},
		// 						Justification: to.Ptr(armenclave.MaintenanceModeConfigurationModelJustificationOff),
		// 					},
		// 					FirewallSKU: to.Ptr(armenclave.FirewallSKUStandard),
		// 					DedicatedHubList: []*armenclave.DedicatedHubResource{
		// 						{
		// 							ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.Mission/communities/TestMyCommunity/dedicatedHubs/TestDedicatedHub"),
		// 							Name: to.Ptr("TestDedicatedHub"),
		// 							Type: to.Ptr("Microsoft.Mission/communities/dedicatedHubs"),
		// 							Location: to.Ptr("westcentralus"),
		// 							Properties: &armenclave.DedicatedHubProperties{
		// 								ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
		// 								VHubResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/virtualHubs/TestVirtualHub"),
		// 								FirewallResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/azureFirewalls/TestFirewall"),
		// 								FirewallPolicyResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/firewallPolicies/TestFirewallPolicy"),
		// 								Designation: to.Ptr(armenclave.DesignationPooled),
		// 							},
		// 							Tags: map[string]*string{
		// 								"environment": to.Ptr("test"),
		// 							},
		// 							SystemData: &armenclave.SystemData{
		// 								CreatedBy: to.Ptr("myAlias"),
		// 								CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 								CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 								LastModifiedBy: to.Ptr("myAlias"),
		// 								LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 								LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 							},
		// 						},
		// 					},
		// 					AddressSpaces: []*string{
		// 						to.Ptr("10.0.0.0/16"),
		// 						to.Ptr("10.1.0.0/16"),
		// 					},
		// 				},
		// 				Tags: map[string]*string{
		// 					"sampletag": to.Ptr("samplevalue"),
		// 				},
		// 				Location: to.Ptr("westcentralus"),
		// 				ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/testrg/providers/Microsoft.Mission/communities/TestMyCommunity"),
		// 				Name: to.Ptr("TestMyCommunity"),
		// 				Type: to.Ptr("Microsoft.Mission/communities"),
		// 				SystemData: &armenclave.SystemData{
		// 					CreatedBy: to.Ptr("myAlias"),
		// 					CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("myAlias"),
		// 					LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
		// 				},
		// 			},
		// 		},
		// 		NextLink: to.Ptr("https://microsoft.com/a"),
		// 	},
		// }
	}
}

// Generated from example definition: 2026-03-01-preview/Community_Update.json
func ExampleCommunityClient_BeginUpdate() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armenclave.NewClientFactory("CA1CB369-DD26-4DB2-9D43-9AFEF0F22093", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCommunityClient().BeginUpdate(ctx, "rgopenapi", "TestMyCommunity", armenclave.CommunityPatchModel{
		Tags: map[string]*string{
			"sampletag": to.Ptr("samplevalue"),
		},
		Properties: &armenclave.CommunityPatchProperties{
			DNSServers: []*string{
				to.Ptr("azure.net"),
			},
			GovernedServiceList: []*armenclave.GovernedServiceItem{
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierAKS),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierAppService),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierContainerRegistry),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierCosmosDB),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierKeyVault),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierMicrosoftSQL),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierMonitoring),
					Option:       to.Ptr(armenclave.GovernedServiceItemOption("Not Applicable")),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierPostgreSQL),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierServiceBus),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierStorage),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierAzureFirewalls),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierInsights),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierLogic),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierPrivateDNSZones),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
				{
					ServiceID:    to.Ptr(armenclave.ServiceIdentifierDataConnectors),
					Option:       to.Ptr(armenclave.GovernedServiceItemOptionAllow),
					Enforcement:  to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
				},
			},
			CommunityRoleAssignments: []*armenclave.RoleAssignmentItem{
				{
					RoleDefinitionID: to.Ptr("b24988ac-6180-42a0-ab88-20f7382dd24c"),
					Principals: []*armenclave.Principal{
						{
							ID:   to.Ptr("01234567-89ab-ef01-2345-0123456789ab"),
							Type: to.Ptr(armenclave.PrincipalTypeGroup),
						},
						{
							ID:   to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c0"),
							Type: to.Ptr(armenclave.PrincipalTypeUser),
						},
					},
					Condition: to.Ptr("@RoleDefinition.Name StringNotEquals 'Owner'"),
				},
				{
					RoleDefinitionID: to.Ptr("18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"),
					Principals: []*armenclave.Principal{
						{
							ID:   to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
							Type: to.Ptr(armenclave.PrincipalTypeUser),
						},
					},
				},
			},
			GranularApprovalSettings: &armenclave.ApprovalSettingsPatchProperties{
				CommunityEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](2),
					MandatoryApprovers: []*armenclave.MandatoryApprover{
						{
							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000001"),
						},
					},
				},
				EnclaveEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](1),
				},
				EnclaveCreation: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](1),
				},
				ConnectionCreation: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](1),
				},
				ConnectionUpdate: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
				},
				CommunityMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy:           to.Ptr(armenclave.ApprovalPolicyRequired),
					MinimumApproversRequired: to.Ptr[int32](2),
					MandatoryApprovers: []*armenclave.MandatoryApprover{
						{
							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000003"),
						},
						{
							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000004"),
						},
					},
				},
				EnclaveMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armenclave.CommunityClientUpdateResponse{
	// 	CommunityResource: armenclave.CommunityResource{
	// 		Identity: &armenclave.ManagedServiceIdentity{
	// 			Type: to.Ptr(armenclave.ManagedServiceIdentityTypeSystemAssignedUserAssigned),
	// 			PrincipalID: to.Ptr("1a2e532b-9900-414c-8600-cfc6126628d7"),
	// 			TenantID: to.Ptr("f686d426-8d16-42db-81b7-ab578e110ccd"),
	// 			UserAssignedIdentities: map[string]*armenclave.UserAssignedIdentity{
	// 				"/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": &armenclave.UserAssignedIdentity{
	// 					PrincipalID: to.Ptr("f4aa4954-a564-4933-a7e1-502019d807c2"),
	// 					ClientID: to.Ptr("b82bf757-ee7f-4632-9df1-5e52a720fdd2"),
	// 				},
	// 			},
	// 		},
	// 		Properties: &armenclave.CommunityProperties{
	// 			AddressSpace: to.Ptr("10.0.0.0/24"),
	// 			DNSServers: []*string{
	// 				to.Ptr("azure.net"),
	// 			},
	// 			ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
	// 			ResourceCollection: []*string{
	// 				to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestMyRg"),
	// 			},
	// 			GovernedServiceList: []*armenclave.GovernedServiceItem{
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAKS),
	// 					ServiceName: to.Ptr("AKS"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("d300338e-65d1-4be3-b18e-fb4ce5715a8f"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAppService),
	// 					ServiceName: to.Ptr("App Service"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("528d78c5-246c-4f26-ade6-d30798705411"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierContainerRegistry),
	// 					ServiceName: to.Ptr("Container Registry"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("b3fe25eb-cdc6-475f-96a5-04ac270f630d"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierCosmosDB),
	// 					ServiceName: to.Ptr("CosmosDB"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("6bd484ca-ae8d-46cf-9b33-e1feef84bfba"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierKeyVault),
	// 					ServiceName: to.Ptr("Key Vault"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("4f4dba0f-a5ee-494b-8df7-f9727dea6f37"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierMicrosoftSQL),
	// 					ServiceName: to.Ptr("Microsoft SQL"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("0fbe78a5-1722-4f1b-83a5-89c14151fa60"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierMonitoring),
	// 					ServiceName: to.Ptr("Monitoring"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOption("Not Applicable")),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("0a9ea1cb-7925-47fc-b0fe-8bb0a8190423"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierPostgreSQL),
	// 					ServiceName: to.Ptr("PostgreSQL"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("5eaa16b4-81f2-4354-aef3-2d77288e396e"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierServiceBus),
	// 					ServiceName: to.Ptr("Service Bus"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("8fcdb3f1-1369-426d-9917-81edfee903ab"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierStorage),
	// 					ServiceName: to.Ptr("Storage"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 						to.Ptr("ca122c06-05f6-4423-9018-ccb523168eb2"),
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierAzureFirewalls),
	// 					ServiceName: to.Ptr("Azure Firewalls"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierInsights),
	// 					ServiceName: to.Ptr("Insights"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierLogic),
	// 					ServiceName: to.Ptr("Logic"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierPrivateDNSZones),
	// 					ServiceName: to.Ptr("Private DNS Zones"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 				{
	// 					ServiceID: to.Ptr(armenclave.ServiceIdentifierDataConnectors),
	// 					ServiceName: to.Ptr("Data Connectors"),
	// 					Option: to.Ptr(armenclave.GovernedServiceItemOptionAllow),
	// 					Enforcement: to.Ptr(armenclave.GovernedServiceItemEnforcementEnabled),
	// 					PolicyAction: to.Ptr(armenclave.GovernedServiceItemPolicyActionNone),
	// 					Initiatives: []*string{
	// 					},
	// 				},
	// 			},
	// 			CommunityRoleAssignments: []*armenclave.RoleAssignmentItem{
	// 				{
	// 					RoleDefinitionID: to.Ptr("b24988ac-6180-42a0-ab88-20f7382dd24c"),
	// 					Principals: []*armenclave.Principal{
	// 						{
	// 							ID: to.Ptr("01234567-89ab-ef01-2345-0123456789ab"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeGroup),
	// 						},
	// 						{
	// 							ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c0"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 						},
	// 					},
	// 					Condition: to.Ptr("@RoleDefinition.Name StringNotEquals 'Owner'"),
	// 				},
	// 				{
	// 					RoleDefinitionID: to.Ptr("18d7d88d-d35e-4fb5-a5c3-7773c20a72d9"),
	// 					Principals: []*armenclave.Principal{
	// 						{
	// 							ID: to.Ptr("355a6bb0-abc0-4cba-000d-12a345b678c9"),
	// 							Type: to.Ptr(armenclave.PrincipalTypeUser),
	// 						},
	// 					},
	// 				},
	// 			},
	// 			DedicatedHubList: []*armenclave.DedicatedHubResource{
	// 				{
	// 					ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/rgopenapi/providers/Microsoft.Mission/communities/TestMyCommunity/dedicatedHubs/TestDedicatedHub"),
	// 					Name: to.Ptr("TestDedicatedHub"),
	// 					Type: to.Ptr("Microsoft.Mission/communities/dedicatedHubs"),
	// 					Location: to.Ptr("westcentralus"),
	// 					Properties: &armenclave.DedicatedHubProperties{
	// 						ProvisioningState: to.Ptr(armenclave.ProvisioningStateSucceeded),
	// 						VHubResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/virtualHubs/TestVirtualHub"),
	// 						FirewallResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/azureFirewalls/TestFirewall"),
	// 						FirewallPolicyResourceID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/TestResourceGroup/providers/Microsoft.Network/firewallPolicies/TestFirewallPolicy"),
	// 						Designation: to.Ptr(armenclave.DesignationReserved),
	// 					},
	// 					Tags: map[string]*string{
	// 						"environment": to.Ptr("test"),
	// 					},
	// 					SystemData: &armenclave.SystemData{
	// 						CreatedBy: to.Ptr("myAlias"),
	// 						CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 						CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 						LastModifiedBy: to.Ptr("myAlias"),
	// 						LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 						LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 					},
	// 				},
	// 			},
	// 			GranularApprovalSettings: &armenclave.ApprovalSettings{
	// 				CommunityEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](2),
	// 					MandatoryApprovers: []*armenclave.MandatoryApprover{
	// 						{
	// 							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000001"),
	// 						},
	// 					},
	// 				},
	// 				EnclaveEndpointUpdate: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](1),
	// 				},
	// 				EnclaveCreation: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](1),
	// 				},
	// 				ConnectionCreation: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](1),
	// 				},
	// 				ConnectionUpdate: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
	// 				},
	// 				CommunityMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyRequired),
	// 					MinimumApproversRequired: to.Ptr[int32](2),
	// 					MandatoryApprovers: []*armenclave.MandatoryApprover{
	// 						{
	// 							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000003"),
	// 						},
	// 						{
	// 							ApproverEntraID: to.Ptr("00000000-0000-0000-0000-000000000004"),
	// 						},
	// 					},
	// 				},
	// 				EnclaveMaintenanceMode: &armenclave.ApprovalSettingConfiguration{
	// 					ApprovalPolicy: to.Ptr(armenclave.ApprovalPolicyNotRequired),
	// 				},
	// 			},
	// 		},
	// 		Tags: map[string]*string{
	// 			"sampletag": to.Ptr("samplevalue"),
	// 		},
	// 		Location: to.Ptr("westcentralus"),
	// 		ID: to.Ptr("/subscriptions/c64f6eca-bdc5-4bc2-88d6-f8f1dc23f86c/resourceGroups/testrg/providers/Microsoft.Mission/communities/TestMyCommunity"),
	// 		Name: to.Ptr("TestMyCommunity"),
	// 		Type: to.Ptr("Microsoft.Mission/communities"),
	// 		SystemData: &armenclave.SystemData{
	// 			CreatedBy: to.Ptr("myAlias"),
	// 			CreatedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("myAlias"),
	// 			LastModifiedByType: to.Ptr(armenclave.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-03-17T20:43:17.760Z"); return t}()),
	// 		},
	// 	},
	// }
}
