---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.4.1
  name: receivers.notification.kubesphere.io
spec:
  conversion:
    strategy: Webhook
    webhook:
      clientConfig:
        caBundle: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURXekNDQWtPZ0F3SUJBZ0lVT3hOb1NwMTlmNS9CNllvZGlRek53MFdJWGhrd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1BERUxNQWtHQTFVRUJoTUNRMDR4Q3pBSkJnTlZCQWdNQWtoQ01Rc3dDUVlEVlFRS0RBSlJRekVUTUJFRwpBMVVFQXd3S2QyVmlhRzl2YXkxallUQWdGdzB5TVRBM01qY3dPREV5TXpaYUdBOHlNVEl4TURjd016QTRNVEl6Ck5sb3dQREVMTUFrR0ExVUVCaE1DUTA0eEN6QUpCZ05WQkFnTUFraENNUXN3Q1FZRFZRUUtEQUpSUXpFVE1CRUcKQTFVRUF3d0tkMlZpYUc5dmF5MWpZVENDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQgpBTlpzblhIZ21meFJYL2MvQy95S0QzY3hMaGdpSzZ5MkphMlh4OUtYeWRPUjNLSStVSzZ2dXM2V1YzTGl0eTZDCmtPVFlScjV6ZlV3aXZZYUMydHVGRnhTUE80L085dHhFVlBha1UwUGo1N0tVRDBiUnJZWEpDY1V5Ri9TZUlCY0EKMlFmbDZEem0rWjd4NHM1TnE1NFMvUUhpYzJFclVVbHEwbmd3MFQ3UVRieDB4M2Ria0ZNRko0VjlLSjVZdkhOSwpLeWdwR2szb2RpUWZ2Yi81b2hjUUhkTXpQV0Rmd25GTERHZjFUWGFHK0VYeDZodmVoK0RXV2grQzA5ZlI5R05yCmhzNnlZaUU1cmVmY29EUlhrRGVCSkZ3eWtPaVErRE5Fc0RaSU40VHlHTkhmeTRYaUp3QWgxNXBsZTkzQWNTTVQKTlEwNWRYK2FiQmg0djQ4NDRab1lUS2tDQXdFQUFhTlRNRkV3SFFZRFZSME9CQllFRko5NzNRUUVSVi9DVlRCZQovbmFyQmhZcS9GV0pNQjhHQTFVZEl3UVlNQmFBRko5NzNRUUVSVi9DVlRCZS9uYXJCaFlxL0ZXSk1BOEdBMVVkCkV3RUIvd1FGTUFNQkFmOHdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBQk9ZOWNDbFpTYm1scndFN0YvZVBMVm4Kenl2dW0yUUE3MU9rcGRtWjN6cnV1MW16VmZNNU1ORndkUkJMOGduS05IdjEzaGhFeGQ4enJmQ2hYQWIzaWl5aQpSZnBSTzJodDBWSi9HQklaYlM1ZjIvZ1hvNXpSRHk0cFV0ekozOWZUZG9pNzQxNlhJdU9ubHI0bDk3ZnlRRTI4Cno0NlAzYlhidlZKU1VEcytFL1g0NVNHVS8xdFNCaFNnaTg1NllVWGxybWJNMDlHN29kSmx4VGozTG1qQ1NlQWUKWG9lYWlTUEl6UlMrWjVUQ0tudDdvbjVBSGQydzdrT0Q1K2tTK3gvbWY4aU1iaVV5dCtXYWVzdjNIcHg1TmwvWgprb1dxVVc1cXZlQ0poQUM0SVc5V3hmc2JWRXlZSTR0Zm9SNzZoWVhCdVVReE9BVHlCdjNJMmZYUUkvU2ZrdW89Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
        service:
          name: notification-manager-webhook
          namespace: kubesphere-monitoring-system
          path: /convert
      conversionReviewVersions:
        - v1
        - v1beta1
  group: notification.kubesphere.io
  names:
    categories:
      - notification-manager
    kind: Receiver
    listKind: ReceiverList
    plural: receivers
    shortNames:
      - nr
    singular: receiver
  scope: Cluster
  versions:
    - name: v2beta1
      schema:
        openAPIV3Schema:
          description: Receiver is the Schema for the receivers API
          properties:
            apiVersion:
              description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More 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. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
              type: string
            metadata:
              type: object
            spec:
              description: ReceiverSpec defines the desired state of Receiver
              properties:
                dingtalk:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    chatbot:
                      description: Be careful, a ChatBot only can send 20 message per minute.
                      properties:
                        keywords:
                          description: Custom keywords of ChatBot
                          items:
                            type: string
                          type: array
                        secret:
                          description: Secret of ChatBot, you can get it after enabled Additional Signature of ChatBot.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must be a valid secret key.
                              type: string
                            name:
                              description: Name of the secret.
                              type: string
                            namespace:
                              description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                              type: string
                          required:
                            - key
                          type: object
                        webhook:
                          description: The webhook of ChatBot which the message will send to.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must be a valid secret key.
                              type: string
                            name:
                              description: Name of the secret.
                              type: string
                            namespace:
                              description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                              type: string
                          required:
                            - key
                          type: object
                      required:
                        - webhook
                      type: object
                    conversation:
                      description: The conversation which message will send to.
                      properties:
                        chatids:
                          items:
                            type: string
                          type: array
                      required:
                        - chatids
                      type: object
                    dingtalkConfigSelector:
                      description: DingTalkConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                  type: object
                email:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    emailConfigSelector:
                      description: EmailConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    to:
                      description: Receivers' email addresses
                      items:
                        type: string
                      type: array
                  required:
                    - to
                  type: object
                slack:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    channels:
                      description: The channel or user to send notifications to.
                      items:
                        type: string
                      type: array
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    slackConfigSelector:
                      description: SlackConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                  required:
                    - channels
                  type: object
                webhook:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    httpConfig:
                      description: HTTPClientConfig configures an HTTP client.
                      properties:
                        basicAuth:
                          description: The HTTP basic authentication credentials for the targets.
                          properties:
                            password:
                              description: SecretKeySelector selects a key of a Secret.
                              properties:
                                key:
                                  description: The key of the secret to select from.  Must be a valid secret key.
                                  type: string
                                name:
                                  description: Name of the secret.
                                  type: string
                                namespace:
                                  description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                  type: string
                              required:
                                - key
                              type: object
                            username:
                              type: string
                          required:
                            - username
                          type: object
                        bearerToken:
                          description: The bearer token for the targets.
                          properties:
                            key:
                              description: The key of the secret to select from.  Must be a valid secret key.
                              type: string
                            name:
                              description: Name of the secret.
                              type: string
                            namespace:
                              description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                              type: string
                          required:
                            - key
                          type: object
                        proxyUrl:
                          description: HTTP proxy server to use to connect to the targets.
                          type: string
                        tlsConfig:
                          description: TLSConfig to use to connect to the targets.
                          properties:
                            clientCertificate:
                              description: The certificate of the client.
                              properties:
                                cert:
                                  description: The client cert file for the targets.
                                  properties:
                                    key:
                                      description: The key of the secret to select from.  Must be a valid secret key.
                                      type: string
                                    name:
                                      description: Name of the secret.
                                      type: string
                                    namespace:
                                      description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                      type: string
                                  required:
                                    - key
                                  type: object
                                key:
                                  description: The client key file for the targets.
                                  properties:
                                    key:
                                      description: The key of the secret to select from.  Must be a valid secret key.
                                      type: string
                                    name:
                                      description: Name of the secret.
                                      type: string
                                    namespace:
                                      description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                      type: string
                                  required:
                                    - key
                                  type: object
                              type: object
                            insecureSkipVerify:
                              description: Disable target certificate validation.
                              type: boolean
                            rootCA:
                              description: RootCA defines the root certificate authorities that clients use when verifying server certificates.
                              properties:
                                key:
                                  description: The key of the secret to select from.  Must be a valid secret key.
                                  type: string
                                name:
                                  description: Name of the secret.
                                  type: string
                                namespace:
                                  description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                  type: string
                              required:
                                - key
                              type: object
                            serverName:
                              description: Used to verify the hostname for the targets.
                              type: string
                          type: object
                      type: object
                    service:
                      description: "`service` is a reference to the service for this webhook. Either `service` or `url` must be specified. \n If the webhook is running within the cluster, then you should use `service`."
                      properties:
                        name:
                          description: '`name` is the name of the service. Required'
                          type: string
                        namespace:
                          description: '`namespace` is the namespace of the service. Required'
                          type: string
                        path:
                          description: '`path` is an optional URL path which will be sent in any request to this service.'
                          type: string
                        port:
                          description: If specified, the port on the service that hosting webhook. Default to 443 for backward compatibility. `port` should be a valid port number (1-65535, inclusive).
                          format: int32
                          type: integer
                        scheme:
                          description: Http scheme, default is http.
                          type: string
                      required:
                        - name
                        - namespace
                      type: object
                    url:
                      description: "`url` gives the location of the webhook, in standard URL form (`scheme://host:port/path`). Exactly one of `url` or `service` must be specified. \n The `host` should not refer to a service running in the cluster; use the `service` field instead. The host might be resolved via external DNS in some api servers (e.g., `kube-apiserver` cannot resolve in-cluster DNS as that would be a layering violation). `host` may also be an IP address. \n Please note that using `localhost` or `127.0.0.1` as a `host` is risky unless you take great care to run this webhook on all hosts which run an apiserver which might need to make calls to this webhook. Such installs are likely to be non-portable, i.e., not easy to turn up in a new cluster. \n A path is optional, and if present may be any string permissible in a URL. You may use the path to pass an arbitrary string to the webhook, for example, a cluster identifier. \n Attempting to use a user or basic auth e.g. \"user:password@\" is not allowed. Fragments (\"#...\") and query parameters (\"?...\") are not allowed, either."
                      type: string
                    webhookConfigSelector:
                      description: WebhookConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                  type: object
                wechat:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    toParty:
                      items:
                        type: string
                      type: array
                    toTag:
                      items:
                        type: string
                      type: array
                    toUser:
                      items:
                        type: string
                      type: array
                    wechatConfigSelector:
                      description: WechatConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                  type: object
              type: object
            status:
              description: ReceiverStatus defines the observed state of Receiver
              type: object
          type: object
      served: true
      storage: false
      subresources:
        status: {}
    - name: v2beta2
      schema:
        openAPIV3Schema:
          description: Receiver is the Schema for the receivers API
          properties:
            apiVersion:
              description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More 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. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
              type: string
            metadata:
              type: object
            spec:
              description: ReceiverSpec defines the desired state of Receiver
              properties:
                dingtalk:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    chatbot:
                      description: Be careful, a ChatBot only can send 20 message per minute.
                      properties:
                        atAll:
                          description: Whether @everyone.
                          type: boolean
                        atMobiles:
                          description: The phone numbers of the users which will be @.
                          items:
                            type: string
                          type: array
                        atUsers:
                          description: The users who will be @.
                          items:
                            type: string
                          type: array
                        keywords:
                          description: Custom keywords of ChatBot
                          items:
                            type: string
                          type: array
                        secret:
                          description: Secret of ChatBot, you can get it after enabled Additional Signature of ChatBot.
                          properties:
                            value:
                              type: string
                            valueFrom:
                              properties:
                                secretKeyRef:
                                  description: Selects a key of a secret in the pod's namespace
                                  properties:
                                    key:
                                      description: The key of the secret to select from.  Must be a valid secret key.
                                      type: string
                                    name:
                                      description: Name of the secret.
                                      type: string
                                    namespace:
                                      description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                      type: string
                                  required:
                                    - key
                                    - name
                                  type: object
                              type: object
                          type: object
                        webhook:
                          description: The webhook of ChatBot which the message will send to.
                          properties:
                            value:
                              type: string
                            valueFrom:
                              properties:
                                secretKeyRef:
                                  description: Selects a key of a secret in the pod's namespace
                                  properties:
                                    key:
                                      description: The key of the secret to select from.  Must be a valid secret key.
                                      type: string
                                    name:
                                      description: Name of the secret.
                                      type: string
                                    namespace:
                                      description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                      type: string
                                  required:
                                    - key
                                    - name
                                  type: object
                              type: object
                          type: object
                      required:
                        - webhook
                      type: object
                    conversation:
                      description: The conversation which message will send to.
                      properties:
                        chatids:
                          items:
                            type: string
                          type: array
                      required:
                        - chatids
                      type: object
                    dingtalkConfigSelector:
                      description: DingTalkConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    template:
                      description: The name of the template to generate DingTalk message. If the global template is not set, it will use default.
                      type: string
                    titleTemplate:
                      description: The name of the template to generate markdown title
                      type: string
                    tmplType:
                      description: 'template type: text or markdown'
                      type: string
                  type: object
                email:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    emailConfigSelector:
                      description: EmailConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    subjectTemplate:
                      description: The name of the template to generate email subject
                      type: string
                    template:
                      description: The name of the template to generate DingTalk message. If the global template is not set, it will use default.
                      type: string
                    tmplType:
                      description: 'template type: text or html, default type is html'
                      type: string
                    to:
                      description: Receivers' email addresses
                      items:
                        type: string
                      type: array
                  required:
                    - to
                  type: object
                pushover:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    profiles:
                      description: The users profile.
                      items:
                        description: PushoverUserProfile includes userKey and other preferences
                        properties:
                          devices:
                            description: Devices refers to device name to send the message directly to that device, rather than all of the user's devices
                            items:
                              type: string
                            type: array
                          sound:
                            description: Sound refers to the name of one of the sounds (https://pushover.net/api#sounds) supported by device clients
                            type: string
                          title:
                            description: Title refers to message's title, otherwise your app's name is used.
                            type: string
                          userKey:
                            description: UserKey is the user (Pushover User Key) to send notifications to.
                            pattern: ^[A-Za-z0-9]{30}$
                            type: string
                        required:
                          - userKey
                        type: object
                      type: array
                    pushoverConfigSelector:
                      description: PushoverConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    template:
                      description: The name of the template to generate DingTalk message. If the global template is not set, it will use default.
                      type: string
                  required:
                    - profiles
                  type: object
                slack:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    channels:
                      description: The channel or user to send notifications to.
                      items:
                        type: string
                      type: array
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    slackConfigSelector:
                      description: SlackConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    template:
                      description: The name of the template to generate DingTalk message. If the global template is not set, it will use default.
                      type: string
                  required:
                    - channels
                  type: object
                sms:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    phoneNumbers:
                      description: Receivers' phone numbers
                      items:
                        type: string
                      type: array
                    smsConfigSelector:
                      description: SmsConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    template:
                      description: The name of the template to generate Sms message. If the global template is not set, it will use default.
                      type: string
                  required:
                    - phoneNumbers
                  type: object
                webhook:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    httpConfig:
                      description: HTTPClientConfig configures an HTTP client.
                      properties:
                        basicAuth:
                          description: The HTTP basic authentication credentials for the targets.
                          properties:
                            password:
                              properties:
                                value:
                                  type: string
                                valueFrom:
                                  properties:
                                    secretKeyRef:
                                      description: Selects a key of a secret in the pod's namespace
                                      properties:
                                        key:
                                          description: The key of the secret to select from.  Must be a valid secret key.
                                          type: string
                                        name:
                                          description: Name of the secret.
                                          type: string
                                        namespace:
                                          description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                          type: string
                                      required:
                                        - key
                                        - name
                                      type: object
                                  type: object
                              type: object
                            username:
                              type: string
                          required:
                            - username
                          type: object
                        bearerToken:
                          description: The bearer token for the targets.
                          properties:
                            value:
                              type: string
                            valueFrom:
                              properties:
                                secretKeyRef:
                                  description: Selects a key of a secret in the pod's namespace
                                  properties:
                                    key:
                                      description: The key of the secret to select from.  Must be a valid secret key.
                                      type: string
                                    name:
                                      description: Name of the secret.
                                      type: string
                                    namespace:
                                      description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                      type: string
                                  required:
                                    - key
                                    - name
                                  type: object
                              type: object
                          type: object
                        proxyUrl:
                          description: HTTP proxy server to use to connect to the targets.
                          type: string
                        tlsConfig:
                          description: TLSConfig to use to connect to the targets.
                          properties:
                            clientCertificate:
                              description: The certificate of the client.
                              properties:
                                cert:
                                  description: The client cert file for the targets.
                                  properties:
                                    value:
                                      type: string
                                    valueFrom:
                                      properties:
                                        secretKeyRef:
                                          description: Selects a key of a secret in the pod's namespace
                                          properties:
                                            key:
                                              description: The key of the secret to select from.  Must be a valid secret key.
                                              type: string
                                            name:
                                              description: Name of the secret.
                                              type: string
                                            namespace:
                                              description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                              type: string
                                          required:
                                            - key
                                            - name
                                          type: object
                                      type: object
                                  type: object
                                key:
                                  description: The client key file for the targets.
                                  properties:
                                    value:
                                      type: string
                                    valueFrom:
                                      properties:
                                        secretKeyRef:
                                          description: Selects a key of a secret in the pod's namespace
                                          properties:
                                            key:
                                              description: The key of the secret to select from.  Must be a valid secret key.
                                              type: string
                                            name:
                                              description: Name of the secret.
                                              type: string
                                            namespace:
                                              description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                              type: string
                                          required:
                                            - key
                                            - name
                                          type: object
                                      type: object
                                  type: object
                              required:
                                - cert
                                - key
                              type: object
                            insecureSkipVerify:
                              description: Disable target certificate validation.
                              type: boolean
                            rootCA:
                              description: RootCA defines the root certificate authorities that clients use when verifying server certificates.
                              properties:
                                value:
                                  type: string
                                valueFrom:
                                  properties:
                                    secretKeyRef:
                                      description: Selects a key of a secret in the pod's namespace
                                      properties:
                                        key:
                                          description: The key of the secret to select from.  Must be a valid secret key.
                                          type: string
                                        name:
                                          description: Name of the secret.
                                          type: string
                                        namespace:
                                          description: The namespace of the secret, default to the `defaultSecretNamespace` of `NotificationManager` crd. If the `defaultSecretNamespace` does not set, default to the pod's namespace.
                                          type: string
                                      required:
                                        - key
                                        - name
                                      type: object
                                  type: object
                              type: object
                            serverName:
                              description: Used to verify the hostname for the targets.
                              type: string
                          type: object
                      type: object
                    service:
                      description: "`service` is a reference to the service for this webhook. Either `service` or `url` must be specified. \n If the webhook is running within the cluster, then you should use `service`."
                      properties:
                        name:
                          description: '`name` is the name of the service. Required'
                          type: string
                        namespace:
                          description: '`namespace` is the namespace of the service. Required'
                          type: string
                        path:
                          description: '`path` is an optional URL path which will be sent in any request to this service.'
                          type: string
                        port:
                          description: If specified, the port on the service that hosting webhook. Default to 443 for backward compatibility. `port` should be a valid port number (1-65535, inclusive).
                          format: int32
                          type: integer
                        scheme:
                          description: Http scheme, default is http.
                          type: string
                      required:
                        - name
                        - namespace
                      type: object
                    template:
                      description: The name of the template to generate DingTalk message. If the global template is not set, it will use default.
                      type: string
                    url:
                      description: "`url` gives the location of the webhook, in standard URL form (`scheme://host:port/path`). Exactly one of `url` or `service` must be specified. \n The `host` should not refer to a service running in the cluster; use the `service` field instead. The host might be resolved via external DNS in some api servers (e.g., `kube-apiserver` cannot resolve in-cluster DNS as that would be a layering violation). `host` may also be an IP address. \n Please note that using `localhost` or `127.0.0.1` as a `host` is risky unless you take great care to run this webhook on all hosts which run an apiserver which might need to make calls to this webhook. Such installs are likely to be non-portable, i.e., not easy to turn up in a new cluster. \n A path is optional, and if present may be any string permissible in a URL. You may use the path to pass an arbitrary string to the webhook, for example, a cluster identifier. \n Attempting to use a user or basic auth e.g. \"user:password@\" is not allowed. Fragments (\"#...\") and query parameters (\"?...\") are not allowed, either."
                      type: string
                    webhookConfigSelector:
                      description: WebhookConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                  type: object
                wechat:
                  properties:
                    alertSelector:
                      description: Selector to filter alerts.
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                    enabled:
                      description: whether the receiver is enabled
                      type: boolean
                    template:
                      description: The name of the template to generate DingTalk message. If the global template is not set, it will use default.
                      type: string
                    tmplType:
                      description: 'template type: text or markdown, default type is text'
                      type: string
                    toParty:
                      items:
                        type: string
                      type: array
                    toTag:
                      items:
                        type: string
                      type: array
                    toUser:
                      items:
                        type: string
                      type: array
                    wechatConfigSelector:
                      description: WechatConfig to be selected for this receiver
                      properties:
                        matchExpressions:
                          description: matchExpressions is a list of label selector requirements. The requirements are ANDed.
                          items:
                            description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
                            properties:
                              key:
                                description: key is the label key that the selector applies to.
                                type: string
                              operator:
                                description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.
                                type: string
                              values:
                                description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.
                                items:
                                  type: string
                                type: array
                            required:
                              - key
                              - operator
                            type: object
                          type: array
                        matchLabels:
                          additionalProperties:
                            type: string
                          description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.
                          type: object
                      type: object
                  type: object
              type: object
            status:
              description: ReceiverStatus defines the observed state of Receiver
              type: object
          type: object
      served: true
      storage: true
      subresources:
        status: {}
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []