kubernetes-models
Version:
36 lines (35 loc) • 1.94 kB
TypeScript
import { IIoK8sApiAdmissionregistrationV1ApplyConfiguration } from "./ApplyConfiguration.js";
import { IIoK8sApiAdmissionregistrationV1JSONPatch } from "./JSONPatch.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
* Mutation specifies the CEL expression which is used to apply the Mutation.
*/
export interface IMutation {
/**
* applyConfiguration defines the desired configuration values of an object. The configuration is applied to the admission object using [structured merge diff](https://github.com/kubernetes-sigs/structured-merge-diff). A CEL expression is used to create apply configuration.
*/
"applyConfiguration"?: IIoK8sApiAdmissionregistrationV1ApplyConfiguration;
/**
* jsonPatch defines a [JSON patch](https://jsonpatch.com/) operation to perform a mutation to the object. A CEL expression is used to create the JSON patch.
*/
"jsonPatch"?: IIoK8sApiAdmissionregistrationV1JSONPatch;
/**
* patchType indicates the patch strategy used. Allowed values are "ApplyConfiguration" and "JSONPatch". Required.
*
*
* Possible enum values:
* - `"ApplyConfiguration"` ApplyConfiguration indicates that the mutation is using apply configuration to mutate the object.
* - `"JSONPatch"` JSONPatch indicates that the object is mutated through JSON Patch.
*/
"patchType": "ApplyConfiguration" | "JSONPatch";
}
/**
* Mutation specifies the CEL expression which is used to apply the Mutation.
*/
export declare class Mutation extends Model<IMutation> implements IMutation {
"applyConfiguration"?: IIoK8sApiAdmissionregistrationV1ApplyConfiguration;
"jsonPatch"?: IIoK8sApiAdmissionregistrationV1JSONPatch;
"patchType": "ApplyConfiguration" | "JSONPatch";
constructor(data?: ModelData<IMutation>);
}
export type { IMutation as IIoK8sApiAdmissionregistrationV1Mutation, Mutation as IoK8sApiAdmissionregistrationV1Mutation };