import { IIoK8sApimachineryPkgApisMetaV1ObjectMeta } from "@kubernetes-models/apimachinery/apis/meta/v1/ObjectMeta";
import { IIoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicySpec } from "./ValidatingAdmissionPolicySpec.js";
import { IIoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicyStatus } from "./ValidatingAdmissionPolicyStatus.js";
import { ModelData, TypeMeta, Model } from "@kubernetes-models/base";
/**
 * ValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it.
 */
export interface IValidatingAdmissionPolicy extends TypeMeta {
    "apiVersion": "admissionregistration.k8s.io/v1";
    "kind": "ValidatingAdmissionPolicy";
    /**
     * metadata is the standard object metadata; More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata.
     */
    "metadata"?: IIoK8sApimachineryPkgApisMetaV1ObjectMeta;
    /**
     * spec defines the desired behavior of the ValidatingAdmissionPolicy.
     */
    "spec"?: IIoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicySpec;
    /**
     * status represents the current status of the ValidatingAdmissionPolicy, including warnings that are useful to determine if the policy behaves in the expected way. Populated by the system. Read-only.
     */
    "status"?: IIoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicyStatus;
}
/**
 * ValidatingAdmissionPolicy describes the definition of an admission validation policy that accepts or rejects an object without changing it.
 */
export declare class ValidatingAdmissionPolicy extends Model<IValidatingAdmissionPolicy> implements IValidatingAdmissionPolicy {
    "apiVersion": IValidatingAdmissionPolicy["apiVersion"];
    "kind": IValidatingAdmissionPolicy["kind"];
    "metadata"?: IIoK8sApimachineryPkgApisMetaV1ObjectMeta;
    "spec"?: IIoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicySpec;
    "status"?: IIoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicyStatus;
    static apiVersion: IValidatingAdmissionPolicy["apiVersion"];
    static kind: IValidatingAdmissionPolicy["kind"];
    static is: import("@kubernetes-models/base").TypeMetaGuard<IValidatingAdmissionPolicy>;
    constructor(data?: ModelData<IValidatingAdmissionPolicy>);
}
export type { IValidatingAdmissionPolicy as IIoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicy, ValidatingAdmissionPolicy as IoK8sApiAdmissionregistrationV1ValidatingAdmissionPolicy };
