/**
 * Interface CRUD on manifests.
 */
export interface Manifests {
    applyManifest(filePath: string): Promise<void>;
    scaleStatefulSet(namespace: string, statefulSetName: string, replicas: number): Promise<void>;
    scaleDeployment(namespace: string, deploymentName: string, replicas: number): Promise<void>;
    /**
     * Patch an existing Kubernetes object (including custom resources) using a merge patch.
     * @param spec - a partial Kubernetes object with apiVersion, kind, metadata.name, metadata.namespace, and the fields to patch
     */
    patchObject(spec: object): Promise<void>;
}
