//go:build go1.18
// +build go1.18

// 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) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
// DO NOT EDIT.

package armproviderhub_test

import (
	"context"
	"log"

	"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/providerhub/armproviderhub/v2"
)

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/7611bb6c9bad11244f4351eecfc50b2c46a86fde/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Get.json
func ExampleResourceTypeRegistrationsClient_Get() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armproviderhub.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewResourceTypeRegistrationsClient().Get(ctx, "Microsoft.Contoso", "employees", 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.ResourceTypeRegistration = armproviderhub.ResourceTypeRegistration{
	// 	Name: to.Ptr("Microsoft.Contoso/employees"),
	// 	Type: to.Ptr("Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations"),
	// 	ID: to.Ptr("/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees"),
	// 	SystemData: &armproviderhub.SystemData{
	// 		CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
	// 		CreatedBy: to.Ptr("string"),
	// 		CreatedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
	// 		LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
	// 		LastModifiedBy: to.Ptr("string"),
	// 		LastModifiedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
	// 	},
	// 	Properties: &armproviderhub.ResourceTypeRegistrationProperties{
	// 		CrossTenantTokenValidation: to.Ptr(armproviderhub.CrossTenantTokenValidationEnsureSecureValidation),
	// 		EnableAsyncOperation: to.Ptr(false),
	// 		EnableThirdPartyS2S: to.Ptr(false),
	// 		Endpoints: []*armproviderhub.ResourceTypeEndpoint{
	// 			{
	// 				APIVersions: []*string{
	// 					to.Ptr("2018-11-01-preview"),
	// 					to.Ptr("2020-01-01-preview"),
	// 					to.Ptr("2019-01-01")},
	// 					Locations: []*string{
	// 						to.Ptr("East Asia"),
	// 						to.Ptr("East US"),
	// 						to.Ptr("North Europe"),
	// 						to.Ptr("Southeast Asia"),
	// 						to.Ptr("East US 2 EUAP"),
	// 						to.Ptr("Central US EUAP"),
	// 						to.Ptr("West Europe"),
	// 						to.Ptr("West US"),
	// 						to.Ptr("West Central US"),
	// 						to.Ptr("West US 2")},
	// 						RequiredFeatures: []*string{
	// 							to.Ptr("Microsoft.Contoso/RPaaSSampleApp")},
	// 					}},
	// 					Management: &armproviderhub.ResourceTypeRegistrationPropertiesManagement{
	// 						AuthorizationOwners: []*string{
	// 							to.Ptr("RPAAS-PlatformServiceAdministrator")},
	// 							IncidentContactEmail: to.Ptr("helpme@contoso.com"),
	// 							IncidentRoutingService: to.Ptr(""),
	// 							IncidentRoutingTeam: to.Ptr(""),
	// 							ManifestOwners: []*string{
	// 								to.Ptr("SPARTA-PlatformServiceAdministrator")},
	// 								ResourceAccessPolicy: to.Ptr(armproviderhub.ResourceAccessPolicyNotSpecified),
	// 								ServiceTreeInfos: []*armproviderhub.ServiceTreeInfo{
	// 									{
	// 										ComponentID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
	// 										Readiness: to.Ptr(armproviderhub.ReadinessInDevelopment),
	// 										ServiceID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
	// 								}},
	// 							},
	// 							Metadata: map[string]any{
	// 							},
	// 							Notifications: []*armproviderhub.Notification{
	// 								{
	// 									NotificationType: to.Ptr(armproviderhub.NotificationTypeSubscriptionNotification),
	// 									SkipNotifications: to.Ptr(armproviderhub.SkipNotificationsDisabled),
	// 							}},
	// 							OpenAPIConfiguration: &armproviderhub.OpenAPIConfiguration{
	// 								Validation: &armproviderhub.OpenAPIValidation{
	// 									AllowNoncompliantCollectionResponse: to.Ptr(false),
	// 								},
	// 							},
	// 							ProvisioningState: to.Ptr(armproviderhub.ProvisioningStateSucceeded),
	// 							Regionality: to.Ptr(armproviderhub.RegionalityRegional),
	// 							RequestHeaderOptions: &armproviderhub.ResourceTypeRegistrationPropertiesRequestHeaderOptions{
	// 								OptOutHeaders: to.Ptr(armproviderhub.OptOutHeaderTypeSystemDataCreatedByLastModifiedBy),
	// 							},
	// 							ResourceConcurrencyControlOptions: map[string]*armproviderhub.ResourceConcurrencyControlOption{
	// 								"patch": &armproviderhub.ResourceConcurrencyControlOption{
	// 									Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 								},
	// 								"post": &armproviderhub.ResourceConcurrencyControlOption{
	// 									Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 								},
	// 								"put": &armproviderhub.ResourceConcurrencyControlOption{
	// 									Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 								},
	// 							},
	// 							ResourceGraphConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesResourceGraphConfiguration{
	// 								APIVersion: to.Ptr("2019-01-01"),
	// 								Enabled: to.Ptr(true),
	// 							},
	// 							RoutingType: to.Ptr(armproviderhub.RoutingTypeDefault),
	// 							SwaggerSpecifications: []*armproviderhub.SwaggerSpecification{
	// 								{
	// 									APIVersions: []*string{
	// 										to.Ptr("2018-11-01-preview"),
	// 										to.Ptr("2020-01-01-preview"),
	// 										to.Ptr("2019-01-01")},
	// 										SwaggerSpecFolderURI: to.Ptr("https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/"),
	// 								}},
	// 							},
	// 						}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/7611bb6c9bad11244f4351eecfc50b2c46a86fde/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectResourceTypeRegistrations_CreateOrUpdate.json
func ExampleResourceTypeRegistrationsClient_BeginCreateOrUpdate_directResourceTypeRegistrationsCreateOrUpdateJson() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armproviderhub.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewResourceTypeRegistrationsClient().BeginCreateOrUpdate(ctx, "Microsoft.Contoso", "employees", armproviderhub.ResourceTypeRegistration{
		Properties: &armproviderhub.ResourceTypeRegistrationProperties{
			AddResourceListTargetLocations: to.Ptr(true),
			AdditionalOptions:              to.Ptr(armproviderhub.AdditionalOptionsResourceTypeRegistrationProtectedAsyncOperationPolling),
			AllowEmptyRoleAssignments:      to.Ptr(false),
			AllowedResourceNames: []*armproviderhub.AllowedResourceName{
				{
					Name:          to.Ptr("name1"),
					GetActionVerb: to.Ptr("list"),
				},
				{
					Name: to.Ptr("name2"),
				}},
			AllowedTemplateDeploymentReferenceActions: []*string{
				to.Ptr("ListKeys"),
				to.Ptr("ListSAS")},
			APIProfiles: []*armproviderhub.APIProfile{
				{
					APIVersion:     to.Ptr("2018-02-01"),
					ProfileVersion: to.Ptr("2018-03-01-hybrid"),
				},
				{
					APIVersion:     to.Ptr("2016-06-01"),
					ProfileVersion: to.Ptr("2019-03-01-hybrid"),
				}},
			AsyncTimeoutRules: []*armproviderhub.AsyncTimeoutRule{
				{
					ActionName: to.Ptr("Microsoft.ClassicCompute/domainNames/write"),
					Timeout:    to.Ptr("PT12H"),
				}},
			AvailabilityZoneRule: &armproviderhub.ResourceTypeRegistrationPropertiesAvailabilityZoneRule{
				AvailabilityZonePolicy: to.Ptr(armproviderhub.AvailabilityZonePolicyMultiZoned),
			},
			CapacityRule: &armproviderhub.ResourceTypeRegistrationPropertiesCapacityRule{
				CapacityPolicy: to.Ptr(armproviderhub.CapacityPolicyRestricted),
				SKUAlias:       to.Ptr("incorrectAlias"),
			},
			CommonAPIVersions: []*string{
				to.Ptr("2021-01-01")},
			DstsConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesDstsConfiguration{
				ServiceDNSName: to.Ptr("prds.sparta.azure.com"),
				ServiceName:    to.Ptr("prds-shim"),
			},
			Endpoints: []*armproviderhub.ResourceTypeEndpoint{
				{
					APIVersions: []*string{
						to.Ptr("2020-06-01-preview")},
					Locations: []*string{
						to.Ptr("West US"),
						to.Ptr("East US"),
						to.Ptr("North Europe")},
					RequiredFeatures: []*string{
						to.Ptr("<feature flag>")},
				}},
			GroupingTag: to.Ptr("groupingTag"),
			LegacyName:  to.Ptr("legacyName"),
			LegacyNames: []*string{
				to.Ptr("legacyName")},
			LegacyPolicy: &armproviderhub.ResourceTypeRegistrationPropertiesLegacyPolicy{
				DisallowedConditions: []*armproviderhub.LegacyDisallowedCondition{
					{
						DisallowedLegacyOperations: []*armproviderhub.LegacyOperation{
							to.Ptr(armproviderhub.LegacyOperationCreate),
							to.Ptr(armproviderhub.LegacyOperationDelete)},
						Feature: to.Ptr("Microsoft.RP/ArmOnlyJobCollections"),
					}},
				DisallowedLegacyOperations: []*armproviderhub.LegacyOperation{
					to.Ptr(armproviderhub.LegacyOperationCreate)},
			},
			LinkedOperationRules: []*armproviderhub.LinkedOperationRule{
				{
					LinkedAction:    to.Ptr(armproviderhub.LinkedActionBlocked),
					LinkedOperation: to.Ptr(armproviderhub.LinkedOperationCrossSubscriptionResourceMove),
				},
				{
					LinkedAction:    to.Ptr(armproviderhub.LinkedActionValidate),
					LinkedOperation: to.Ptr(armproviderhub.LinkedOperationCrossResourceGroupResourceMove),
				}},
			Management: &armproviderhub.ResourceTypeRegistrationPropertiesManagement{
				AuthorizationOwners: []*string{
					to.Ptr("RPAAS-PlatformServiceAdministrator")},
				IncidentContactEmail:   to.Ptr("helpme@contoso.com"),
				IncidentRoutingService: to.Ptr(""),
				IncidentRoutingTeam:    to.Ptr(""),
				ManifestOwners: []*string{
					to.Ptr("SPARTA-PlatformServiceAdministrator")},
				ResourceAccessPolicy: to.Ptr(armproviderhub.ResourceAccessPolicyNotSpecified),
				ServiceTreeInfos: []*armproviderhub.ServiceTreeInfo{
					{
						ComponentID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
						Readiness:   to.Ptr(armproviderhub.ReadinessInDevelopment),
						ServiceID:   to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
					}},
			},
			ManifestLink: to.Ptr("https://azure.com"),
			MarketplaceOptions: &armproviderhub.ResourceTypeRegistrationPropertiesMarketplaceOptions{
				AddOnPlanConversionAllowed: to.Ptr(true),
			},
			Metadata: map[string]any{},
			Notifications: []*armproviderhub.Notification{
				{
					NotificationType:  to.Ptr(armproviderhub.NotificationTypeSubscriptionNotification),
					SkipNotifications: to.Ptr(armproviderhub.SkipNotificationsDisabled),
				}},
			OpenAPIConfiguration: &armproviderhub.OpenAPIConfiguration{
				Validation: &armproviderhub.OpenAPIValidation{
					AllowNoncompliantCollectionResponse: to.Ptr(true),
				},
			},
			PolicyExecutionType: to.Ptr(armproviderhub.PolicyExecutionTypeBypassPolicies),
			Regionality:         to.Ptr(armproviderhub.RegionalityRegional),
			RequestHeaderOptions: &armproviderhub.ResourceTypeRegistrationPropertiesRequestHeaderOptions{
				OptOutHeaders: to.Ptr(armproviderhub.OptOutHeaderTypeSystemDataCreatedByLastModifiedBy),
			},
			ResourceCache: &armproviderhub.ResourceTypeRegistrationPropertiesResourceCache{
				EnableResourceCache:             to.Ptr(true),
				ResourceCacheExpirationTimespan: to.Ptr("PT2M"),
			},
			ResourceConcurrencyControlOptions: map[string]*armproviderhub.ResourceConcurrencyControlOption{
				"patch": {
					Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
				},
				"post": {
					Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
				},
				"put": {
					Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
				},
			},
			ResourceGraphConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesResourceGraphConfiguration{
				APIVersion: to.Ptr("2019-01-01"),
				Enabled:    to.Ptr(true),
			},
			ResourceManagementOptions: &armproviderhub.ResourceTypeRegistrationPropertiesResourceManagementOptions{
				BatchProvisioningSupport: &armproviderhub.ResourceTypeRegistrationPropertiesResourceManagementOptionsBatchProvisioningSupport{
					SupportedOperations: to.Ptr(armproviderhub.SupportedOperations("Get, Delete")),
				},
				DeleteDependencies: []*armproviderhub.DeleteDependency{
					{
						LinkedProperty: to.Ptr("properties.edgeProfile.subscription.id"),
					}},
			},
			ResourceQueryManagement: &armproviderhub.ResourceTypeRegistrationPropertiesResourceQueryManagement{
				FilterOption: to.Ptr(armproviderhub.FilterOptionEnableSubscriptionFilterOnTenant),
			},
			ResourceTypeCommonAttributeManagement: &armproviderhub.ResourceTypeRegistrationPropertiesResourceTypeCommonAttributeManagement{
				CommonAPIVersionsMergeMode: to.Ptr(armproviderhub.CommonAPIVersionsMergeModeMerge),
			},
			RoutingRule: &armproviderhub.ResourceTypeRegistrationPropertiesRoutingRule{
				HostResourceType: to.Ptr("servers/databases"),
			},
			RoutingType:  to.Ptr(armproviderhub.RoutingTypeDefault),
			SupportsTags: to.Ptr(true),
			SwaggerSpecifications: []*armproviderhub.SwaggerSpecification{
				{
					APIVersions: []*string{
						to.Ptr("2020-06-01-preview")},
					SwaggerSpecFolderURI: to.Ptr("https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/"),
				}},
			TemplateDeploymentPolicy: &armproviderhub.ResourceTypeRegistrationPropertiesTemplateDeploymentPolicy{
				Capabilities:           to.Ptr(armproviderhub.TemplateDeploymentCapabilitiesPreflight),
				PreflightNotifications: to.Ptr(armproviderhub.TemplateDeploymentPreflightNotificationsNone),
				PreflightOptions:       to.Ptr(armproviderhub.TemplateDeploymentPreflightOptions("ValidationRequests, DeploymentRequests")),
			},
		},
	}, 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 pull 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.ResourceTypeRegistration = armproviderhub.ResourceTypeRegistration{
	// 	Name: to.Ptr("Microsoft.Contoso/employees"),
	// 	Type: to.Ptr("Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations"),
	// 	ID: to.Ptr("/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees"),
	// 	SystemData: &armproviderhub.SystemData{
	// 		CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
	// 		CreatedBy: to.Ptr("string"),
	// 		CreatedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
	// 		LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
	// 		LastModifiedBy: to.Ptr("string"),
	// 		LastModifiedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
	// 	},
	// 	Properties: &armproviderhub.ResourceTypeRegistrationProperties{
	// 		AddResourceListTargetLocations: to.Ptr(true),
	// 		AdditionalOptions: to.Ptr(armproviderhub.AdditionalOptionsResourceTypeRegistrationProtectedAsyncOperationPolling),
	// 		AllowEmptyRoleAssignments: to.Ptr(false),
	// 		AllowedResourceNames: []*armproviderhub.AllowedResourceName{
	// 			{
	// 				Name: to.Ptr("name1"),
	// 				GetActionVerb: to.Ptr("list"),
	// 			},
	// 			{
	// 				Name: to.Ptr("name2"),
	// 		}},
	// 		AllowedTemplateDeploymentReferenceActions: []*string{
	// 			to.Ptr("ListKeys"),
	// 			to.Ptr("ListSAS")},
	// 			APIProfiles: []*armproviderhub.APIProfile{
	// 				{
	// 					APIVersion: to.Ptr("2018-02-01"),
	// 					ProfileVersion: to.Ptr("2018-03-01-hybrid"),
	// 				},
	// 				{
	// 					APIVersion: to.Ptr("2016-06-01"),
	// 					ProfileVersion: to.Ptr("2019-03-01-hybrid"),
	// 			}},
	// 			AsyncTimeoutRules: []*armproviderhub.AsyncTimeoutRule{
	// 				{
	// 					ActionName: to.Ptr("Microsoft.ClassicCompute/domainNames/write"),
	// 					Timeout: to.Ptr("PT12H"),
	// 			}},
	// 			AvailabilityZoneRule: &armproviderhub.ResourceTypeRegistrationPropertiesAvailabilityZoneRule{
	// 				AvailabilityZonePolicy: to.Ptr(armproviderhub.AvailabilityZonePolicyMultiZoned),
	// 			},
	// 			CapacityRule: &armproviderhub.ResourceTypeRegistrationPropertiesCapacityRule{
	// 				CapacityPolicy: to.Ptr(armproviderhub.CapacityPolicyRestricted),
	// 				SKUAlias: to.Ptr("incorrectAlias"),
	// 			},
	// 			CommonAPIVersions: []*string{
	// 				to.Ptr("2021-01-01")},
	// 				DstsConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesDstsConfiguration{
	// 					ServiceDNSName: to.Ptr("prds.sparta.azure.com"),
	// 					ServiceName: to.Ptr("prds-shim"),
	// 				},
	// 				EnableAsyncOperation: to.Ptr(false),
	// 				EnableThirdPartyS2S: to.Ptr(false),
	// 				Endpoints: []*armproviderhub.ResourceTypeEndpoint{
	// 					{
	// 						APIVersions: []*string{
	// 							to.Ptr("2018-11-01-preview"),
	// 							to.Ptr("2020-01-01-preview"),
	// 							to.Ptr("2019-01-01")},
	// 							Locations: []*string{
	// 								to.Ptr("East Asia"),
	// 								to.Ptr("East US"),
	// 								to.Ptr("North Europe"),
	// 								to.Ptr("Southeast Asia"),
	// 								to.Ptr("East US 2 EUAP"),
	// 								to.Ptr("Central US EUAP"),
	// 								to.Ptr("West Europe"),
	// 								to.Ptr("West US"),
	// 								to.Ptr("West Central US"),
	// 								to.Ptr("West US 2")},
	// 								RequiredFeatures: []*string{
	// 									to.Ptr("Microsoft.Contoso/RPaaSSampleApp")},
	// 							}},
	// 							GroupingTag: to.Ptr("groupingTag"),
	// 							LegacyName: to.Ptr("legacyName"),
	// 							LegacyNames: []*string{
	// 								to.Ptr("legacyName")},
	// 								LegacyPolicy: &armproviderhub.ResourceTypeRegistrationPropertiesLegacyPolicy{
	// 									DisallowedConditions: []*armproviderhub.LegacyDisallowedCondition{
	// 										{
	// 											DisallowedLegacyOperations: []*armproviderhub.LegacyOperation{
	// 												to.Ptr(armproviderhub.LegacyOperationCreate),
	// 												to.Ptr(armproviderhub.LegacyOperationDelete)},
	// 												Feature: to.Ptr("Microsoft.RP/ArmOnlyJobCollections"),
	// 										}},
	// 										DisallowedLegacyOperations: []*armproviderhub.LegacyOperation{
	// 											to.Ptr(armproviderhub.LegacyOperationCreate)},
	// 										},
	// 										LinkedOperationRules: []*armproviderhub.LinkedOperationRule{
	// 											{
	// 												LinkedAction: to.Ptr(armproviderhub.LinkedActionBlocked),
	// 												LinkedOperation: to.Ptr(armproviderhub.LinkedOperationCrossSubscriptionResourceMove),
	// 											},
	// 											{
	// 												LinkedAction: to.Ptr(armproviderhub.LinkedActionValidate),
	// 												LinkedOperation: to.Ptr(armproviderhub.LinkedOperationCrossResourceGroupResourceMove),
	// 										}},
	// 										Management: &armproviderhub.ResourceTypeRegistrationPropertiesManagement{
	// 											IncidentContactEmail: to.Ptr("helpme@contoso.com"),
	// 											IncidentRoutingService: to.Ptr(""),
	// 											IncidentRoutingTeam: to.Ptr(""),
	// 											ManifestOwners: []*string{
	// 												to.Ptr("SPARTA-PlatformServiceAdministrator")},
	// 												ResourceAccessPolicy: to.Ptr(armproviderhub.ResourceAccessPolicyNotSpecified),
	// 												ServiceTreeInfos: []*armproviderhub.ServiceTreeInfo{
	// 													{
	// 														ComponentID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
	// 														Readiness: to.Ptr(armproviderhub.ReadinessInDevelopment),
	// 														ServiceID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
	// 												}},
	// 											},
	// 											ManifestLink: to.Ptr("https://azure.com"),
	// 											MarketplaceOptions: &armproviderhub.ResourceTypeRegistrationPropertiesMarketplaceOptions{
	// 												AddOnPlanConversionAllowed: to.Ptr(true),
	// 											},
	// 											Metadata: map[string]any{
	// 											},
	// 											Notifications: []*armproviderhub.Notification{
	// 												{
	// 													NotificationType: to.Ptr(armproviderhub.NotificationTypeSubscriptionNotification),
	// 													SkipNotifications: to.Ptr(armproviderhub.SkipNotificationsDisabled),
	// 											}},
	// 											OpenAPIConfiguration: &armproviderhub.OpenAPIConfiguration{
	// 												Validation: &armproviderhub.OpenAPIValidation{
	// 													AllowNoncompliantCollectionResponse: to.Ptr(true),
	// 												},
	// 											},
	// 											PolicyExecutionType: to.Ptr(armproviderhub.PolicyExecutionTypeBypassPolicies),
	// 											ProvisioningState: to.Ptr(armproviderhub.ProvisioningStateSucceeded),
	// 											Regionality: to.Ptr(armproviderhub.RegionalityRegional),
	// 											RequestHeaderOptions: &armproviderhub.ResourceTypeRegistrationPropertiesRequestHeaderOptions{
	// 												OptOutHeaders: to.Ptr(armproviderhub.OptOutHeaderTypeSystemDataCreatedByLastModifiedBy),
	// 											},
	// 											ResourceCache: &armproviderhub.ResourceTypeRegistrationPropertiesResourceCache{
	// 												EnableResourceCache: to.Ptr(true),
	// 												ResourceCacheExpirationTimespan: to.Ptr("PT2M"),
	// 											},
	// 											ResourceConcurrencyControlOptions: map[string]*armproviderhub.ResourceConcurrencyControlOption{
	// 												"patch": &armproviderhub.ResourceConcurrencyControlOption{
	// 													Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 												},
	// 												"post": &armproviderhub.ResourceConcurrencyControlOption{
	// 													Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 												},
	// 												"put": &armproviderhub.ResourceConcurrencyControlOption{
	// 													Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 												},
	// 											},
	// 											ResourceDeletionPolicy: to.Ptr(armproviderhub.ResourceDeletionPolicyCascadeDeleteProxyOnlyChildren),
	// 											ResourceGraphConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesResourceGraphConfiguration{
	// 												APIVersion: to.Ptr("2019-01-01"),
	// 												Enabled: to.Ptr(true),
	// 											},
	// 											ResourceManagementOptions: &armproviderhub.ResourceTypeRegistrationPropertiesResourceManagementOptions{
	// 												BatchProvisioningSupport: &armproviderhub.ResourceTypeRegistrationPropertiesResourceManagementOptionsBatchProvisioningSupport{
	// 													SupportedOperations: to.Ptr(armproviderhub.SupportedOperations("Get, Delete")),
	// 												},
	// 												DeleteDependencies: []*armproviderhub.DeleteDependency{
	// 													{
	// 														LinkedProperty: to.Ptr("properties.edgeProfile.subscription.id"),
	// 												}},
	// 											},
	// 											ResourceQueryManagement: &armproviderhub.ResourceTypeRegistrationPropertiesResourceQueryManagement{
	// 												FilterOption: to.Ptr(armproviderhub.FilterOptionEnableSubscriptionFilterOnTenant),
	// 											},
	// 											ResourceTypeCommonAttributeManagement: &armproviderhub.ResourceTypeRegistrationPropertiesResourceTypeCommonAttributeManagement{
	// 												CommonAPIVersionsMergeMode: to.Ptr(armproviderhub.CommonAPIVersionsMergeModeMerge),
	// 											},
	// 											RoutingRule: &armproviderhub.ResourceTypeRegistrationPropertiesRoutingRule{
	// 												HostResourceType: to.Ptr("servers/databases"),
	// 											},
	// 											RoutingType: to.Ptr(armproviderhub.RoutingTypeDefault),
	// 											SupportsTags: to.Ptr(true),
	// 											SwaggerSpecifications: []*armproviderhub.SwaggerSpecification{
	// 												{
	// 													APIVersions: []*string{
	// 														to.Ptr("2018-11-01-preview"),
	// 														to.Ptr("2020-01-01-preview"),
	// 														to.Ptr("2019-01-01")},
	// 														SwaggerSpecFolderURI: to.Ptr("https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/"),
	// 												}},
	// 												TemplateDeploymentPolicy: &armproviderhub.ResourceTypeRegistrationPropertiesTemplateDeploymentPolicy{
	// 													Capabilities: to.Ptr(armproviderhub.TemplateDeploymentCapabilitiesPreflight),
	// 													PreflightNotifications: to.Ptr(armproviderhub.TemplateDeploymentPreflightNotificationsNone),
	// 													PreflightOptions: to.Ptr(armproviderhub.TemplateDeploymentPreflightOptions("ValidationRequests, DeploymentRequests")),
	// 												},
	// 											},
	// 										}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/7611bb6c9bad11244f4351eecfc50b2c46a86fde/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_CreateOrUpdate.json
func ExampleResourceTypeRegistrationsClient_BeginCreateOrUpdate_resourceTypeRegistrationsCreateOrUpdate() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armproviderhub.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewResourceTypeRegistrationsClient().BeginCreateOrUpdate(ctx, "Microsoft.Contoso", "employees", armproviderhub.ResourceTypeRegistration{
		Properties: &armproviderhub.ResourceTypeRegistrationProperties{
			CrossTenantTokenValidation: to.Ptr(armproviderhub.CrossTenantTokenValidationEnsureSecureValidation),
			Endpoints: []*armproviderhub.ResourceTypeEndpoint{
				{
					APIVersions: []*string{
						to.Ptr("2020-06-01-preview")},
					Locations: []*string{
						to.Ptr("West US"),
						to.Ptr("East US"),
						to.Ptr("North Europe")},
					RequiredFeatures: []*string{
						to.Ptr("<feature flag>")},
				}},
			Management: &armproviderhub.ResourceTypeRegistrationPropertiesManagement{
				AuthorizationOwners: []*string{
					to.Ptr("RPAAS-PlatformServiceAdministrator")},
				IncidentContactEmail:   to.Ptr("helpme@contoso.com"),
				IncidentRoutingService: to.Ptr(""),
				IncidentRoutingTeam:    to.Ptr(""),
				ManifestOwners: []*string{
					to.Ptr("SPARTA-PlatformServiceAdministrator")},
				ResourceAccessPolicy: to.Ptr(armproviderhub.ResourceAccessPolicyNotSpecified),
				ServiceTreeInfos: []*armproviderhub.ServiceTreeInfo{
					{
						ComponentID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
						Readiness:   to.Ptr(armproviderhub.ReadinessInDevelopment),
						ServiceID:   to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
					}},
			},
			Metadata: map[string]any{},
			Notifications: []*armproviderhub.Notification{
				{
					NotificationType:  to.Ptr(armproviderhub.NotificationTypeSubscriptionNotification),
					SkipNotifications: to.Ptr(armproviderhub.SkipNotificationsDisabled),
				}},
			OpenAPIConfiguration: &armproviderhub.OpenAPIConfiguration{
				Validation: &armproviderhub.OpenAPIValidation{
					AllowNoncompliantCollectionResponse: to.Ptr(true),
				},
			},
			Regionality: to.Ptr(armproviderhub.RegionalityRegional),
			RequestHeaderOptions: &armproviderhub.ResourceTypeRegistrationPropertiesRequestHeaderOptions{
				OptOutHeaders: to.Ptr(armproviderhub.OptOutHeaderTypeSystemDataCreatedByLastModifiedBy),
			},
			ResourceConcurrencyControlOptions: map[string]*armproviderhub.ResourceConcurrencyControlOption{
				"patch": {
					Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
				},
				"post": {
					Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
				},
				"put": {
					Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
				},
			},
			ResourceGraphConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesResourceGraphConfiguration{
				APIVersion: to.Ptr("2019-01-01"),
				Enabled:    to.Ptr(true),
			},
			RoutingType: to.Ptr(armproviderhub.RoutingTypeDefault),
			SwaggerSpecifications: []*armproviderhub.SwaggerSpecification{
				{
					APIVersions: []*string{
						to.Ptr("2020-06-01-preview")},
					SwaggerSpecFolderURI: to.Ptr("https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/"),
				}},
		},
	}, 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 pull 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.ResourceTypeRegistration = armproviderhub.ResourceTypeRegistration{
	// 	Name: to.Ptr("Microsoft.Contoso/employees"),
	// 	Type: to.Ptr("Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations"),
	// 	ID: to.Ptr("/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees"),
	// 	SystemData: &armproviderhub.SystemData{
	// 		CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
	// 		CreatedBy: to.Ptr("string"),
	// 		CreatedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
	// 		LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
	// 		LastModifiedBy: to.Ptr("string"),
	// 		LastModifiedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
	// 	},
	// 	Properties: &armproviderhub.ResourceTypeRegistrationProperties{
	// 		CrossTenantTokenValidation: to.Ptr(armproviderhub.CrossTenantTokenValidationEnsureSecureValidation),
	// 		EnableAsyncOperation: to.Ptr(false),
	// 		EnableThirdPartyS2S: to.Ptr(false),
	// 		Endpoints: []*armproviderhub.ResourceTypeEndpoint{
	// 			{
	// 				APIVersions: []*string{
	// 					to.Ptr("2018-11-01-preview"),
	// 					to.Ptr("2020-01-01-preview"),
	// 					to.Ptr("2019-01-01")},
	// 					Locations: []*string{
	// 						to.Ptr("East Asia"),
	// 						to.Ptr("East US"),
	// 						to.Ptr("North Europe"),
	// 						to.Ptr("Southeast Asia"),
	// 						to.Ptr("East US 2 EUAP"),
	// 						to.Ptr("Central US EUAP"),
	// 						to.Ptr("West Europe"),
	// 						to.Ptr("West US"),
	// 						to.Ptr("West Central US"),
	// 						to.Ptr("West US 2")},
	// 						RequiredFeatures: []*string{
	// 							to.Ptr("Microsoft.Contoso/RPaaSSampleApp")},
	// 					}},
	// 					Management: &armproviderhub.ResourceTypeRegistrationPropertiesManagement{
	// 						IncidentContactEmail: to.Ptr("helpme@contoso.com"),
	// 						IncidentRoutingService: to.Ptr(""),
	// 						IncidentRoutingTeam: to.Ptr(""),
	// 						ManifestOwners: []*string{
	// 							to.Ptr("SPARTA-PlatformServiceAdministrator")},
	// 							ResourceAccessPolicy: to.Ptr(armproviderhub.ResourceAccessPolicyNotSpecified),
	// 							ServiceTreeInfos: []*armproviderhub.ServiceTreeInfo{
	// 								{
	// 									ComponentID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
	// 									Readiness: to.Ptr(armproviderhub.ReadinessInDevelopment),
	// 									ServiceID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
	// 							}},
	// 						},
	// 						Metadata: map[string]any{
	// 						},
	// 						Notifications: []*armproviderhub.Notification{
	// 							{
	// 								NotificationType: to.Ptr(armproviderhub.NotificationTypeSubscriptionNotification),
	// 								SkipNotifications: to.Ptr(armproviderhub.SkipNotificationsDisabled),
	// 						}},
	// 						OpenAPIConfiguration: &armproviderhub.OpenAPIConfiguration{
	// 							Validation: &armproviderhub.OpenAPIValidation{
	// 								AllowNoncompliantCollectionResponse: to.Ptr(true),
	// 							},
	// 						},
	// 						ProvisioningState: to.Ptr(armproviderhub.ProvisioningStateSucceeded),
	// 						Regionality: to.Ptr(armproviderhub.RegionalityRegional),
	// 						RequestHeaderOptions: &armproviderhub.ResourceTypeRegistrationPropertiesRequestHeaderOptions{
	// 							OptOutHeaders: to.Ptr(armproviderhub.OptOutHeaderTypeSystemDataCreatedByLastModifiedBy),
	// 						},
	// 						ResourceConcurrencyControlOptions: map[string]*armproviderhub.ResourceConcurrencyControlOption{
	// 							"patch": &armproviderhub.ResourceConcurrencyControlOption{
	// 								Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 							},
	// 							"post": &armproviderhub.ResourceConcurrencyControlOption{
	// 								Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 							},
	// 							"put": &armproviderhub.ResourceConcurrencyControlOption{
	// 								Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
	// 							},
	// 						},
	// 						ResourceDeletionPolicy: to.Ptr(armproviderhub.ResourceDeletionPolicyCascadeDeleteProxyOnlyChildren),
	// 						ResourceGraphConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesResourceGraphConfiguration{
	// 							APIVersion: to.Ptr("2019-01-01"),
	// 							Enabled: to.Ptr(true),
	// 						},
	// 						RoutingType: to.Ptr(armproviderhub.RoutingTypeDefault),
	// 						SwaggerSpecifications: []*armproviderhub.SwaggerSpecification{
	// 							{
	// 								APIVersions: []*string{
	// 									to.Ptr("2018-11-01-preview"),
	// 									to.Ptr("2020-01-01-preview"),
	// 									to.Ptr("2019-01-01")},
	// 									SwaggerSpecFolderURI: to.Ptr("https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/"),
	// 							}},
	// 						},
	// 					}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/7611bb6c9bad11244f4351eecfc50b2c46a86fde/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Delete.json
func ExampleResourceTypeRegistrationsClient_BeginDelete() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armproviderhub.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewResourceTypeRegistrationsClient().BeginDelete(ctx, "Microsoft.Contoso", "testResourceType", 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 pull the result: %v", err)
	}
}

// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/7611bb6c9bad11244f4351eecfc50b2c46a86fde/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_ListByProviderRegistration.json
func ExampleResourceTypeRegistrationsClient_NewListByProviderRegistrationPager() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armproviderhub.NewClientFactory("<subscription-id>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewResourceTypeRegistrationsClient().NewListByProviderRegistrationPager("Microsoft.Contoso", 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.ResourceTypeRegistrationArrayResponseWithContinuation = armproviderhub.ResourceTypeRegistrationArrayResponseWithContinuation{
		// 	Value: []*armproviderhub.ResourceTypeRegistration{
		// 		{
		// 			Name: to.Ptr("Microsoft.Contoso/employees"),
		// 			Type: to.Ptr("Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations"),
		// 			ID: to.Ptr("/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees"),
		// 			SystemData: &armproviderhub.SystemData{
		// 				CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
		// 				CreatedBy: to.Ptr("string"),
		// 				CreatedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
		// 				LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-02-01T01:01:01.107Z"); return t}()),
		// 				LastModifiedBy: to.Ptr("string"),
		// 				LastModifiedByType: to.Ptr(armproviderhub.CreatedByTypeUser),
		// 			},
		// 			Properties: &armproviderhub.ResourceTypeRegistrationProperties{
		// 				CrossTenantTokenValidation: to.Ptr(armproviderhub.CrossTenantTokenValidationEnsureSecureValidation),
		// 				EnableAsyncOperation: to.Ptr(false),
		// 				EnableThirdPartyS2S: to.Ptr(false),
		// 				Endpoints: []*armproviderhub.ResourceTypeEndpoint{
		// 					{
		// 						APIVersions: []*string{
		// 							to.Ptr("2018-11-01-preview"),
		// 							to.Ptr("2020-01-01-preview"),
		// 							to.Ptr("2019-01-01")},
		// 							Locations: []*string{
		// 								to.Ptr("East Asia"),
		// 								to.Ptr("East US"),
		// 								to.Ptr("North Europe"),
		// 								to.Ptr("Southeast Asia"),
		// 								to.Ptr("East US 2 EUAP"),
		// 								to.Ptr("Central US EUAP"),
		// 								to.Ptr("West Europe"),
		// 								to.Ptr("West US"),
		// 								to.Ptr("West Central US"),
		// 								to.Ptr("West US 2")},
		// 								RequiredFeatures: []*string{
		// 									to.Ptr("Microsoft.Contoso/RPaaSSampleApp")},
		// 							}},
		// 							Management: &armproviderhub.ResourceTypeRegistrationPropertiesManagement{
		// 								AuthorizationOwners: []*string{
		// 									to.Ptr("RPAAS-PlatformServiceAdministrator")},
		// 									IncidentContactEmail: to.Ptr("helpme@contoso.com"),
		// 									IncidentRoutingService: to.Ptr(""),
		// 									IncidentRoutingTeam: to.Ptr(""),
		// 									ManifestOwners: []*string{
		// 										to.Ptr("SPARTA-PlatformServiceAdministrator")},
		// 										ResourceAccessPolicy: to.Ptr(armproviderhub.ResourceAccessPolicyNotSpecified),
		// 										ServiceTreeInfos: []*armproviderhub.ServiceTreeInfo{
		// 											{
		// 												ComponentID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
		// 												Readiness: to.Ptr(armproviderhub.ReadinessInDevelopment),
		// 												ServiceID: to.Ptr("d1b7d8ba-05e2-48e6-90d6-d781b99c6e69"),
		// 										}},
		// 									},
		// 									Metadata: map[string]any{
		// 									},
		// 									Notifications: []*armproviderhub.Notification{
		// 										{
		// 											NotificationType: to.Ptr(armproviderhub.NotificationTypeSubscriptionNotification),
		// 											SkipNotifications: to.Ptr(armproviderhub.SkipNotificationsDisabled),
		// 									}},
		// 									OpenAPIConfiguration: &armproviderhub.OpenAPIConfiguration{
		// 										Validation: &armproviderhub.OpenAPIValidation{
		// 											AllowNoncompliantCollectionResponse: to.Ptr(false),
		// 										},
		// 									},
		// 									ProvisioningState: to.Ptr(armproviderhub.ProvisioningStateSucceeded),
		// 									Regionality: to.Ptr(armproviderhub.RegionalityRegional),
		// 									RequestHeaderOptions: &armproviderhub.ResourceTypeRegistrationPropertiesRequestHeaderOptions{
		// 										OptOutHeaders: to.Ptr(armproviderhub.OptOutHeaderTypeSystemDataCreatedByLastModifiedBy),
		// 									},
		// 									ResourceConcurrencyControlOptions: map[string]*armproviderhub.ResourceConcurrencyControlOption{
		// 										"patch": &armproviderhub.ResourceConcurrencyControlOption{
		// 											Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
		// 										},
		// 										"post": &armproviderhub.ResourceConcurrencyControlOption{
		// 											Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
		// 										},
		// 										"put": &armproviderhub.ResourceConcurrencyControlOption{
		// 											Policy: to.Ptr(armproviderhub.PolicySynchronizeBeginExtension),
		// 										},
		// 									},
		// 									ResourceGraphConfiguration: &armproviderhub.ResourceTypeRegistrationPropertiesResourceGraphConfiguration{
		// 										APIVersion: to.Ptr("2019-01-01"),
		// 										Enabled: to.Ptr(true),
		// 									},
		// 									RoutingType: to.Ptr(armproviderhub.RoutingTypeDefault),
		// 									SwaggerSpecifications: []*armproviderhub.SwaggerSpecification{
		// 										{
		// 											APIVersions: []*string{
		// 												to.Ptr("2018-11-01-preview"),
		// 												to.Ptr("2020-01-01-preview"),
		// 												to.Ptr("2019-01-01")},
		// 												SwaggerSpecFolderURI: to.Ptr("https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/"),
		// 										}},
		// 									},
		// 							}},
		// 						}
	}
}
