// Code generated by azure-service-operator-codegen. DO NOT EDIT.
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
package v1beta20211001

import "github.com/Azure/azure-service-operator/v2/pkg/genruntime"

// Deprecated version of Alias_Spec. Use v1api20211001.Alias_Spec instead
type Alias_Spec_ARM struct {
	Name       string                         `json:"name,omitempty"`
	Properties *PutAliasRequestProperties_ARM `json:"properties,omitempty"`
}

var _ genruntime.ARMResourceSpec = &Alias_Spec_ARM{}

// GetAPIVersion returns the ARM API version of the resource. This is always "2021-10-01"
func (alias Alias_Spec_ARM) GetAPIVersion() string {
	return string(APIVersion_Value)
}

// GetName returns the Name of the resource
func (alias *Alias_Spec_ARM) GetName() string {
	return alias.Name
}

// GetType returns the ARM Type of the resource. This is always "Microsoft.Subscription/aliases"
func (alias *Alias_Spec_ARM) GetType() string {
	return "Microsoft.Subscription/aliases"
}

// Deprecated version of PutAliasRequestProperties. Use v1api20211001.PutAliasRequestProperties instead
type PutAliasRequestProperties_ARM struct {
	AdditionalProperties *PutAliasRequestAdditionalProperties_ARM `json:"additionalProperties,omitempty"`
	BillingScope         *string                                  `json:"billingScope,omitempty"`
	DisplayName          *string                                  `json:"displayName,omitempty"`
	ResellerId           *string                                  `json:"resellerId,omitempty"`
	SubscriptionId       *string                                  `json:"subscriptionId,omitempty"`
	Workload             *Workload                                `json:"workload,omitempty"`
}

// Deprecated version of PutAliasRequestAdditionalProperties. Use v1api20211001.PutAliasRequestAdditionalProperties instead
type PutAliasRequestAdditionalProperties_ARM struct {
	ManagementGroupId    *string           `json:"managementGroupId,omitempty"`
	SubscriptionOwnerId  *string           `json:"subscriptionOwnerId,omitempty"`
	SubscriptionTenantId *string           `json:"subscriptionTenantId,omitempty"`
	Tags                 map[string]string `json:"tags,omitempty"`
}

// Deprecated version of Workload. Use v1api20211001.Workload instead
// +kubebuilder:validation:Enum={"DevTest","Production"}
type Workload string

const (
	Workload_DevTest    = Workload("DevTest")
	Workload_Production = Workload("Production")
)
