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

package v1

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

// TokenConfigApplyConfiguration represents an declarative configuration of the TokenConfig type for use
// with apply.
type TokenConfigApplyConfiguration struct {
	AccessTokenMaxAgeSeconds            *int32       `json:"accessTokenMaxAgeSeconds,omitempty"`
	AccessTokenInactivityTimeoutSeconds *int32       `json:"accessTokenInactivityTimeoutSeconds,omitempty"`
	AccessTokenInactivityTimeout        *v1.Duration `json:"accessTokenInactivityTimeout,omitempty"`
}

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

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

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

// WithAccessTokenInactivityTimeout sets the AccessTokenInactivityTimeout 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 AccessTokenInactivityTimeout field is set to the value of the last call.
func (b *TokenConfigApplyConfiguration) WithAccessTokenInactivityTimeout(value v1.Duration) *TokenConfigApplyConfiguration {
	b.AccessTokenInactivityTimeout = &value
	return b
}
