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

package v1beta1

import (
	v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)

// LastOperationApplyConfiguration represents an declarative configuration of the LastOperation type for use
// with apply.
type LastOperationApplyConfiguration struct {
	Description *string  `json:"description,omitempty"`
	LastUpdated *v1.Time `json:"lastUpdated,omitempty"`
	State       *string  `json:"state,omitempty"`
	Type        *string  `json:"type,omitempty"`
}

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

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

// WithLastUpdated sets the LastUpdated 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 LastUpdated field is set to the value of the last call.
func (b *LastOperationApplyConfiguration) WithLastUpdated(value v1.Time) *LastOperationApplyConfiguration {
	b.LastUpdated = &value
	return b
}

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

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