// Code generated by pkg/config/schema/codegen/tools/collections.main.go. DO NOT EDIT.

package kind

const (
	Unknown Kind = iota
	Address
	AuthorizationPolicy
	BackendTLSPolicy
	CertificateSigningRequest
	ClusterTrustBundle
	ConfigMap
	CustomResourceDefinition
	DNSName
	DaemonSet
	Deployment
	DestinationRule
	EndpointSlice
	Endpoints
	EnvoyFilter
	GRPCRoute
	Gateway
	GatewayClass
	HTTPRoute
	HorizontalPodAutoscaler
	InferencePool
	Ingress
	IngressClass
	KubernetesGateway
	Lease
	ListenerSet
	MeshConfig
	MeshNetworks
	MutatingWebhookConfiguration
	Namespace
	Node
	PeerAuthentication
	Pod
	PodDisruptionBudget
	ProxyConfig
	ReferenceGrant
	RequestAuthentication
	Secret
	Service
	ServiceAccount
	ServiceEntry
	Sidecar
	StatefulSet
	TCPRoute
	TLSRoute
	Telemetry
	TrafficExtension
	TypeUrl
	UDPRoute
	ValidatingWebhookConfiguration
	VirtualService
	WasmPlugin
	WorkloadEntry
	WorkloadGroup
	XBackendTrafficPolicy
)

func (k Kind) String() string {
	switch k {
	case Address:
		return "Address"
	case AuthorizationPolicy:
		return "AuthorizationPolicy"
	case BackendTLSPolicy:
		return "BackendTLSPolicy"
	case CertificateSigningRequest:
		return "CertificateSigningRequest"
	case ClusterTrustBundle:
		return "ClusterTrustBundle"
	case ConfigMap:
		return "ConfigMap"
	case CustomResourceDefinition:
		return "CustomResourceDefinition"
	case DNSName:
		return "DNSName"
	case DaemonSet:
		return "DaemonSet"
	case Deployment:
		return "Deployment"
	case DestinationRule:
		return "DestinationRule"
	case EndpointSlice:
		return "EndpointSlice"
	case Endpoints:
		return "Endpoints"
	case EnvoyFilter:
		return "EnvoyFilter"
	case GRPCRoute:
		return "GRPCRoute"
	case Gateway:
		return "Gateway"
	case GatewayClass:
		return "GatewayClass"
	case HTTPRoute:
		return "HTTPRoute"
	case HorizontalPodAutoscaler:
		return "HorizontalPodAutoscaler"
	case InferencePool:
		return "InferencePool"
	case Ingress:
		return "Ingress"
	case IngressClass:
		return "IngressClass"
	case KubernetesGateway:
		return "KubernetesGateway"
	case Lease:
		return "Lease"
	case ListenerSet:
		return "ListenerSet"
	case MeshConfig:
		return "MeshConfig"
	case MeshNetworks:
		return "MeshNetworks"
	case MutatingWebhookConfiguration:
		return "MutatingWebhookConfiguration"
	case Namespace:
		return "Namespace"
	case Node:
		return "Node"
	case PeerAuthentication:
		return "PeerAuthentication"
	case Pod:
		return "Pod"
	case PodDisruptionBudget:
		return "PodDisruptionBudget"
	case ProxyConfig:
		return "ProxyConfig"
	case ReferenceGrant:
		return "ReferenceGrant"
	case RequestAuthentication:
		return "RequestAuthentication"
	case Secret:
		return "Secret"
	case Service:
		return "Service"
	case ServiceAccount:
		return "ServiceAccount"
	case ServiceEntry:
		return "ServiceEntry"
	case Sidecar:
		return "Sidecar"
	case StatefulSet:
		return "StatefulSet"
	case TCPRoute:
		return "TCPRoute"
	case TLSRoute:
		return "TLSRoute"
	case Telemetry:
		return "Telemetry"
	case TrafficExtension:
		return "TrafficExtension"
	case TypeUrl:
		return "TypeUrl"
	case UDPRoute:
		return "UDPRoute"
	case ValidatingWebhookConfiguration:
		return "ValidatingWebhookConfiguration"
	case VirtualService:
		return "VirtualService"
	case WasmPlugin:
		return "WasmPlugin"
	case WorkloadEntry:
		return "WorkloadEntry"
	case WorkloadGroup:
		return "WorkloadGroup"
	case XBackendTrafficPolicy:
		return "XBackendTrafficPolicy"
	default:
		return "Unknown"
	}
}

func FromString(s string) Kind {
	switch s {
	case "Address":
		return Address
	case "AuthorizationPolicy":
		return AuthorizationPolicy
	case "BackendTLSPolicy":
		return BackendTLSPolicy
	case "CertificateSigningRequest":
		return CertificateSigningRequest
	case "ClusterTrustBundle":
		return ClusterTrustBundle
	case "ConfigMap":
		return ConfigMap
	case "CustomResourceDefinition":
		return CustomResourceDefinition
	case "DNSName":
		return DNSName
	case "DaemonSet":
		return DaemonSet
	case "Deployment":
		return Deployment
	case "DestinationRule":
		return DestinationRule
	case "EndpointSlice":
		return EndpointSlice
	case "Endpoints":
		return Endpoints
	case "EnvoyFilter":
		return EnvoyFilter
	case "GRPCRoute":
		return GRPCRoute
	case "Gateway":
		return Gateway
	case "GatewayClass":
		return GatewayClass
	case "HTTPRoute":
		return HTTPRoute
	case "HorizontalPodAutoscaler":
		return HorizontalPodAutoscaler
	case "InferencePool":
		return InferencePool
	case "Ingress":
		return Ingress
	case "IngressClass":
		return IngressClass
	case "KubernetesGateway":
		return KubernetesGateway
	case "Lease":
		return Lease
	case "ListenerSet":
		return ListenerSet
	case "MeshConfig":
		return MeshConfig
	case "MeshNetworks":
		return MeshNetworks
	case "MutatingWebhookConfiguration":
		return MutatingWebhookConfiguration
	case "Namespace":
		return Namespace
	case "Node":
		return Node
	case "PeerAuthentication":
		return PeerAuthentication
	case "Pod":
		return Pod
	case "PodDisruptionBudget":
		return PodDisruptionBudget
	case "ProxyConfig":
		return ProxyConfig
	case "ReferenceGrant":
		return ReferenceGrant
	case "RequestAuthentication":
		return RequestAuthentication
	case "Secret":
		return Secret
	case "Service":
		return Service
	case "ServiceAccount":
		return ServiceAccount
	case "ServiceEntry":
		return ServiceEntry
	case "Sidecar":
		return Sidecar
	case "StatefulSet":
		return StatefulSet
	case "TCPRoute":
		return TCPRoute
	case "TLSRoute":
		return TLSRoute
	case "Telemetry":
		return Telemetry
	case "TrafficExtension":
		return TrafficExtension
	case "TypeUrl":
		return TypeUrl
	case "UDPRoute":
		return UDPRoute
	case "ValidatingWebhookConfiguration":
		return ValidatingWebhookConfiguration
	case "VirtualService":
		return VirtualService
	case "WasmPlugin":
		return WasmPlugin
	case "WorkloadEntry":
		return WorkloadEntry
	case "WorkloadGroup":
		return WorkloadGroup
	case "XBackendTrafficPolicy":
		return XBackendTrafficPolicy
	default:
		return Unknown
	}
}
