import { IIoK8sApimachineryPkgApisMetaV1ObjectMeta } from "@kubernetes-models/apimachinery/apis/meta/v1/ObjectMeta";
import { IIoK8sApiAdmissionregistrationV1MutatingAdmissionPolicySpec } from "./MutatingAdmissionPolicySpec.js";
import { ModelData, TypeMeta, Model } from "@kubernetes-models/base";
/**
 * MutatingAdmissionPolicy describes the definition of an admission mutation policy that mutates the object coming into admission chain.
 */
export interface IMutatingAdmissionPolicy extends TypeMeta {
    "apiVersion": "admissionregistration.k8s.io/v1";
    "kind": "MutatingAdmissionPolicy";
    /**
     * 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 MutatingAdmissionPolicy.
     */
    "spec"?: IIoK8sApiAdmissionregistrationV1MutatingAdmissionPolicySpec;
}
/**
 * MutatingAdmissionPolicy describes the definition of an admission mutation policy that mutates the object coming into admission chain.
 */
export declare class MutatingAdmissionPolicy extends Model<IMutatingAdmissionPolicy> implements IMutatingAdmissionPolicy {
    "apiVersion": IMutatingAdmissionPolicy["apiVersion"];
    "kind": IMutatingAdmissionPolicy["kind"];
    "metadata"?: IIoK8sApimachineryPkgApisMetaV1ObjectMeta;
    "spec"?: IIoK8sApiAdmissionregistrationV1MutatingAdmissionPolicySpec;
    static apiVersion: IMutatingAdmissionPolicy["apiVersion"];
    static kind: IMutatingAdmissionPolicy["kind"];
    static is: import("@kubernetes-models/base").TypeMetaGuard<IMutatingAdmissionPolicy>;
    constructor(data?: ModelData<IMutatingAdmissionPolicy>);
}
export type { IMutatingAdmissionPolicy as IIoK8sApiAdmissionregistrationV1MutatingAdmissionPolicy, MutatingAdmissionPolicy as IoK8sApiAdmissionregistrationV1MutatingAdmissionPolicy };
