/**
* The AzureExternalSubnetBinding model module.
* @module Ntnx/AzureExternalSubnetBinding
* @version 4.4.1
* @class AzureExternalSubnetBinding
*
* @param { string } routerPortMac MAC address of the router port of Atlas Flow Gateway.
*
* @param { IPSubnet } azureExternalNetworkPrefix
*/
export default class AzureExternalSubnetBinding {
/**
* Constructs a AzureExternalSubnetBinding 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/AzureExternalSubnetBinding} obj Optional instance to populate.
* @param callFromChild {Boolean} Flag to recognise calling instance
* @return {module:Ntnx/AzureExternalSubnetBinding} The populated AzureExternalSubnetBinding 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 AzureExternalSubnetBinding.
* Binding of Atlas Flow Gateway external subnet with Azure external subnet.
* @alias module:Ntnx/AzureExternalSubnetBinding
*
* @param { string } routerPortMac MAC address of the router port of Atlas Flow Gateway.
*
* @param { IPSubnet } azureExternalNetworkPrefix
*/
constructor(routerPortMac: string, azureExternalNetworkPrefix: IPSubnet);
routerPortMac: string;
azureExternalNetworkPrefix: IPSubnet;
$objectType: string;
/** @type {object} */
$reserved: object;
/** @type {object} */
$unknownFields: object;
/**
* Returns MAC address of the router port of Atlas Flow Gateway.
* @return {string}
*/
getRouterPortMac(): string;
/**
* Sets MAC address of the router port of Atlas Flow Gateway.
* @param {string} routerPortMac MAC address of the router port of Atlas Flow Gateway.
*/
setRouterPortMac(routerPortMac: string): void;
/**
* @return {IPSubnet}
*/
getAzureExternalNetworkPrefix(): IPSubnet;
/**
* @param {IPSubnet} azureExternalNetworkPrefix
*/
setAzureExternalNetworkPrefix(azureExternalNetworkPrefix: IPSubnet): void;
/**
* @return {IPSubnet}
*/
getPeerToPeerNetworkPrefix(): IPSubnet;
/**
* @param {IPSubnet} peerToPeerNetworkPrefix
*/
setPeerToPeerNetworkPrefix(peerToPeerNetworkPrefix: IPSubnet): void;
peerToPeerNetworkPrefix: IPSubnet;
/**
* @return {IPAddress}
*/
getEniPrimaryIp(): IPAddress;
/**
* @param {IPAddress} eniPrimaryIp
*/
setEniPrimaryIp(eniPrimaryIp: IPAddress): void;
eniPrimaryIp: IPAddress;
/**
* Returns External network interface Id.
* @return {string}
*/
getEniId(): string;
/**
* Sets External network interface Id.
* @param {string} eniId External network interface Id.
*/
setEniId(eniId: string): void;
eniId: string;
/**
* Returns Resource group Id.
* @return {string}
*/
getResourceGroupId(): string;
/**
* Sets Resource group Id.
* @param {string} resourceGroupId Resource group Id.
*/
setResourceGroupId(resourceGroupId: string): void;
resourceGroupId: string;
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 IPSubnet from "./IPSubnet";
import IPAddress from "../../../common/v1/config/IPAddress";
import ValidationError from "../../../validation/ValidationError";