/**
 * Kubernetes
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: unversioned
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * NamedRuleWithOperations is a tuple of Operations and Resources with ResourceNames.
 * @export
 * @interface IoK8sApiAdmissionregistrationV1NamedRuleWithOperations
 */
export interface IoK8sApiAdmissionregistrationV1NamedRuleWithOperations {
    /**
     * APIGroups is the API groups the resources belong to. '*' is all groups. If '*' is present, the length of the slice must be one. Required.
     * @type {Array<string>}
     * @memberof IoK8sApiAdmissionregistrationV1NamedRuleWithOperations
     */
    apiGroups?: Array<string>;
    /**
     * APIVersions is the API versions the resources belong to. '*' is all versions. If '*' is present, the length of the slice must be one. Required.
     * @type {Array<string>}
     * @memberof IoK8sApiAdmissionregistrationV1NamedRuleWithOperations
     */
    apiVersions?: Array<string>;
    /**
     * Operations is the operations the admission hook cares about - CREATE, UPDATE, DELETE, CONNECT or * for all of those operations and any future admission operations that are added. If '*' is present, the length of the slice must be one. Required.
     * @type {Array<string>}
     * @memberof IoK8sApiAdmissionregistrationV1NamedRuleWithOperations
     */
    operations?: Array<string>;
    /**
     * ResourceNames is an optional white list of names that the rule applies to.  An empty set means that everything is allowed.
     * @type {Array<string>}
     * @memberof IoK8sApiAdmissionregistrationV1NamedRuleWithOperations
     */
    resourceNames?: Array<string>;
    /**
     * Resources is a list of resources this rule applies to.
     *
     * For example: 'pods' means pods. 'pods/log' means the log subresource of pods. '*' means all resources, but not subresources. 'pods/*' means all subresources of pods. 'scale' means all scale subresources. '*' means all resources and their subresources.
     *
     * If wildcard is present, the validation rule will ensure resources do not overlap with each other.
     *
     * Depending on the enclosing object, subresources might not be allowed. Required.
     * @type {Array<string>}
     * @memberof IoK8sApiAdmissionregistrationV1NamedRuleWithOperations
     */
    resources?: Array<string>;
    /**
     * scope specifies the scope of this rule. Valid values are "Cluster", "Namespaced", and "*" "Cluster" means that only cluster-scoped resources will match this rule. Namespace API objects are cluster-scoped. "Namespaced" means that only namespaced resources will match this rule. "*" means that there are no scope restrictions. Subresources match the scope of their parent resource. Default is "*".
     * @type {string}
     * @memberof IoK8sApiAdmissionregistrationV1NamedRuleWithOperations
     */
    scope?: string;
}
export declare function IoK8sApiAdmissionregistrationV1NamedRuleWithOperationsFromJSON(json: any): IoK8sApiAdmissionregistrationV1NamedRuleWithOperations;
export declare function IoK8sApiAdmissionregistrationV1NamedRuleWithOperationsFromJSONTyped(json: any, _ignoreDiscriminator: boolean): IoK8sApiAdmissionregistrationV1NamedRuleWithOperations;
export declare function IoK8sApiAdmissionregistrationV1NamedRuleWithOperationsToJSON(value?: IoK8sApiAdmissionregistrationV1NamedRuleWithOperations | null): any;
