/**
 * 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.
 */
import { IoK8sApiAuthorizationV1NonResourceRule, IoK8sApiAuthorizationV1ResourceRule } from './';
/**
 * SubjectRulesReviewStatus contains the result of a rules check. This check can be incomplete depending on the set of authorizers the server is configured with and any errors experienced during evaluation. Because authorization rules are additive, if a rule appears in a list it's safe to assume the subject has that permission, even if that list is incomplete.
 * @export
 * @interface IoK8sApiAuthorizationV1SubjectRulesReviewStatus
 */
export interface IoK8sApiAuthorizationV1SubjectRulesReviewStatus {
    /**
     * EvaluationError can appear in combination with Rules. It indicates an error occurred during rule evaluation, such as an authorizer that doesn't support rule evaluation, and that ResourceRules and/or NonResourceRules may be incomplete.
     * @type {string}
     * @memberof IoK8sApiAuthorizationV1SubjectRulesReviewStatus
     */
    evaluationError?: string;
    /**
     * Incomplete is true when the rules returned by this call are incomplete. This is most commonly encountered when an authorizer, such as an external authorizer, doesn't support rules evaluation.
     * @type {boolean}
     * @memberof IoK8sApiAuthorizationV1SubjectRulesReviewStatus
     */
    incomplete: boolean;
    /**
     * NonResourceRules is the list of actions the subject is allowed to perform on non-resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
     * @type {Array<IoK8sApiAuthorizationV1NonResourceRule>}
     * @memberof IoK8sApiAuthorizationV1SubjectRulesReviewStatus
     */
    nonResourceRules: Array<IoK8sApiAuthorizationV1NonResourceRule>;
    /**
     * ResourceRules is the list of actions the subject is allowed to perform on resources. The list ordering isn't significant, may contain duplicates, and possibly be incomplete.
     * @type {Array<IoK8sApiAuthorizationV1ResourceRule>}
     * @memberof IoK8sApiAuthorizationV1SubjectRulesReviewStatus
     */
    resourceRules: Array<IoK8sApiAuthorizationV1ResourceRule>;
}
export declare function IoK8sApiAuthorizationV1SubjectRulesReviewStatusFromJSON(json: any): IoK8sApiAuthorizationV1SubjectRulesReviewStatus;
export declare function IoK8sApiAuthorizationV1SubjectRulesReviewStatusFromJSONTyped(json: any, _ignoreDiscriminator: boolean): IoK8sApiAuthorizationV1SubjectRulesReviewStatus;
export declare function IoK8sApiAuthorizationV1SubjectRulesReviewStatusToJSON(value?: IoK8sApiAuthorizationV1SubjectRulesReviewStatus | null): any;
