{
  "description": "GeneratorState represents the state created and managed by a generator resource.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": "string"
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": "string"
    },
    "metadata": {
      "type": "object"
    },
    "spec": {
      "description": "GeneratorStateSpec defines the desired state of a generator state resource.",
      "properties": {
        "garbageCollectionDeadline": {
          "description": "GarbageCollectionDeadline is the time after which the generator state\nwill be deleted.\nIt is set by the controller which creates the generator state and\ncan be set configured by the user.\nIf the garbage collection deadline is not set the generator state will not be deleted.",
          "format": "date-time",
          "type": "string"
        },
        "resource": {
          "description": "Resource is the generator manifest that produced the state.\nIt is a snapshot of the generator manifest at the time the state was produced.\nThis manifest will be used to delete the resource. Any configuration that is referenced\nin the manifest should be available at the time of garbage collection. If that is not the case deletion will\nbe blocked by a finalizer.",
          "x-kubernetes-preserve-unknown-fields": true
        },
        "state": {
          "description": "State is the state that was produced by the generator implementation.",
          "x-kubernetes-preserve-unknown-fields": true
        }
      },
      "required": [
        "resource",
        "state"
      ],
      "type": "object",
      "additionalProperties": false
    },
    "status": {
      "description": "GeneratorStateStatus defines the observed state of a generator state resource.",
      "properties": {
        "conditions": {
          "items": {
            "description": "GeneratorStateStatusCondition represents the observed condition of a generator state.",
            "properties": {
              "lastTransitionTime": {
                "format": "date-time",
                "type": "string"
              },
              "message": {
                "type": "string"
              },
              "reason": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "type": {
                "description": "GeneratorStateConditionType represents the type of condition for a generator state.",
                "type": "string"
              }
            },
            "required": [
              "status",
              "type"
            ],
            "type": "object",
            "additionalProperties": false
          },
          "type": "array"
        }
      },
      "type": "object",
      "additionalProperties": false
    }
  },
  "type": "object"
}
