// Code generated by applyconfiguration-gen. DO NOT EDIT.

package v1

import (
	v1 "github.com/openshift/api/config/v1"
)

// AzurePlatformStatusApplyConfiguration represents an declarative configuration of the AzurePlatformStatus type for use
// with apply.
type AzurePlatformStatusApplyConfiguration struct {
	ResourceGroupName        *string                   `json:"resourceGroupName,omitempty"`
	NetworkResourceGroupName *string                   `json:"networkResourceGroupName,omitempty"`
	CloudName                *v1.AzureCloudEnvironment `json:"cloudName,omitempty"`
	ARMEndpoint              *string                   `json:"armEndpoint,omitempty"`
}

// AzurePlatformStatusApplyConfiguration constructs an declarative configuration of the AzurePlatformStatus type for use with
// apply.
func AzurePlatformStatus() *AzurePlatformStatusApplyConfiguration {
	return &AzurePlatformStatusApplyConfiguration{}
}

// WithResourceGroupName sets the ResourceGroupName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ResourceGroupName field is set to the value of the last call.
func (b *AzurePlatformStatusApplyConfiguration) WithResourceGroupName(value string) *AzurePlatformStatusApplyConfiguration {
	b.ResourceGroupName = &value
	return b
}

// WithNetworkResourceGroupName sets the NetworkResourceGroupName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the NetworkResourceGroupName field is set to the value of the last call.
func (b *AzurePlatformStatusApplyConfiguration) WithNetworkResourceGroupName(value string) *AzurePlatformStatusApplyConfiguration {
	b.NetworkResourceGroupName = &value
	return b
}

// WithCloudName sets the CloudName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the CloudName field is set to the value of the last call.
func (b *AzurePlatformStatusApplyConfiguration) WithCloudName(value v1.AzureCloudEnvironment) *AzurePlatformStatusApplyConfiguration {
	b.CloudName = &value
	return b
}

// WithARMEndpoint sets the ARMEndpoint field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ARMEndpoint field is set to the value of the last call.
func (b *AzurePlatformStatusApplyConfiguration) WithARMEndpoint(value string) *AzurePlatformStatusApplyConfiguration {
	b.ARMEndpoint = &value
	return b
}
