/**
 * The ClusterCapability model module.
 * @module Ntnx/ClusterCapability
 * @version 4.0.1
 * @class ClusterCapability
 * @extends NetworkingBaseModel
 *
 * @param { string } clusterId Cluster UUID whose capabilities are retrieved.
 *
 * @param { Capability[] } capabilities A dictionary with a key as a capability name and a value as a boolean, true if supported by the cluster, false if not.  For example, dictionary will look like { \"SUPPORTS_PC_SPAN\": true, \"SUPPORTS_VGPU_CONSOLE\": true }
 */
export default class ClusterCapability extends NetworkingBaseModel {
    /**
     * Constructs a new <code>ClusterCapability</code>.
     * @alias module:Ntnx/ClusterCapability
     * @extends module:Ntnx/NetworkingBaseModel
     *
     * @param { string } clusterId Cluster UUID whose capabilities are retrieved.
     *
     * @param { Capability[] } capabilities A dictionary with a key as a capability name and a value as a boolean, true if supported by the cluster, false if not.  For example, dictionary will look like { \"SUPPORTS_PC_SPAN\": true, \"SUPPORTS_VGPU_CONSOLE\": true }
    */
    constructor(clusterId: string, capabilities: Capability[]);
    clusterId: string;
    capabilities: Capability[];
    /**
     * Returns Cluster UUID whose capabilities are retrieved.
     * @return {string}
     */
    getClusterId(): string;
    /**
     * Sets Cluster UUID whose capabilities are retrieved.
     * @param {string} clusterId Cluster UUID whose capabilities are retrieved.
     */
    setClusterId(clusterId: string): void;
    /**
     * Returns A dictionary with a key as a capability name and a value as a boolean, true if supported by the cluster, false if not.  For example, dictionary will look like { \"SUPPORTS_PC_SPAN\": true, \"SUPPORTS_VGPU_CONSOLE\": true }
     * @return {Capability[]}
     */
    getCapabilities(): Capability[];
    /**
     * Sets A dictionary with a key as a capability name and a value as a boolean, true if supported by the cluster, false if not.  For example, dictionary will look like { \"SUPPORTS_PC_SPAN\": true, \"SUPPORTS_VGPU_CONSOLE\": true }
     * @param {Capability[]} capabilities A dictionary with a key as a capability name and a value as a boolean, true if supported by the cluster, false if not.  For example, dictionary will look like { \"SUPPORTS_PC_SPAN\": true, \"SUPPORTS_VGPU_CONSOLE\": true }
     */
    setCapabilities(capabilities: Capability[]): void;
    toJson(forMutation: any): {
        $reserved: any;
        $objectType: string;
        $unknownFields: any;
        tenantId?: string;
        links?: {
            $reserved: any;
            $objectType: string;
            $unknownFields: any;
            rel?: string;
            href?: string;
        }[];
        extId?: string;
        metadata?: {
            $reserved: any;
            $objectType: string;
            $unknownFields: any;
            categoryIds?: string[];
            projectName?: string;
            projectReferenceId?: string;
            ownerUserName?: string;
            ownerReferenceId?: string;
        };
        capabilities?: {
            $reserved: any;
            $objectType: string;
            $unknownFields: any;
            isSupported?: boolean;
            capabilityName?: string;
        }[];
        clusterId?: string;
    };
    #private;
}
import NetworkingBaseModel from "./NetworkingBaseModel";
import Capability from "./Capability";
