{
  "type": "object",
  "required": [
    "spec"
  ],
  "properties": {
    "spec": {
      "type": "object",
      "required": [
        "type",
        "url"
      ],
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "helm",
            "oci"
          ]
        },
        "url": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "auth": {
          "type": "object",
          "properties": {
            "header": {
              "type": "object",
              "required": [
                "secretKeyRef"
              ],
              "properties": {
                "secretKeyRef": {
                  "type": "object",
                  "required": [
                    "key",
                    "name"
                  ],
                  "properties": {
                    "key": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": false
                }
              },
              "additionalProperties": false
            },
            "customCA": {
              "type": "object",
              "required": [
                "secretKeyRef"
              ],
              "properties": {
                "secretKeyRef": {
                  "type": "object",
                  "required": [
                    "key",
                    "name"
                  ],
                  "properties": {
                    "key": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    }
                  },
                  "additionalProperties": false
                }
              },
              "additionalProperties": false
            }
          },
          "additionalProperties": false
        },
        "dockerRegistrySecrets": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tlsInsecureSkipVerify": {
          "type": "boolean"
        },
        "passCredentials": {
          "type": "boolean"
        },
        "interval": {
          "type": "string"
        },
        "filterRule": {
          "type": "object",
          "properties": {
            "jq": {
              "type": "string"
            },
            "variables": {
              "type": "object",
              "additionalProperties": {
                "type": "string"
              }
            }
          },
          "additionalProperties": false
        },
        "ociRepositories": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "resyncRequests": {
          "type": "integer"
        },
        "syncJobPodTemplate": {
          "type": "object",
          "properties": {
            "metadata": {
              "type": "object",
              "x-kubernetes-preserve-unknown-fields": true
            },
            "spec": {
              "type": "object",
              "x-kubernetes-preserve-unknown-fields": true
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "status": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
  }
}
