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

package v1

// ExtraMappingApplyConfiguration represents a declarative configuration of the ExtraMapping type for use
// with apply.
type ExtraMappingApplyConfiguration struct {
	Key             *string `json:"key,omitempty"`
	ValueExpression *string `json:"valueExpression,omitempty"`
}

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

// 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 *ExtraMappingApplyConfiguration) WithKey(value string) *ExtraMappingApplyConfiguration {
	b.Key = &value
	return b
}

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