// Copyright (c) 2026 Tigera, Inc. All rights reserved.

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

package v3

import (
	v1 "k8s.io/api/core/v1"
)

// BGPPasswordApplyConfiguration represents a declarative configuration of the BGPPassword type for use
// with apply.
//
// BGPPassword contains ways to specify a BGP password.
type BGPPasswordApplyConfiguration struct {
	// Selects a key of a secret in the node pod's namespace.
	SecretKeyRef *v1.SecretKeySelector `json:"secretKeyRef,omitempty"`
}

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

// WithSecretKeyRef sets the SecretKeyRef 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 SecretKeyRef field is set to the value of the last call.
func (b *BGPPasswordApplyConfiguration) WithSecretKeyRef(value v1.SecretKeySelector) *BGPPasswordApplyConfiguration {
	b.SecretKeyRef = &value
	return b
}
