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

package v1alpha1

// RetentionNumberConfigApplyConfiguration represents a declarative configuration of the RetentionNumberConfig type for use
// with apply.
//
// RetentionNumberConfig specifies the configuration of the retention policy on the number of backups
type RetentionNumberConfigApplyConfiguration struct {
	// maxNumberOfBackups defines the maximum number of backups to retain.
	// If the existing number of backups saved is equal to MaxNumberOfBackups then
	// the oldest backup will be removed before a new backup is initiated.
	MaxNumberOfBackups *int `json:"maxNumberOfBackups,omitempty"`
}

// RetentionNumberConfigApplyConfiguration constructs a declarative configuration of the RetentionNumberConfig type for use with
// apply.
func RetentionNumberConfig() *RetentionNumberConfigApplyConfiguration {
	return &RetentionNumberConfigApplyConfiguration{}
}

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