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

package v1beta1

import (
	v1beta1 "github.com/openshift/api/machine/v1beta1"
)

// MachineHealthCheckStatusApplyConfiguration represents an declarative configuration of the MachineHealthCheckStatus type for use
// with apply.
type MachineHealthCheckStatusApplyConfiguration struct {
	ExpectedMachines    *int                `json:"expectedMachines,omitempty"`
	CurrentHealthy      *int                `json:"currentHealthy,omitempty"`
	RemediationsAllowed *int32              `json:"remediationsAllowed,omitempty"`
	Conditions          *v1beta1.Conditions `json:"conditions,omitempty"`
}

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

// WithExpectedMachines sets the ExpectedMachines 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 ExpectedMachines field is set to the value of the last call.
func (b *MachineHealthCheckStatusApplyConfiguration) WithExpectedMachines(value int) *MachineHealthCheckStatusApplyConfiguration {
	b.ExpectedMachines = &value
	return b
}

// WithCurrentHealthy sets the CurrentHealthy 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 CurrentHealthy field is set to the value of the last call.
func (b *MachineHealthCheckStatusApplyConfiguration) WithCurrentHealthy(value int) *MachineHealthCheckStatusApplyConfiguration {
	b.CurrentHealthy = &value
	return b
}

// WithRemediationsAllowed sets the RemediationsAllowed 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 RemediationsAllowed field is set to the value of the last call.
func (b *MachineHealthCheckStatusApplyConfiguration) WithRemediationsAllowed(value int32) *MachineHealthCheckStatusApplyConfiguration {
	b.RemediationsAllowed = &value
	return b
}

// WithConditions sets the Conditions 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 Conditions field is set to the value of the last call.
func (b *MachineHealthCheckStatusApplyConfiguration) WithConditions(value v1beta1.Conditions) *MachineHealthCheckStatusApplyConfiguration {
	b.Conditions = &value
	return b
}
