// Code generated by cue get go. DO NOT EDIT.

//cue:generate cue get go k8s.io/apimachinery/pkg/types

package types

// Similarly to above, these are constants to support HTTP PATCH utilized by
// both the client and server that didn't make sense for a whole package to be
// dedicated to.
PatchType :: string // enumPatchType

enumPatchType ::
	JSONPatchType |
	MergePatchType |
	StrategicMergePatchType |
	ApplyPatchType

JSONPatchType ::           PatchType & "application/json-patch+json"
MergePatchType ::          PatchType & "application/merge-patch+json"
StrategicMergePatchType :: PatchType & "application/strategic-merge-patch+json"
ApplyPatchType ::          PatchType & "application/apply-patch+yaml"
