/** * The VolumeGroupAttachment model module. * @module Ntnx/VolumeGroupAttachment * @version 4.3.1 * @class VolumeGroupAttachment * * @param { EntityReference } volumeGroup * * @param { AttachmentType } attachmentType */ export default class VolumeGroupAttachment { /** * Constructs a VolumeGroupAttachment from a plain JavaScript object, optionally creating a new instance. * Copies all relevant properties from data to obj if supplied or a new instance if not. * @param {Object} data The plain JavaScript object bearing properties of interest. * @param {module:Ntnx/VolumeGroupAttachment} obj Optional instance to populate. * @param callFromChild {Boolean} Flag to recognise calling instance * @return {module:Ntnx/VolumeGroupAttachment} The populated VolumeGroupAttachment instance. */ static constructFromObject(data: any, obj?: any, callFromChild?: boolean): any; /** * Converts a given snake_case string to camelCase. * @param {string} snakeStr - The input string in snake_case format. * @returns {string} - The converted string in camelCase format. */ static snakeToCamel(snakeStr: string): string; /** * Constructs a new VolumeGroupAttachment. * Volume Group attachment. * @alias module:Ntnx/VolumeGroupAttachment * * @param { EntityReference } volumeGroup * * @param { AttachmentType } attachmentType */ constructor(volumeGroup: EntityReference, attachmentType: AttachmentType); volumeGroup: EntityReference; attachmentType: string; $objectType: string; /** @type {object} */ $reserved: object; /** @type {object} */ $unknownFields: object; /** * @return {EntityReference} */ getVolumeGroup(): EntityReference; /** * @param {EntityReference} volumeGroup */ setVolumeGroup(volumeGroup: EntityReference): void; /** * @return {AttachmentType} */ getAttachmentType(): AttachmentType; /** * @param {AttachmentType} attachmentType */ setAttachmentType(attachmentType: AttachmentType): void; /** * @return {Protocol} */ getProtocol(): Protocol; /** * @param {Protocol} protocol */ setProtocol(protocol: Protocol): void; protocol: string; /** * Returns Attachment protocol specific settings. This field is only applicable when attachmentType is `EXTERNAL_ATTACH`. Client secret must be specified for mutual `CHAP` authentications. * @return {IscsiFeatures} */ getClientFeatures(): IscsiFeatures; /** * Sets Attachment protocol specific settings. This field is only applicable when attachmentType is `EXTERNAL_ATTACH`. Client secret must be specified for mutual `CHAP` authentications. * @param {IscsiFeatures} clientFeatures Attachment protocol specific settings. This field is only applicable when attachmentType is `EXTERNAL_ATTACH`. Client secret must be specified for mutual `CHAP` authentications. */ setClientFeatures(clientFeatures: IscsiFeatures): void; clientFeatures: IscsiFeatures; get$Reserved(): any; get$ObjectType(): string; get$UnknownFields(): any; toJson(forMutation: any): any; validate(scope: any, properties: any, ...args: any[]): Promise; validateProperty(scope: any, property: any): ValidationError; #private; } import EntityReference from "./EntityReference"; import AttachmentType from "../../../volumes/v4/config/AttachmentType"; import Protocol from "../../../volumes/v4/config/Protocol"; import IscsiFeatures from "./IscsiFeatures"; import ValidationError from "../../../validation/ValidationError";