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

package v1

// ConfigMapFileReferenceApplyConfiguration represents a declarative configuration of the ConfigMapFileReference type for use
// with apply.
//
// ConfigMapFileReference references a config map in a specific namespace.
// The namespace must be specified at the point of use.
type ConfigMapFileReferenceApplyConfiguration struct {
	Name *string `json:"name,omitempty"`
	// key allows pointing to a specific key/value inside of the configmap.  This is useful for logical file references.
	Key *string `json:"key,omitempty"`
}

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

// WithName sets the Name 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 Name field is set to the value of the last call.
func (b *ConfigMapFileReferenceApplyConfiguration) WithName(value string) *ConfigMapFileReferenceApplyConfiguration {
	b.Name = &value
	return b
}

// WithKey sets the Key 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 Key field is set to the value of the last call.
func (b *ConfigMapFileReferenceApplyConfiguration) WithKey(value string) *ConfigMapFileReferenceApplyConfiguration {
	b.Key = &value
	return b
}
