import { IIoK8sApimachineryPkgApisMetaV1ObjectMeta } from "@kubernetes-models/apimachinery/apis/meta/v1/ObjectMeta";
import { IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscalerSpec } from "./VerticalPodAutoscalerSpec.js";
import { IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscalerStatus } from "./VerticalPodAutoscalerStatus.js";
import { ModelData, TypeMeta, Model } from "@kubernetes-models/base";
/**
 * VerticalPodAutoscaler is the configuration for a vertical pod
 * autoscaler, which automatically manages pod resources based on historical and
 * real time resource utilization.
 */
export interface IVerticalPodAutoscaler extends TypeMeta {
    "apiVersion": "autoscaling.k8s.io/v1";
    "kind": "VerticalPodAutoscaler";
    "metadata"?: IIoK8sApimachineryPkgApisMetaV1ObjectMeta;
    /**
     * Specification of the behavior of the autoscaler.
     * More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status.
     */
    "spec": IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscalerSpec;
    /**
     * Current information about the autoscaler.
     */
    "status"?: IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscalerStatus;
}
/**
 * VerticalPodAutoscaler is the configuration for a vertical pod
 * autoscaler, which automatically manages pod resources based on historical and
 * real time resource utilization.
 */
export declare class VerticalPodAutoscaler extends Model<IVerticalPodAutoscaler> implements IVerticalPodAutoscaler {
    "apiVersion": "autoscaling.k8s.io/v1";
    "kind": "VerticalPodAutoscaler";
    "metadata"?: IIoK8sApimachineryPkgApisMetaV1ObjectMeta;
    "spec": IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscalerSpec;
    "status"?: IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscalerStatus;
    static apiVersion: IVerticalPodAutoscaler["apiVersion"];
    static kind: IVerticalPodAutoscaler["kind"];
    static is: import("@kubernetes-models/base").TypeMetaGuard<IVerticalPodAutoscaler>;
    constructor(data?: ModelData<IVerticalPodAutoscaler>);
}
export type { IVerticalPodAutoscaler as IIoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscaler, VerticalPodAutoscaler as IoK8sAutoscalerVerticalPodAutoscalerPkgApisAutoscalingK8sIoV1VerticalPodAutoscaler };
