/* * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; import * as msRest from "@azure/ms-rest-js"; export { BaseResource, CloudError }; /** * Describes the properties of a Compute Operation value. */ export interface ComputeOperationValue { /** * The origin of the compute operation. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly origin?: string; /** * The name of the compute operation. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * The display name of the compute operation. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly operation?: string; /** * The display name of the resource the operation applies to. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly resource?: string; /** * The description of the operation. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly description?: string; /** * The resource provider for the operation. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provider?: string; } /** * Instance view status. */ export interface InstanceViewStatus { /** * The status code. */ code?: string; /** * The level code. Possible values include: 'Info', 'Warning', 'Error' */ level?: StatusLevelTypes; /** * The short localizable label for the status. */ displayStatus?: string; /** * The detailed status message, including for alerts and error messages. */ message?: string; /** * The time of the status. */ time?: Date; } /** * An interface representing SubResource. */ export interface SubResource extends BaseResource { /** * Resource Id */ id?: string; } /** * Describes a virtual machine scale set sku. */ export interface Sku { /** * The sku name. */ name?: string; /** * Specifies the tier of virtual machines in a scale set.

Possible Values:

**Standard**

**Basic** */ tier?: string; /** * Specifies the number of virtual machines in the scale set. */ capacity?: number; } /** * The Resource model definition. */ export interface Resource extends BaseResource { /** * Resource Id * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** * Resource name * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Resource type * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; /** * Resource location */ location: string; /** * Resource tags */ tags?: { [propertyName: string]: string }; } /** * Specifies information about the availability set that the virtual machine should be assigned to. * Virtual machines specified in the same availability set are allocated to different nodes to * maximize availability. For more information about availability sets, see [Manage the * availability of virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). *

For more information on Azure planned maintenance, see [Planned maintenance for virtual * machines in * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

Currently, a VM can only be added to availability set at creation time. An existing VM * cannot be added to an availability set. */ export interface AvailabilitySet extends Resource { /** * Update Domain count. */ platformUpdateDomainCount?: number; /** * Fault Domain count. */ platformFaultDomainCount?: number; /** * A list of references to all virtual machines in the availability set. */ virtualMachines?: SubResource[]; /** * The resource status information. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly statuses?: InstanceViewStatus[]; /** * Sku of the availability set */ sku?: Sku; } /** * The Update Resource model definition. */ export interface UpdateResource extends BaseResource { /** * Resource tags */ tags?: { [propertyName: string]: string }; } /** * Specifies information about the availability set that the virtual machine should be assigned to. * Only tags may be updated. */ export interface AvailabilitySetUpdate extends UpdateResource { /** * Update Domain count. */ platformUpdateDomainCount?: number; /** * Fault Domain count. */ platformFaultDomainCount?: number; /** * A list of references to all virtual machines in the availability set. */ virtualMachines?: SubResource[]; /** * The resource status information. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly statuses?: InstanceViewStatus[]; /** * Sku of the availability set */ sku?: Sku; } /** * Describes the properties of a VM size. */ export interface VirtualMachineSize { /** * The name of the virtual machine size. */ name?: string; /** * The number of cores supported by the virtual machine size. */ numberOfCores?: number; /** * The OS disk size, in MB, allowed by the virtual machine size. */ osDiskSizeInMB?: number; /** * The resource disk size, in MB, allowed by the virtual machine size. */ resourceDiskSizeInMB?: number; /** * The amount of memory, in MB, supported by the virtual machine size. */ memoryInMB?: number; /** * The maximum number of data disks that can be attached to the virtual machine size. */ maxDataDiskCount?: number; } /** * Describes a Virtual Machine Extension Image. */ export interface VirtualMachineExtensionImage extends Resource { /** * The operating system this extension supports. */ operatingSystem: string; /** * The type of role (IaaS or PaaS) this extension supports. */ computeRole: string; /** * The schema defined by publisher, where extension consumers should provide settings in a * matching schema. */ handlerSchema: string; /** * Whether the extension can be used on xRP VMScaleSets. By default existing extensions are * usable on scalesets, but there might be cases where a publisher wants to explicitly indicate * the extension is only enabled for CRP VMs but not VMSS. */ vmScaleSetEnabled?: boolean; /** * Whether the handler can support multiple extensions. */ supportsMultipleExtensions?: boolean; } /** * Virtual machine image resource information. */ export interface VirtualMachineImageResource extends SubResource { /** * The name of the resource. */ name: string; /** * The supported Azure location of the resource. */ location: string; /** * Specifies the tags that are assigned to the virtual machine. For more information about using * tags, see [Using tags to organize your Azure * resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md). */ tags?: { [propertyName: string]: string }; } /** * The instance view of a virtual machine extension. */ export interface VirtualMachineExtensionInstanceView { /** * The virtual machine extension name. */ name?: string; /** * Specifies the type of the extension; an example is "CustomScriptExtension". */ type?: string; /** * Specifies the version of the script handler. */ typeHandlerVersion?: string; /** * The resource status information. */ substatuses?: InstanceViewStatus[]; /** * The resource status information. */ statuses?: InstanceViewStatus[]; } /** * Describes a Virtual Machine Extension. */ export interface VirtualMachineExtension extends Resource { /** * How the extension handler should be forced to update even if the extension configuration has * not changed. */ forceUpdateTag?: string; /** * The name of the extension handler publisher. */ publisher?: string; /** * Specifies the type of the extension; an example is "CustomScriptExtension". */ virtualMachineExtensionType?: string; /** * Specifies the version of the script handler. */ typeHandlerVersion?: string; /** * Indicates whether the extension should use a newer minor version if one is available at * deployment time. Once deployed, however, the extension will not upgrade minor versions unless * redeployed, even with this property set to true. */ autoUpgradeMinorVersion?: boolean; /** * Json formatted public settings for the extension. */ settings?: any; /** * The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no * protected settings at all. */ protectedSettings?: any; /** * The provisioning state, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; /** * The virtual machine extension instance view. */ instanceView?: VirtualMachineExtensionInstanceView; } /** * Describes a Virtual Machine Extension. */ export interface VirtualMachineExtensionUpdate extends UpdateResource { /** * How the extension handler should be forced to update even if the extension configuration has * not changed. */ forceUpdateTag?: string; /** * The name of the extension handler publisher. */ publisher?: string; /** * Specifies the type of the extension; an example is "CustomScriptExtension". */ type?: string; /** * Specifies the version of the script handler. */ typeHandlerVersion?: string; /** * Indicates whether the extension should use a newer minor version if one is available at * deployment time. Once deployed, however, the extension will not upgrade minor versions unless * redeployed, even with this property set to true. */ autoUpgradeMinorVersion?: boolean; /** * Json formatted public settings for the extension. */ settings?: any; /** * The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no * protected settings at all. */ protectedSettings?: any; } /** * The List Extension operation response */ export interface VirtualMachineExtensionsListResult { /** * The list of extensions */ value?: VirtualMachineExtension[]; } /** * Used for establishing the purchase context of any 3rd Party artifact through MarketPlace. */ export interface PurchasePlan { /** * The publisher ID. */ publisher: string; /** * The plan ID. */ name: string; /** * Specifies the product of the image from the marketplace. This is the same value as Offer under * the imageReference element. */ product: string; } /** * Contains the os disk image information. */ export interface OSDiskImage { /** * The operating system of the osDiskImage. Possible values include: 'Windows', 'Linux' */ operatingSystem: OperatingSystemTypes; } /** * Contains the data disk images information. */ export interface DataDiskImage { /** * Specifies the logical unit number of the data disk. This value is used to identify data disks * within the VM and therefore must be unique for each data disk attached to a VM. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lun?: number; } /** * Describes a Virtual Machine Image. */ export interface VirtualMachineImage extends VirtualMachineImageResource { plan?: PurchasePlan; osDiskImage?: OSDiskImage; dataDiskImages?: DataDiskImage[]; } /** * The Usage Names. */ export interface UsageName { /** * The name of the resource. */ value?: string; /** * The localized name of the resource. */ localizedValue?: string; } /** * Describes Compute Resource Usage. */ export interface Usage { /** * The current usage of the resource. */ currentValue: number; /** * The maximum permitted usage of the resource. */ limit: number; /** * The name of the type of usage. */ name: UsageName; } /** * Capture Virtual Machine parameters. */ export interface VirtualMachineCaptureParameters { /** * The captured virtual hard disk's name prefix. */ vhdPrefix: string; /** * The destination container name. */ destinationContainerName: string; /** * Specifies whether to overwrite the destination virtual hard disk, in case of conflict. */ overwriteVhds: boolean; } /** * Resource Id. */ export interface VirtualMachineCaptureResult extends SubResource { /** * Operation output data (raw JSON) */ output?: any; } /** * Specifies information about the marketplace image used to create the virtual machine. This * element is only used for marketplace images. Before you can use a marketplace image from an API, * you must enable the image for programmatic use. In the Azure portal, find the marketplace image * that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter * any required information and then click **Save**. */ export interface Plan { /** * The plan ID. */ name?: string; /** * The publisher ID. */ publisher?: string; /** * Specifies the product of the image from the marketplace. This is the same value as Offer under * the imageReference element. */ product?: string; /** * The promotion code. */ promotionCode?: string; } /** * Specifies the hardware settings for the virtual machine. */ export interface HardwareProfile { /** * Specifies the size of the virtual machine. For more information about virtual machine sizes, * see [Sizes for virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). *

The available VM sizes depend on region and availability set. For a list of available * sizes use these APIs:

[List all available virtual machine sizes in an availability * set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)

* [List all available virtual machine sizes in a * region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)

[List * all available virtual machine sizes for * resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes). * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', 'Basic_A4', * 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', 'Standard_A4', 'Standard_A5', * 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A9', 'Standard_A10', 'Standard_A11', * 'Standard_A1_v2', 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', 'Standard_B2s', * 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', 'Standard_D1', 'Standard_D2', * 'Standard_D3', 'Standard_D4', 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', * 'Standard_D1_v2', 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2', * 'Standard_D2_v3', 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3', 'Standard_D32_v3', * 'Standard_D64_v3', 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', * 'Standard_D16s_v3', 'Standard_D32s_v3', 'Standard_D64s_v3', 'Standard_D11_v2', * 'Standard_D12_v2', 'Standard_D13_v2', 'Standard_D14_v2', 'Standard_D15_v2', 'Standard_DS1', * 'Standard_DS2', 'Standard_DS3', 'Standard_DS4', 'Standard_DS11', 'Standard_DS12', * 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', 'Standard_DS2_v2', 'Standard_DS3_v2', * 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2', 'Standard_DS12_v2', * 'Standard_DS13_v2', 'Standard_DS14_v2', 'Standard_DS15_v2', 'Standard_DS13-4_v2', * 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', 'Standard_E2_v3', * 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3', 'Standard_E64_v3', * 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', * 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', 'Standard_E32-8s_v3', * 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4', * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', 'Standard_F8s', * 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2', * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', * 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', * 'Standard_GS4', 'Standard_GS5', 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', * 'Standard_GS5-8', 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', 'Standard_L16s', * 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', 'Standard_M128s', 'Standard_M128ms', * 'Standard_M64-32ms', 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', 'Standard_NC6s_v2', * 'Standard_NC12s_v2', 'Standard_NC24s_v2', 'Standard_NC24rs_v2', 'Standard_NC6s_v3', * 'Standard_NC12s_v3', 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', 'Standard_NV12', * 'Standard_NV24' */ vmSize?: VirtualMachineSizeTypes; } /** * Specifies information about the image to use. You can specify information about platform images, * marketplace images, or virtual machine images. This element is required when you want to use a * platform image, marketplace image, or virtual machine image, but is not used in other creation * operations. */ export interface ImageReference extends SubResource { /** * The image publisher. */ publisher?: string; /** * Specifies the offer of the platform image or marketplace image used to create the virtual * machine. */ offer?: string; /** * The image SKU. */ sku?: string; /** * Specifies the version of the platform image or marketplace image used to create the virtual * machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are * decimal numbers. Specify 'latest' to use the latest version of an image available at deploy * time. Even if you use 'latest', the VM image will not automatically update after deploy time * even if a new version becomes available. */ version?: string; } /** * Describes a reference to Key Vault Secret */ export interface KeyVaultSecretReference { /** * The URL referencing a secret in a Key Vault. */ secretUrl: string; /** * The relative URL of the Key Vault containing the secret. */ sourceVault: SubResource; } /** * Describes a reference to Key Vault Key */ export interface KeyVaultKeyReference { /** * The URL referencing a key encryption key in Key Vault. */ keyUrl: string; /** * The relative URL of the Key Vault containing the key. */ sourceVault: SubResource; } /** * Describes a Encryption Settings for a Disk */ export interface DiskEncryptionSettings { /** * Specifies the location of the disk encryption key, which is a Key Vault Secret. */ diskEncryptionKey?: KeyVaultSecretReference; /** * Specifies the location of the key encryption key in Key Vault. */ keyEncryptionKey?: KeyVaultKeyReference; /** * Specifies whether disk encryption should be enabled on the virtual machine. */ enabled?: boolean; } /** * Describes the uri of a disk. */ export interface VirtualHardDisk { /** * Specifies the virtual hard disk's uri. */ uri?: string; } /** * The parameters of a managed disk. */ export interface ManagedDiskParameters extends SubResource { /** * Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or * Premium_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS' */ storageAccountType?: StorageAccountTypes; } /** * Specifies information about the operating system disk used by the virtual machine.

For * more information about disks, see [About disks and VHDs for Azure virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). */ export interface OSDisk { /** * This property allows you to specify the type of the OS that is included in the disk if * creating a VM from user-image or a specialized VHD.

Possible values are:

* **Windows**

**Linux**. Possible values include: 'Windows', 'Linux' */ osType?: OperatingSystemTypes; /** * Specifies the encryption settings for the OS Disk.

Minimum api-version: 2015-06-15 */ encryptionSettings?: DiskEncryptionSettings; /** * The disk name. */ name?: string; /** * The virtual hard disk. */ vhd?: VirtualHardDisk; /** * The source user image virtual hard disk. The virtual hard disk will be copied before being * attached to the virtual machine. If SourceImage is provided, the destination virtual hard * drive must not exist. */ image?: VirtualHardDisk; /** * Specifies the caching requirements.

Possible values are:

**None**

* **ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly * for Premium storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingTypes; /** * Specifies whether writeAccelerator should be enabled or disabled on the disk. */ writeAcceleratorEnabled?: boolean; /** * Specifies how the virtual machine should be created.

Possible values are:

* **Attach** \u2013 This value is used when you are using a specialized disk to create the * virtual machine.

**FromImage** \u2013 This value is used when you are using an image * to create the virtual machine. If you are using a platform image, you also use the * imageReference element described above. If you are using a marketplace image, you also use * the plan element previously described. Possible values include: 'FromImage', 'Empty', 'Attach' */ createOption: DiskCreateOptionTypes; /** * Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite * the size of the disk in a virtual machine image.

This value cannot be larger than * 1023 GB */ diskSizeGB?: number; /** * The managed disk parameters. */ managedDisk?: ManagedDiskParameters; } /** * Describes a data disk. */ export interface DataDisk { /** * Specifies the logical unit number of the data disk. This value is used to identify data disks * within the VM and therefore must be unique for each data disk attached to a VM. */ lun: number; /** * The disk name. */ name?: string; /** * The virtual hard disk. */ vhd?: VirtualHardDisk; /** * The source user image virtual hard disk. The virtual hard disk will be copied before being * attached to the virtual machine. If SourceImage is provided, the destination virtual hard * drive must not exist. */ image?: VirtualHardDisk; /** * Specifies the caching requirements.

Possible values are:

**None**

* **ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly * for Premium storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingTypes; /** * Specifies whether writeAccelerator should be enabled or disabled on the disk. */ writeAcceleratorEnabled?: boolean; /** * Specifies how the virtual machine should be created.

Possible values are:

* **Attach** \u2013 This value is used when you are using a specialized disk to create the * virtual machine.

**FromImage** \u2013 This value is used when you are using an image * to create the virtual machine. If you are using a platform image, you also use the * imageReference element described above. If you are using a marketplace image, you also use * the plan element previously described. Possible values include: 'FromImage', 'Empty', 'Attach' */ createOption: DiskCreateOptionTypes; /** * Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite * the size of the disk in a virtual machine image.

This value cannot be larger than * 1023 GB */ diskSizeGB?: number; /** * The managed disk parameters. */ managedDisk?: ManagedDiskParameters; } /** * Specifies the storage settings for the virtual machine disks. */ export interface StorageProfile { /** * Specifies information about the image to use. You can specify information about platform * images, marketplace images, or virtual machine images. This element is required when you want * to use a platform image, marketplace image, or virtual machine image, but is not used in other * creation operations. */ imageReference?: ImageReference; /** * Specifies information about the operating system disk used by the virtual machine.

* For more information about disks, see [About disks and VHDs for Azure virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). */ osDisk?: OSDisk; /** * Specifies the parameters that are used to add a data disk to a virtual machine.

For * more information about disks, see [About disks and VHDs for Azure virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). */ dataDisks?: DataDisk[]; } /** * Specifies additional XML formatted information that can be included in the Unattend.xml file, * which is used by Windows Setup. Contents are defined by setting name, component name, and the * pass in which the content is applied. */ export interface AdditionalUnattendContent { /** * The pass name. Currently, the only allowable value is OobeSystem. Possible values include: * 'OobeSystem' */ passName?: PassNames; /** * The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup. * Possible values include: 'Microsoft-Windows-Shell-Setup' */ componentName?: ComponentNames; /** * Specifies the name of the setting to which the content applies. Possible values are: * FirstLogonCommands and AutoLogon. Possible values include: 'AutoLogon', 'FirstLogonCommands' */ settingName?: SettingNames; /** * Specifies the XML formatted content that is added to the unattend.xml file for the specified * path and component. The XML must be less than 4KB and must include the root element for the * setting or feature that is being inserted. */ content?: string; } /** * Describes Protocol and thumbprint of Windows Remote Management listener */ export interface WinRMListener { /** * Specifies the protocol of listener.

Possible values are:
**http**

* **https**. Possible values include: 'Http', 'Https' */ protocol?: ProtocolTypes; /** * This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a * secret to the Key Vault, see [Add a key or secret to the key * vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, * your certificate needs to be It is the Base64 encoding of the following JSON Object which is * encoded in UTF-8:

{
"data":"",
* "dataType":"pfx",
"password":""
} */ certificateUrl?: string; } /** * Describes Windows Remote Management configuration of the VM */ export interface WinRMConfiguration { /** * The list of Windows Remote Management listeners */ listeners?: WinRMListener[]; } /** * Specifies Windows operating system settings on the virtual machine. */ export interface WindowsConfiguration { /** * Indicates whether virtual machine agent should be provisioned on the virtual machine.

* When this property is not specified in the request body, default behavior is to set it to * true. This will ensure that VM Agent is installed on the VM so that extensions can be added * to the VM later. */ provisionVMAgent?: boolean; /** * Indicates whether virtual machine is enabled for automatic updates. */ enableAutomaticUpdates?: boolean; /** * Specifies the time zone of the virtual machine. e.g. "Pacific Standard Time" */ timeZone?: string; /** * Specifies additional base-64 encoded XML formatted information that can be included in the * Unattend.xml file, which is used by Windows Setup. */ additionalUnattendContent?: AdditionalUnattendContent[]; /** * Specifies the Windows Remote Management listeners. This enables remote Windows PowerShell. */ winRM?: WinRMConfiguration; } /** * Contains information about SSH certificate public key and the path on the Linux VM where the * public key is placed. */ export interface SshPublicKey { /** * Specifies the full path on the created VM where ssh public key is stored. If the file already * exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys */ path?: string; /** * SSH public key certificate used to authenticate with the VM through ssh. The key needs to be * at least 2048-bit and in ssh-rsa format.

For creating ssh keys, see [Create SSH keys * on Linux and Mac for Linux VMs in * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-mac-create-ssh-keys?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). */ keyData?: string; } /** * SSH configuration for Linux based VMs running on Azure */ export interface SshConfiguration { /** * The list of SSH public keys used to authenticate with linux based VMs. */ publicKeys?: SshPublicKey[]; } /** * Specifies the Linux operating system settings on the virtual machine.

For a list of * supported Linux distributions, see [Linux on Azure-Endorsed * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) *

For running non-endorsed distributions, see [Information for Non-Endorsed * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). */ export interface LinuxConfiguration { /** * Specifies whether password authentication should be disabled. */ disablePasswordAuthentication?: boolean; /** * Specifies the ssh key configuration for a Linux OS. */ ssh?: SshConfiguration; } /** * Describes a single certificate reference in a Key Vault, and where the certificate should reside * on the VM. */ export interface VaultCertificate { /** * This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a * secret to the Key Vault, see [Add a key or secret to the key * vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, * your certificate needs to be It is the Base64 encoding of the following JSON Object which is * encoded in UTF-8:

{
"data":"",
* "dataType":"pfx",
"password":""
} */ certificateUrl?: string; /** * For Windows VMs, specifies the certificate store on the Virtual Machine to which the * certificate should be added. The specified certificate store is implicitly in the LocalMachine * account.

For Linux VMs, the certificate file is placed under the /var/lib/waagent * directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file * and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted. */ certificateStore?: string; } /** * Describes a set of certificates which are all in the same Key Vault. */ export interface VaultSecretGroup { /** * The relative URL of the Key Vault containing all of the certificates in VaultCertificates. */ sourceVault?: SubResource; /** * The list of key vault references in SourceVault which contain certificates. */ vaultCertificates?: VaultCertificate[]; } /** * Specifies the operating system settings for the virtual machine. */ export interface OSProfile { /** * Specifies the host OS name of the virtual machine.

This name cannot be updated after * the VM is created.

**Max-length (Windows):** 15 characters

**Max-length * (Linux):** 64 characters.

For naming conventions and restrictions see [Azure * infrastructure services implementation * guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions). */ computerName?: string; /** * Specifies the name of the administrator account.

**Windows-only restriction:** Cannot * end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", * "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", * "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", * "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length * (Linux):** 1 character

**Max-length (Linux):** 64 characters

**Max-length * (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root * privileges on Linux virtual machines in * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • * For a list of built-in system users on Linux that should not be used in this field, see * [Selecting User Names for Linux on * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) */ adminUsername?: string; /** * Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 * characters

    **Minimum-length (Linux):** 6 characters

    **Max-length * (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    * **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower * characters
    Has upper characters
    Has a digit
    Has a special character (Regex match * [\W_])

    **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"

    For * resetting the password, see [How to reset the Remote Desktop service or its login password in * a Windows * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    For resetting root password, see [Manage users, SSH, and check or repair disks on * Azure Linux VMs using the VMAccess * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password) */ adminPassword?: string; /** * Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a * binary array that is saved as a file on the Virtual Machine. The maximum length of the binary * array is 65535 bytes.

    For using cloud-init for your VM, see [Using cloud-init to * customize a Linux VM during * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) */ customData?: string; /** * Specifies Windows operating system settings on the virtual machine. */ windowsConfiguration?: WindowsConfiguration; /** * Specifies the Linux operating system settings on the virtual machine.

    For a list of * supported Linux distributions, see [Linux on Azure-Endorsed * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) *

    For running non-endorsed distributions, see [Information for Non-Endorsed * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). */ linuxConfiguration?: LinuxConfiguration; /** * Specifies set of certificates that should be installed onto the virtual machine. */ secrets?: VaultSecretGroup[]; } /** * Describes a network interface reference. */ export interface NetworkInterfaceReference extends SubResource { /** * Specifies the primary network interface in case the virtual machine has more than 1 network * interface. */ primary?: boolean; } /** * Specifies the network interfaces of the virtual machine. */ export interface NetworkProfile { /** * Specifies the list of resource Ids for the network interfaces associated with the virtual * machine. */ networkInterfaces?: NetworkInterfaceReference[]; } /** * Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot * to diagnose VM status.

    You can easily view the output of your console log.

    * Azure also enables you to see a screenshot of the VM from the hypervisor. */ export interface BootDiagnostics { /** * Whether boot diagnostics should be enabled on the Virtual Machine. */ enabled?: boolean; /** * Uri of the storage account to use for placing the console output and screenshot. */ storageUri?: string; } /** * Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15. */ export interface DiagnosticsProfile { /** * Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot * to diagnose VM status.

    You can easily view the output of your console log.

    * Azure also enables you to see a screenshot of the VM from the hypervisor. */ bootDiagnostics?: BootDiagnostics; } /** * The instance view of a virtual machine extension handler. */ export interface VirtualMachineExtensionHandlerInstanceView { /** * Specifies the type of the extension; an example is "CustomScriptExtension". */ type?: string; /** * Specifies the version of the script handler. */ typeHandlerVersion?: string; /** * The extension handler status. */ status?: InstanceViewStatus; } /** * The instance view of the VM Agent running on the virtual machine. */ export interface VirtualMachineAgentInstanceView { /** * The VM Agent full version. */ vmAgentVersion?: string; /** * The virtual machine extension handler instance view. */ extensionHandlers?: VirtualMachineExtensionHandlerInstanceView[]; /** * The resource status information. */ statuses?: InstanceViewStatus[]; } /** * The instance view of the disk. */ export interface DiskInstanceView { /** * The disk name. */ name?: string; /** * Specifies the encryption settings for the OS Disk.

    Minimum api-version: 2015-06-15 */ encryptionSettings?: DiskEncryptionSettings[]; /** * The resource status information. */ statuses?: InstanceViewStatus[]; } /** * The instance view of a virtual machine boot diagnostics. */ export interface BootDiagnosticsInstanceView { /** * The console screenshot blob URI. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly consoleScreenshotBlobUri?: string; /** * The Linux serial console log blob Uri. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly serialConsoleLogBlobUri?: string; } /** * Identity for the virtual machine. */ export interface VirtualMachineIdentity { /** * The principal id of virtual machine identity. This property will only be provided for a system * assigned identity. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly principalId?: string; /** * The tenant id associated with the virtual machine. This property will only be provided for a * system assigned identity. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly tenantId?: string; /** * The type of identity used for the virtual machine. The type 'SystemAssigned, UserAssigned' * includes both an implicitly created identity and a set of user assigned identities. The type * 'None' will remove any identities from the virtual machine. Possible values include: * 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' */ type?: ResourceIdentityType; /** * The list of user identities associated with the Virtual Machine. The user identity references * will be ARM resource ids in the form: * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/identities/{identityName}'. */ identityIds?: string[]; } /** * Maintenance Operation Status. */ export interface MaintenanceRedeployStatus { /** * True, if customer is allowed to perform Maintenance. */ isCustomerInitiatedMaintenanceAllowed?: boolean; /** * Start Time for the Pre Maintenance Window. */ preMaintenanceWindowStartTime?: Date; /** * End Time for the Pre Maintenance Window. */ preMaintenanceWindowEndTime?: Date; /** * Start Time for the Maintenance Window. */ maintenanceWindowStartTime?: Date; /** * End Time for the Maintenance Window. */ maintenanceWindowEndTime?: Date; /** * The Last Maintenance Operation Result Code. Possible values include: 'None', 'RetryLater', * 'MaintenanceAborted', 'MaintenanceCompleted' */ lastOperationResultCode?: MaintenanceOperationResultCodeTypes; /** * Message returned for the last Maintenance Operation. */ lastOperationMessage?: string; } /** * The instance view of a virtual machine. */ export interface VirtualMachineInstanceView { /** * Specifies the update domain of the virtual machine. */ platformUpdateDomain?: number; /** * Specifies the fault domain of the virtual machine. */ platformFaultDomain?: number; /** * The computer name assigned to the virtual machine. */ computerName?: string; /** * The Operating System running on the virtual machine. */ osName?: string; /** * The version of Operating System running on the virtual machine. */ osVersion?: string; /** * The Remote desktop certificate thumbprint. */ rdpThumbPrint?: string; /** * The VM Agent running on the virtual machine. */ vmAgent?: VirtualMachineAgentInstanceView; /** * The Maintenance Operation status on the virtual machine. */ maintenanceRedeployStatus?: MaintenanceRedeployStatus; /** * The virtual machine disk information. */ disks?: DiskInstanceView[]; /** * The extensions information. */ extensions?: VirtualMachineExtensionInstanceView[]; /** * Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot * to diagnose VM status.

    You can easily view the output of your console log.

    * Azure also enables you to see a screenshot of the VM from the hypervisor. */ bootDiagnostics?: BootDiagnosticsInstanceView; /** * The resource status information. */ statuses?: InstanceViewStatus[]; } /** * Describes a Virtual Machine. */ export interface VirtualMachine extends Resource { /** * Specifies information about the marketplace image used to create the virtual machine. This * element is only used for marketplace images. Before you can use a marketplace image from an * API, you must enable the image for programmatic use. In the Azure portal, find the * marketplace image that you want to use and then click **Want to deploy programmatically, Get * Started ->**. Enter any required information and then click **Save**. */ plan?: Plan; /** * Specifies the hardware settings for the virtual machine. */ hardwareProfile?: HardwareProfile; /** * Specifies the storage settings for the virtual machine disks. */ storageProfile?: StorageProfile; /** * Specifies the operating system settings for the virtual machine. */ osProfile?: OSProfile; /** * Specifies the network interfaces of the virtual machine. */ networkProfile?: NetworkProfile; /** * Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15. */ diagnosticsProfile?: DiagnosticsProfile; /** * Specifies information about the availability set that the virtual machine should be assigned * to. Virtual machines specified in the same availability set are allocated to different nodes * to maximize availability. For more information about availability sets, see [Manage the * availability of virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). *

    For more information on Azure planned maintenance, see [Planned maintenance for * virtual machines in * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    Currently, a VM can only be added to availability set at creation time. An existing * VM cannot be added to an availability set. */ availabilitySet?: SubResource; /** * The provisioning state, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; /** * The virtual machine instance view. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly instanceView?: VirtualMachineInstanceView; /** * Specifies that the image or disk that is being used was licensed on-premises. This element is * only used for images that contain the Windows Server operating system.

    Possible * values are:

    Windows_Client

    Windows_Server

    If this element is * included in a request for an update, the value must match the initial value. This value cannot * be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    Minimum api-version: 2015-06-15 */ licenseType?: string; /** * Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all * Azure IaaS VMs SMBIOS and can be read using platform BIOS commands. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly vmId?: string; /** * The virtual machine child extension resources. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly resources?: VirtualMachineExtension[]; /** * The identity of the virtual machine, if configured. */ identity?: VirtualMachineIdentity; /** * The virtual machine zones. */ zones?: string[]; } /** * Describes a Virtual Machine Update. */ export interface VirtualMachineUpdate extends UpdateResource { /** * Specifies information about the marketplace image used to create the virtual machine. This * element is only used for marketplace images. Before you can use a marketplace image from an * API, you must enable the image for programmatic use. In the Azure portal, find the * marketplace image that you want to use and then click **Want to deploy programmatically, Get * Started ->**. Enter any required information and then click **Save**. */ plan?: Plan; /** * Specifies the hardware settings for the virtual machine. */ hardwareProfile?: HardwareProfile; /** * Specifies the storage settings for the virtual machine disks. */ storageProfile?: StorageProfile; /** * Specifies the operating system settings for the virtual machine. */ osProfile?: OSProfile; /** * Specifies the network interfaces of the virtual machine. */ networkProfile?: NetworkProfile; /** * Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15. */ diagnosticsProfile?: DiagnosticsProfile; /** * Specifies information about the availability set that the virtual machine should be assigned * to. Virtual machines specified in the same availability set are allocated to different nodes * to maximize availability. For more information about availability sets, see [Manage the * availability of virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). *

    For more information on Azure planned maintenance, see [Planned maintenance for * virtual machines in * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    Currently, a VM can only be added to availability set at creation time. An existing * VM cannot be added to an availability set. */ availabilitySet?: SubResource; /** * The provisioning state, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; /** * The virtual machine instance view. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly instanceView?: VirtualMachineInstanceView; /** * Specifies that the image or disk that is being used was licensed on-premises. This element is * only used for images that contain the Windows Server operating system.

    Possible * values are:

    Windows_Client

    Windows_Server

    If this element is * included in a request for an update, the value must match the initial value. This value cannot * be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    Minimum api-version: 2015-06-15 */ licenseType?: string; /** * Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all * Azure IaaS VMs SMBIOS and can be read using platform BIOS commands. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly vmId?: string; /** * The identity of the virtual machine, if configured. */ identity?: VirtualMachineIdentity; /** * The virtual machine zones. */ zones?: string[]; } /** * The configuration parameters used for performing automatic OS upgrade. */ export interface AutoOSUpgradePolicy { /** * Whether OS image rollback feature should be disabled. Default value is false. */ disableAutoRollback?: boolean; } /** * The configuration parameters used while performing a rolling upgrade. */ export interface RollingUpgradePolicy { /** * The maximum percent of total virtual machine instances that will be upgraded simultaneously by * the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or * future batches can cause the percentage of instances in a batch to decrease to ensure higher * reliability. The default value for this parameter is 20%. */ maxBatchInstancePercent?: number; /** * The maximum percentage of the total virtual machine instances in the scale set that can be * simultaneously unhealthy, either as a result of being upgraded, or by being found in an * unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This * constraint will be checked prior to starting any batch. The default value for this parameter * is 20%. */ maxUnhealthyInstancePercent?: number; /** * The maximum percentage of upgraded virtual machine instances that can be found to be in an * unhealthy state. This check will happen after each batch is upgraded. If this percentage is * ever exceeded, the rolling update aborts. The default value for this parameter is 20%. */ maxUnhealthyUpgradedInstancePercent?: number; /** * The wait time between completing the update for all virtual machines in one batch and starting * the next batch. The time duration should be specified in ISO 8601 format. The default value is * 0 seconds (PT0S). */ pauseTimeBetweenBatches?: string; } /** * Describes an upgrade policy - automatic, manual, or rolling. */ export interface UpgradePolicy { /** * Specifies the mode of an upgrade to virtual machines in the scale set.

    Possible * values are:

    **Manual** - You control the application of updates to virtual * machines in the scale set. You do this by using the manualUpgrade action.

    * **Automatic** - All virtual machines in the scale set are automatically updated at the same * time. Possible values include: 'Automatic', 'Manual', 'Rolling' */ mode?: UpgradeMode; /** * The configuration parameters used while performing a rolling upgrade. */ rollingUpgradePolicy?: RollingUpgradePolicy; /** * Whether OS upgrades should automatically be applied to scale set instances in a rolling * fashion when a newer version of the image becomes available. */ automaticOSUpgrade?: boolean; /** * Configuration parameters used for performing automatic OS Upgrade. */ autoOSUpgradePolicy?: AutoOSUpgradePolicy; } /** * Describes an Operating System disk. */ export interface ImageOSDisk { /** * This property allows you to specify the type of the OS that is included in the disk if * creating a VM from a custom image.

    Possible values are:

    **Windows**

    * **Linux**. Possible values include: 'Windows', 'Linux' */ osType: OperatingSystemTypes; /** * The OS State. Possible values include: 'Generalized', 'Specialized' */ osState: OperatingSystemStateTypes; /** * The snapshot. */ snapshot?: SubResource; /** * The managedDisk. */ managedDisk?: SubResource; /** * The Virtual Hard Disk. */ blobUri?: string; /** * Specifies the caching requirements.

    Possible values are:

    **None**

    * **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly * for Premium storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingTypes; /** * Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the * name of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB */ diskSizeGB?: number; /** * Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or * Premium_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS' */ storageAccountType?: StorageAccountTypes; } /** * Describes a data disk. */ export interface ImageDataDisk { /** * Specifies the logical unit number of the data disk. This value is used to identify data disks * within the VM and therefore must be unique for each data disk attached to a VM. */ lun: number; /** * The snapshot. */ snapshot?: SubResource; /** * The managedDisk. */ managedDisk?: SubResource; /** * The Virtual Hard Disk. */ blobUri?: string; /** * Specifies the caching requirements.

    Possible values are:

    **None**

    * **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly * for Premium storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingTypes; /** * Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the * name of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB */ diskSizeGB?: number; /** * Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or * Premium_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS' */ storageAccountType?: StorageAccountTypes; } /** * Describes a storage profile. */ export interface ImageStorageProfile { /** * Specifies information about the operating system disk used by the virtual machine.

    * For more information about disks, see [About disks and VHDs for Azure virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). */ osDisk?: ImageOSDisk; /** * Specifies the parameters that are used to add a data disk to a virtual machine.

    For * more information about disks, see [About disks and VHDs for Azure virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). */ dataDisks?: ImageDataDisk[]; /** * Specifies whether an image is zone resilient or not. Default is false. Zone resilient images * can be created only in regions that provide Zone Redundant Storage (ZRS). */ zoneResilient?: boolean; } /** * The source user image virtual hard disk. The virtual hard disk will be copied before being * attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive * must not exist. */ export interface Image extends Resource { /** * The source virtual machine from which Image is created. */ sourceVirtualMachine?: SubResource; /** * Specifies the storage settings for the virtual machine disks. */ storageProfile?: ImageStorageProfile; /** * The provisioning state. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; } /** * The source user image virtual hard disk. Only tags may be updated. */ export interface ImageUpdate extends UpdateResource { /** * The source virtual machine from which Image is created. */ sourceVirtualMachine?: SubResource; /** * Specifies the storage settings for the virtual machine disks. */ storageProfile?: ImageStorageProfile; /** * The provisioning state. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; } /** * Identity for the virtual machine scale set. */ export interface VirtualMachineScaleSetIdentity { /** * The principal id of virtual machine scale set identity. This property will only be provided * for a system assigned identity. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly principalId?: string; /** * The tenant id associated with the virtual machine scale set. This property will only be * provided for a system assigned identity. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly tenantId?: string; /** * The type of identity used for the virtual machine scale set. The type 'SystemAssigned, * UserAssigned' includes both an implicitly created identity and a set of user assigned * identities. The type 'None' will remove any identities from the virtual machine scale set. * Possible values include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', * 'None' */ type?: ResourceIdentityType; /** * The list of user identities associated with the virtual machine scale set. The user identity * references will be ARM resource ids in the form: * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/identities/{identityName}'. */ identityIds?: string[]; } /** * Describes a virtual machine scale set OS profile. */ export interface VirtualMachineScaleSetOSProfile { /** * Specifies the computer name prefix for all of the virtual machines in the scale set. Computer * name prefixes must be 1 to 15 characters long. */ computerNamePrefix?: string; /** * Specifies the name of the administrator account.

    **Windows-only restriction:** Cannot * end in "."

    **Disallowed values:** "administrator", "admin", "user", "user1", "test", * "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", * "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", * "support_388945a0", "sys", "test2", "test3", "user4", "user5".

    **Minimum-length * (Linux):** 1 character

    **Max-length (Linux):** 64 characters

    **Max-length * (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root * privileges on Linux virtual machines in * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • * For a list of built-in system users on Linux that should not be used in this field, see * [Selecting User Names for Linux on * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) */ adminUsername?: string; /** * Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 * characters

    **Minimum-length (Linux):** 6 characters

    **Max-length * (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    * **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower * characters
    Has upper characters
    Has a digit
    Has a special character (Regex match * [\W_])

    **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", * "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"

    For * resetting the password, see [How to reset the Remote Desktop service or its login password in * a Windows * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    For resetting root password, see [Manage users, SSH, and check or repair disks on * Azure Linux VMs using the VMAccess * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password) */ adminPassword?: string; /** * Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a * binary array that is saved as a file on the Virtual Machine. The maximum length of the binary * array is 65535 bytes.

    For using cloud-init for your VM, see [Using cloud-init to * customize a Linux VM during * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) */ customData?: string; /** * Specifies Windows operating system settings on the virtual machine. */ windowsConfiguration?: WindowsConfiguration; /** * Specifies the Linux operating system settings on the virtual machine.

    For a list of * supported Linux distributions, see [Linux on Azure-Endorsed * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) *

    For running non-endorsed distributions, see [Information for Non-Endorsed * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json). */ linuxConfiguration?: LinuxConfiguration; /** * Specifies set of certificates that should be installed onto the virtual machines in the scale * set. */ secrets?: VaultSecretGroup[]; } /** * Describes a virtual machine scale set OS profile. */ export interface VirtualMachineScaleSetUpdateOSProfile { /** * A base-64 encoded string of custom data. */ customData?: string; /** * The Windows Configuration of the OS profile. */ windowsConfiguration?: WindowsConfiguration; /** * The Linux Configuration of the OS profile. */ linuxConfiguration?: LinuxConfiguration; /** * The List of certificates for addition to the VM. */ secrets?: VaultSecretGroup[]; } /** * Describes the parameters of a ScaleSet managed disk. */ export interface VirtualMachineScaleSetManagedDiskParameters { /** * Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or * Premium_LRS. Possible values include: 'Standard_LRS', 'Premium_LRS' */ storageAccountType?: StorageAccountTypes; } /** * Describes a virtual machine scale set operating system disk. */ export interface VirtualMachineScaleSetOSDisk { /** * The disk name. */ name?: string; /** * Specifies the caching requirements.

    Possible values are:

    **None**

    * **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly * for Premium storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingTypes; /** * Specifies whether writeAccelerator should be enabled or disabled on the disk. */ writeAcceleratorEnabled?: boolean; /** * Specifies how the virtual machines in the scale set should be created.

    The only * allowed value is: **FromImage** \u2013 This value is used when you are using an image to * create the virtual machine. If you are using a platform image, you also use the imageReference * element described above. If you are using a marketplace image, you also use the plan element * previously described. Possible values include: 'FromImage', 'Empty', 'Attach' */ createOption: DiskCreateOptionTypes; /** * This property allows you to specify the type of the OS that is included in the disk if * creating a VM from user-image or a specialized VHD.

    Possible values are:

    * **Windows**

    **Linux**. Possible values include: 'Windows', 'Linux' */ osType?: OperatingSystemTypes; /** * Specifies information about the unmanaged user image to base the scale set on. */ image?: VirtualHardDisk; /** * Specifies the container urls that are used to store operating system disks for the scale set. */ vhdContainers?: string[]; /** * The managed disk parameters. */ managedDisk?: VirtualMachineScaleSetManagedDiskParameters; } /** * Describes virtual machine scale set operating system disk Update Object. This should be used for * Updating VMSS OS Disk. */ export interface VirtualMachineScaleSetUpdateOSDisk { /** * The caching type. Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingTypes; /** * Specifies whether writeAccelerator should be enabled or disabled on the disk. */ writeAcceleratorEnabled?: boolean; /** * The Source User Image VirtualHardDisk. This VirtualHardDisk will be copied before using it to * attach to the Virtual Machine. If SourceImage is provided, the destination VirtualHardDisk * should not exist. */ image?: VirtualHardDisk; /** * The list of virtual hard disk container uris. */ vhdContainers?: string[]; /** * The managed disk parameters. */ managedDisk?: VirtualMachineScaleSetManagedDiskParameters; } /** * Describes a virtual machine scale set data disk. */ export interface VirtualMachineScaleSetDataDisk { /** * The disk name. */ name?: string; /** * Specifies the logical unit number of the data disk. This value is used to identify data disks * within the VM and therefore must be unique for each data disk attached to a VM. */ lun: number; /** * Specifies the caching requirements.

    Possible values are:

    **None**

    * **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly * for Premium storage**. Possible values include: 'None', 'ReadOnly', 'ReadWrite' */ caching?: CachingTypes; /** * Specifies whether writeAccelerator should be enabled or disabled on the disk. */ writeAcceleratorEnabled?: boolean; /** * The create option. Possible values include: 'FromImage', 'Empty', 'Attach' */ createOption: DiskCreateOptionTypes; /** * Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite * the size of the disk in a virtual machine image.

    This value cannot be larger than * 1023 GB */ diskSizeGB?: number; /** * The managed disk parameters. */ managedDisk?: VirtualMachineScaleSetManagedDiskParameters; } /** * Describes a virtual machine scale set storage profile. */ export interface VirtualMachineScaleSetStorageProfile { /** * Specifies information about the image to use. You can specify information about platform * images, marketplace images, or virtual machine images. This element is required when you want * to use a platform image, marketplace image, or virtual machine image, but is not used in other * creation operations. */ imageReference?: ImageReference; /** * Specifies information about the operating system disk used by the virtual machines in the * scale set.

    For more information about disks, see [About disks and VHDs for Azure * virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). */ osDisk?: VirtualMachineScaleSetOSDisk; /** * Specifies the parameters that are used to add data disks to the virtual machines in the scale * set.

    For more information about disks, see [About disks and VHDs for Azure virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). */ dataDisks?: VirtualMachineScaleSetDataDisk[]; } /** * Describes a virtual machine scale set storage profile. */ export interface VirtualMachineScaleSetUpdateStorageProfile { /** * The image reference. */ imageReference?: ImageReference; /** * The OS disk. */ osDisk?: VirtualMachineScaleSetUpdateOSDisk; /** * The data disks. */ dataDisks?: VirtualMachineScaleSetDataDisk[]; } /** * The API entity reference. */ export interface ApiEntityReference { /** * The ARM resource id in the form of * /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... */ id?: string; } /** * Describes a virtual machines scale sets network configuration's DNS settings. */ export interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings { /** * The Domain name label.The concatenation of the domain name label and vm index will be the * domain name labels of the PublicIPAddress resources that will be created */ domainNameLabel: string; } /** * Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration */ export interface VirtualMachineScaleSetPublicIPAddressConfiguration { /** * The publicIP address configuration name. */ name: string; /** * The idle timeout of the public IP address. */ idleTimeoutInMinutes?: number; /** * The dns settings to be applied on the publicIP addresses . */ dnsSettings?: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings; } /** * Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration */ export interface VirtualMachineScaleSetUpdatePublicIPAddressConfiguration { /** * The publicIP address configuration name. */ name?: string; /** * The idle timeout of the public IP address. */ idleTimeoutInMinutes?: number; /** * The dns settings to be applied on the publicIP addresses . */ dnsSettings?: VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings; } /** * Describes a virtual machine scale set network profile's IP configuration. */ export interface VirtualMachineScaleSetIPConfiguration extends SubResource { /** * The IP configuration name. */ name: string; /** * Specifies the identifier of the subnet. */ subnet?: ApiEntityReference; /** * Specifies the primary network interface in case the virtual machine has more than 1 network * interface. */ primary?: boolean; /** * The publicIPAddressConfiguration. */ publicIPAddressConfiguration?: VirtualMachineScaleSetPublicIPAddressConfiguration; /** * Available from Api-Version 2017-03-30 onwards, it represents whether the specific * ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and * 'IPv6'. Possible values include: 'IPv4', 'IPv6' */ privateIPAddressVersion?: IPVersion; /** * Specifies an array of references to backend address pools of application gateways. A scale set * can reference backend address pools of multiple application gateways. Multiple scale sets * cannot use the same application gateway. */ applicationGatewayBackendAddressPools?: SubResource[]; /** * Specifies an array of references to backend address pools of load balancers. A scale set can * reference backend address pools of one public and one internal load balancer. Multiple scale * sets cannot use the same load balancer. */ loadBalancerBackendAddressPools?: SubResource[]; /** * Specifies an array of references to inbound Nat pools of the load balancers. A scale set can * reference inbound nat pools of one public and one internal load balancer. Multiple scale sets * cannot use the same load balancer */ loadBalancerInboundNatPools?: SubResource[]; } /** * Describes a virtual machine scale set network profile's IP configuration. */ export interface VirtualMachineScaleSetUpdateIPConfiguration extends SubResource { /** * The IP configuration name. */ name?: string; /** * The subnet. */ subnet?: ApiEntityReference; /** * Specifies the primary IP Configuration in case the network interface has more than one IP * Configuration. */ primary?: boolean; /** * The publicIPAddressConfiguration. */ publicIPAddressConfiguration?: VirtualMachineScaleSetUpdatePublicIPAddressConfiguration; /** * Available from Api-Version 2017-03-30 onwards, it represents whether the specific * ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and * 'IPv6'. Possible values include: 'IPv4', 'IPv6' */ privateIPAddressVersion?: IPVersion; /** * The application gateway backend address pools. */ applicationGatewayBackendAddressPools?: SubResource[]; /** * The load balancer backend address pools. */ loadBalancerBackendAddressPools?: SubResource[]; /** * The load balancer inbound nat pools. */ loadBalancerInboundNatPools?: SubResource[]; } /** * Describes a virtual machines scale sets network configuration's DNS settings. */ export interface VirtualMachineScaleSetNetworkConfigurationDnsSettings { /** * List of DNS servers IP addresses */ dnsServers?: string[]; } /** * Describes a virtual machine scale set network profile's network configurations. */ export interface VirtualMachineScaleSetNetworkConfiguration extends SubResource { /** * The network configuration name. */ name: string; /** * Specifies the primary network interface in case the virtual machine has more than 1 network * interface. */ primary?: boolean; /** * Specifies whether the network interface is accelerated networking-enabled. */ enableAcceleratedNetworking?: boolean; /** * The network security group. */ networkSecurityGroup?: SubResource; /** * The dns settings to be applied on the network interfaces. */ dnsSettings?: VirtualMachineScaleSetNetworkConfigurationDnsSettings; /** * Specifies the IP configurations of the network interface. */ ipConfigurations: VirtualMachineScaleSetIPConfiguration[]; /** * Whether IP forwarding enabled on this NIC. */ enableIPForwarding?: boolean; } /** * Describes a virtual machine scale set network profile's network configurations. */ export interface VirtualMachineScaleSetUpdateNetworkConfiguration extends SubResource { /** * The network configuration name. */ name?: string; /** * Whether this is a primary NIC on a virtual machine. */ primary?: boolean; /** * Specifies whether the network interface is accelerated networking-enabled. */ enableAcceleratedNetworking?: boolean; /** * The network security group. */ networkSecurityGroup?: SubResource; /** * The dns settings to be applied on the network interfaces. */ dnsSettings?: VirtualMachineScaleSetNetworkConfigurationDnsSettings; /** * The virtual machine scale set IP Configuration. */ ipConfigurations?: VirtualMachineScaleSetUpdateIPConfiguration[]; /** * Whether IP forwarding enabled on this NIC. */ enableIPForwarding?: boolean; } /** * Describes a virtual machine scale set network profile. */ export interface VirtualMachineScaleSetNetworkProfile { /** * A reference to a load balancer probe used to determine the health of an instance in the * virtual machine scale set. The reference will be in the form: * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'. */ healthProbe?: ApiEntityReference; /** * The list of network configurations. */ networkInterfaceConfigurations?: VirtualMachineScaleSetNetworkConfiguration[]; } /** * Describes a virtual machine scale set network profile. */ export interface VirtualMachineScaleSetUpdateNetworkProfile { /** * The list of network configurations. */ networkInterfaceConfigurations?: VirtualMachineScaleSetUpdateNetworkConfiguration[]; } /** * An interface representing SubResourceReadOnly. */ export interface SubResourceReadOnly extends BaseResource { /** * Resource Id * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; } /** * Describes a Virtual Machine Scale Set Extension. */ export interface VirtualMachineScaleSetExtension extends SubResourceReadOnly { /** * The name of the extension. */ name?: string; /** * If a value is provided and is different from the previous value, the extension handler will be * forced to update even if the extension configuration has not changed. */ forceUpdateTag?: string; /** * The name of the extension handler publisher. */ publisher?: string; /** * Specifies the type of the extension; an example is "CustomScriptExtension". */ type?: string; /** * Specifies the version of the script handler. */ typeHandlerVersion?: string; /** * Indicates whether the extension should use a newer minor version if one is available at * deployment time. Once deployed, however, the extension will not upgrade minor versions unless * redeployed, even with this property set to true. */ autoUpgradeMinorVersion?: boolean; /** * Json formatted public settings for the extension. */ settings?: any; /** * The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no * protected settings at all. */ protectedSettings?: any; /** * The provisioning state, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; } /** * Describes a virtual machine scale set extension profile. */ export interface VirtualMachineScaleSetExtensionProfile { /** * The virtual machine scale set child extension resources. */ extensions?: VirtualMachineScaleSetExtension[]; } /** * Describes a virtual machine scale set virtual machine profile. */ export interface VirtualMachineScaleSetVMProfile { /** * Specifies the operating system settings for the virtual machines in the scale set. */ osProfile?: VirtualMachineScaleSetOSProfile; /** * Specifies the storage settings for the virtual machine disks. */ storageProfile?: VirtualMachineScaleSetStorageProfile; /** * Specifies properties of the network interfaces of the virtual machines in the scale set. */ networkProfile?: VirtualMachineScaleSetNetworkProfile; /** * Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15. */ diagnosticsProfile?: DiagnosticsProfile; /** * Specifies a collection of settings for extensions installed on virtual machines in the scale * set. */ extensionProfile?: VirtualMachineScaleSetExtensionProfile; /** * Specifies that the image or disk that is being used was licensed on-premises. This element is * only used for images that contain the Windows Server operating system.

    Possible * values are:

    Windows_Client

    Windows_Server

    If this element is * included in a request for an update, the value must match the initial value. This value cannot * be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    Minimum api-version: 2015-06-15 */ licenseType?: string; /** * Specifies the priority for the virtual machines in the scale set.

    Minimum api-version: * 2017-10-30-preview. Possible values include: 'Regular', 'Low' */ priority?: VirtualMachinePriorityTypes; /** * Specifies the eviction policy for virtual machines in a low priority scale set. *

    Minimum api-version: 2017-10-30-preview. Possible values include: 'Deallocate', * 'Delete' */ evictionPolicy?: VirtualMachineEvictionPolicyTypes; } /** * Describes a virtual machine scale set virtual machine profile. */ export interface VirtualMachineScaleSetUpdateVMProfile { /** * The virtual machine scale set OS profile. */ osProfile?: VirtualMachineScaleSetUpdateOSProfile; /** * The virtual machine scale set storage profile. */ storageProfile?: VirtualMachineScaleSetUpdateStorageProfile; /** * The virtual machine scale set network profile. */ networkProfile?: VirtualMachineScaleSetUpdateNetworkProfile; /** * The virtual machine scale set diagnostics profile. */ diagnosticsProfile?: DiagnosticsProfile; /** * The virtual machine scale set extension profile. */ extensionProfile?: VirtualMachineScaleSetExtensionProfile; /** * The license type, which is for bring your own license scenario. */ licenseType?: string; } /** * Describes a Virtual Machine Scale Set. */ export interface VirtualMachineScaleSet extends Resource { /** * The virtual machine scale set sku. */ sku?: Sku; /** * Specifies information about the marketplace image used to create the virtual machine. This * element is only used for marketplace images. Before you can use a marketplace image from an * API, you must enable the image for programmatic use. In the Azure portal, find the * marketplace image that you want to use and then click **Want to deploy programmatically, Get * Started ->**. Enter any required information and then click **Save**. */ plan?: Plan; /** * The upgrade policy. */ upgradePolicy?: UpgradePolicy; /** * The virtual machine profile. */ virtualMachineProfile?: VirtualMachineScaleSetVMProfile; /** * The provisioning state, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; /** * Specifies whether the Virtual Machine Scale Set should be overprovisioned. */ overprovision?: boolean; /** * Specifies the ID which uniquely identifies a Virtual Machine Scale Set. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly uniqueId?: string; /** * When true this limits the scale set to a single placement group, of max size 100 virtual * machines. */ singlePlacementGroup?: boolean; /** * Whether to force strictly even Virtual Machine distribution cross x-zones in case there is * zone outage. */ zoneBalance?: boolean; /** * Fault Domain count for each placement group. */ platformFaultDomainCount?: number; /** * The identity of the virtual machine scale set, if configured. */ identity?: VirtualMachineScaleSetIdentity; /** * The virtual machine scale set zones. */ zones?: string[]; } /** * Describes a Virtual Machine Scale Set. */ export interface VirtualMachineScaleSetUpdate extends UpdateResource { /** * The virtual machine scale set sku. */ sku?: Sku; /** * The purchase plan when deploying a virtual machine scale set from VM Marketplace images. */ plan?: Plan; /** * The upgrade policy. */ upgradePolicy?: UpgradePolicy; /** * The virtual machine profile. */ virtualMachineProfile?: VirtualMachineScaleSetUpdateVMProfile; /** * Specifies whether the Virtual Machine Scale Set should be overprovisioned. */ overprovision?: boolean; /** * When true this limits the scale set to a single placement group, of max size 100 virtual * machines. */ singlePlacementGroup?: boolean; /** * The identity of the virtual machine scale set, if configured. */ identity?: VirtualMachineScaleSetIdentity; } /** * Specifies a list of virtual machine instance IDs from the VM scale set. */ export interface VirtualMachineScaleSetVMInstanceIDs { /** * The virtual machine scale set instance ids. Omitting the virtual machine scale set instance * ids will result in the operation being performed on all virtual machines in the virtual * machine scale set. */ instanceIds?: string[]; } /** * Specifies a list of virtual machine instance IDs from the VM scale set. */ export interface VirtualMachineScaleSetVMInstanceRequiredIDs { /** * The virtual machine scale set instance ids. */ instanceIds: string[]; } /** * The status code and count of the virtual machine scale set instance view status summary. */ export interface VirtualMachineStatusCodeCount { /** * The instance view status code. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly code?: string; /** * The number of instances having a particular status code. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly count?: number; } /** * Instance view statuses summary for virtual machines of a virtual machine scale set. */ export interface VirtualMachineScaleSetInstanceViewStatusesSummary { /** * The extensions information. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly statusesSummary?: VirtualMachineStatusCodeCount[]; } /** * Extensions summary for virtual machines of a virtual machine scale set. */ export interface VirtualMachineScaleSetVMExtensionsSummary { /** * The extension name. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * The extensions information. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly statusesSummary?: VirtualMachineStatusCodeCount[]; } /** * The instance view of a virtual machine scale set. */ export interface VirtualMachineScaleSetInstanceView { /** * The instance view status summary for the virtual machine scale set. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly virtualMachine?: VirtualMachineScaleSetInstanceViewStatusesSummary; /** * The extensions information. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly extensions?: VirtualMachineScaleSetVMExtensionsSummary[]; /** * The resource status information. */ statuses?: InstanceViewStatus[]; } /** * Describes scaling information of a sku. */ export interface VirtualMachineScaleSetSkuCapacity { /** * The minimum capacity. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly minimum?: number; /** * The maximum capacity that can be set. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly maximum?: number; /** * The default capacity. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly defaultCapacity?: number; /** * The scale type applicable to the sku. Possible values include: 'Automatic', 'None' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly scaleType?: VirtualMachineScaleSetSkuScaleType; } /** * Describes an available virtual machine scale set sku. */ export interface VirtualMachineScaleSetSku { /** * The type of resource the sku applies to. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly resourceType?: string; /** * The Sku. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly sku?: Sku; /** * Specifies the number of virtual machines in the scale set. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly capacity?: VirtualMachineScaleSetSkuCapacity; } /** * Api error base. */ export interface ApiErrorBase { /** * The error code. */ code?: string; /** * The target of the particular error. */ target?: string; /** * The error message. */ message?: string; } /** * Inner error details. */ export interface InnerError { /** * The exception type. */ exceptiontype?: string; /** * The internal error message or exception dump. */ errordetail?: string; } /** * Api error. */ export interface ApiError { /** * The Api error details */ details?: ApiErrorBase[]; /** * The Api inner error */ innererror?: InnerError; /** * The error code. */ code?: string; /** * The target of the particular error. */ target?: string; /** * The error message. */ message?: string; } /** * Information about rollback on failed VM instances after a OS Upgrade operation. */ export interface RollbackStatusInfo { /** * The number of instances which have been successfully rolled back. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly successfullyRolledbackInstanceCount?: number; /** * The number of instances which failed to rollback. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly failedRolledbackInstanceCount?: number; /** * Error details if OS rollback failed. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly rollbackError?: ApiError; } /** * Information about the current running state of the overall upgrade. */ export interface UpgradeOperationHistoryStatus { /** * Code indicating the current status of the upgrade. Possible values include: 'RollingForward', * 'Cancelled', 'Completed', 'Faulted' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly code?: UpgradeState; /** * Start time of the upgrade. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly startTime?: Date; /** * End time of the upgrade. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly endTime?: Date; } /** * Information about the number of virtual machine instances in each upgrade state. */ export interface RollingUpgradeProgressInfo { /** * The number of instances that have been successfully upgraded. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly successfulInstanceCount?: number; /** * The number of instances that have failed to be upgraded successfully. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly failedInstanceCount?: number; /** * The number of instances that are currently being upgraded. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly inProgressInstanceCount?: number; /** * The number of instances that have not yet begun to be upgraded. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly pendingInstanceCount?: number; } /** * Describes each OS upgrade on the Virtual Machine Scale Set. */ export interface UpgradeOperationHistoricalStatusInfoProperties { /** * Information about the overall status of the upgrade operation. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly runningStatus?: UpgradeOperationHistoryStatus; /** * Counts of the VMs in each state. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly progress?: RollingUpgradeProgressInfo; /** * Error Details for this upgrade if there are any. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly error?: ApiError; /** * Invoker of the Upgrade Operation. Possible values include: 'Unknown', 'User', 'Platform' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly startedBy?: UpgradeOperationInvoker; /** * Image Reference details * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly targetImageReference?: ImageReference; /** * Information about OS rollback if performed * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly rollbackInfo?: RollbackStatusInfo; } /** * Virtual Machine Scale Set OS Upgrade History operation response. */ export interface UpgradeOperationHistoricalStatusInfo { /** * Information about the properties of the upgrade operation. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly properties?: UpgradeOperationHistoricalStatusInfoProperties; /** * Resource type * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; /** * Resource location * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly location?: string; } /** * The health status of the VM. */ export interface VirtualMachineHealthStatus { /** * The health status information for the VM. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly status?: InstanceViewStatus; } /** * The instance view of a virtual machine scale set VM. */ export interface VirtualMachineScaleSetVMInstanceView { /** * The Update Domain count. */ platformUpdateDomain?: number; /** * The Fault Domain count. */ platformFaultDomain?: number; /** * The Remote desktop certificate thumbprint. */ rdpThumbPrint?: string; /** * The VM Agent running on the virtual machine. */ vmAgent?: VirtualMachineAgentInstanceView; /** * The Maintenance Operation status on the virtual machine. */ maintenanceRedeployStatus?: MaintenanceRedeployStatus; /** * The disks information. */ disks?: DiskInstanceView[]; /** * The extensions information. */ extensions?: VirtualMachineExtensionInstanceView[]; /** * The health status for the VM. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly vmHealth?: VirtualMachineHealthStatus; /** * Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot * to diagnose VM status.

    You can easily view the output of your console log.

    * Azure also enables you to see a screenshot of the VM from the hypervisor. */ bootDiagnostics?: BootDiagnosticsInstanceView; /** * The resource status information. */ statuses?: InstanceViewStatus[]; /** * The placement group in which the VM is running. If the VM is deallocated it will not have a * placementGroupId. */ placementGroupId?: string; } /** * Describes a virtual machine scale set virtual machine. */ export interface VirtualMachineScaleSetVM extends Resource { /** * The virtual machine instance ID. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly instanceId?: string; /** * The virtual machine SKU. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly sku?: Sku; /** * Specifies whether the latest model has been applied to the virtual machine. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly latestModelApplied?: boolean; /** * Azure VM unique ID. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly vmId?: string; /** * The virtual machine instance view. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly instanceView?: VirtualMachineScaleSetVMInstanceView; /** * Specifies the hardware settings for the virtual machine. */ hardwareProfile?: HardwareProfile; /** * Specifies the storage settings for the virtual machine disks. */ storageProfile?: StorageProfile; /** * Specifies the operating system settings for the virtual machine. */ osProfile?: OSProfile; /** * Specifies the network interfaces of the virtual machine. */ networkProfile?: NetworkProfile; /** * Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15. */ diagnosticsProfile?: DiagnosticsProfile; /** * Specifies information about the availability set that the virtual machine should be assigned * to. Virtual machines specified in the same availability set are allocated to different nodes * to maximize availability. For more information about availability sets, see [Manage the * availability of virtual * machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json). *

    For more information on Azure planned maintenance, see [Planned maintenance for * virtual machines in * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    Currently, a VM can only be added to availability set at creation time. An existing * VM cannot be added to an availability set. */ availabilitySet?: SubResource; /** * The provisioning state, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; /** * Specifies that the image or disk that is being used was licensed on-premises. This element is * only used for images that contain the Windows Server operating system.

    Possible * values are:

    Windows_Client

    Windows_Server

    If this element is * included in a request for an update, the value must match the initial value. This value cannot * be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows * Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) *

    Minimum api-version: 2015-06-15 */ licenseType?: string; /** * Specifies information about the marketplace image used to create the virtual machine. This * element is only used for marketplace images. Before you can use a marketplace image from an * API, you must enable the image for programmatic use. In the Azure portal, find the * marketplace image that you want to use and then click **Want to deploy programmatically, Get * Started ->**. Enter any required information and then click **Save**. */ plan?: Plan; /** * The virtual machine child extension resources. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly resources?: VirtualMachineExtension[]; } /** * Information about the current running state of the overall upgrade. */ export interface RollingUpgradeRunningStatus { /** * Code indicating the current status of the upgrade. Possible values include: 'RollingForward', * 'Cancelled', 'Completed', 'Faulted' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly code?: RollingUpgradeStatusCode; /** * Start time of the upgrade. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly startTime?: Date; /** * The last action performed on the rolling upgrade. Possible values include: 'Start', 'Cancel' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastAction?: RollingUpgradeActionType; /** * Last action time of the upgrade. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastActionTime?: Date; } /** * The status of the latest virtual machine scale set rolling upgrade. */ export interface RollingUpgradeStatusInfo extends Resource { /** * The rolling upgrade policies applied for this upgrade. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly policy?: RollingUpgradePolicy; /** * Information about the current running state of the overall upgrade. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly runningStatus?: RollingUpgradeRunningStatus; /** * Information about the number of virtual machine instances in each upgrade state. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly progress?: RollingUpgradeProgressInfo; /** * Error details for this upgrade, if there are any. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly error?: ApiError; } /** * Compute-specific operation properties, including output */ export interface ComputeLongRunningOperationProperties { /** * Operation output data (raw JSON) */ output?: any; } /** * Response after calling a manual recovery walk */ export interface RecoveryWalkResponse { /** * Whether the recovery walk was performed * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly walkPerformed?: boolean; /** * The next update domain that needs to be walked. Null means walk spanning all update domains * has been completed * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly nextPlatformUpdateDomain?: number; } /** * Operation status response */ export interface OperationStatusResponse { /** * Operation ID * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Operation status * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly status?: string; /** * Start time of the operation * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly startTime?: Date; /** * End time of the operation * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly endTime?: Date; /** * Api error * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly error?: ApiError; } /** * Api input base class for LogAnalytics Api. */ export interface LogAnalyticsInputBase { /** * SAS Uri of the logging blob container to which LogAnalytics Api writes output logs to. */ blobContainerSasUri: string; /** * From time of the query */ fromTime: Date; /** * To time of the query */ toTime: Date; /** * Group query result by Throttle Policy applied. */ groupByThrottlePolicy?: boolean; /** * Group query result by Operation Name. */ groupByOperationName?: boolean; /** * Group query result by Resource Name. */ groupByResourceName?: boolean; } /** * Api request input for LogAnalytics getRequestRateByInterval Api. */ export interface RequestRateByIntervalInput extends LogAnalyticsInputBase { /** * Interval value in minutes used to create LogAnalytics call rate logs. Possible values include: * 'ThreeMins', 'FiveMins', 'ThirtyMins', 'SixtyMins' */ intervalLength: IntervalInMins; } /** * Api request input for LogAnalytics getThrottledRequests Api. */ export interface ThrottledRequestsInput extends LogAnalyticsInputBase { } /** * LogAnalytics output properties */ export interface LogAnalyticsOutput { /** * Output file Uri path to blob container. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly output?: string; } /** * LogAnalytics operation status response */ export interface LogAnalyticsOperationResult extends OperationStatusResponse { /** * LogAnalyticsOutput * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly properties?: LogAnalyticsOutput; } /** * The disks and snapshots sku name. Can be Standard_LRS or Premium_LRS. */ export interface DiskSku { /** * The sku name. Possible values include: 'Standard_LRS', 'Premium_LRS' */ name?: StorageAccountTypes; /** * The sku tier. * **NOTE: This property will not be serialized. It can only be populated by the server.**. * Default value: 'Standard'. */ readonly tier?: string; } /** * The Resource model definition. */ export interface ResourceUpdate { /** * Resource tags */ tags?: { [propertyName: string]: string }; sku?: DiskSku; } /** * The source image used for creating the disk. */ export interface ImageDiskReference { /** * A relative uri containing either a Platform Image Repository or user image reference. */ id: string; /** * If the disk is created from an image's data disk, this is an index that indicates which of the * data disks in the image to use. For OS disks, this field is null. */ lun?: number; } /** * Data used when creating a disk. */ export interface CreationData { /** * This enumerates the possible sources of a disk's creation. Possible values include: 'Empty', * 'Attach', 'FromImage', 'Import', 'Copy' */ createOption: DiskCreateOption; /** * If createOption is Import, the Azure Resource Manager identifier of the storage account * containing the blob to import as a disk. Required only if the blob is in a different * subscription */ storageAccountId?: string; /** * Disk source information. */ imageReference?: ImageDiskReference; /** * If createOption is Import, this is the URI of a blob to be imported into a managed disk. */ sourceUri?: string; /** * If createOption is Copy, this is the ARM id of the source snapshot or disk. */ sourceResourceId?: string; } /** * The vault id is an Azure Resource Manager Resource id in the form * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName} */ export interface SourceVault { /** * Resource Id */ id?: string; } /** * Key Vault Secret Url and vault id of the encryption key */ export interface KeyVaultAndSecretReference { /** * Resource id of the KeyVault containing the key or secret */ sourceVault: SourceVault; /** * Url pointing to a key or secret in KeyVault */ secretUrl: string; } /** * Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the * encryptionKey */ export interface KeyVaultAndKeyReference { /** * Resource id of the KeyVault containing the key or secret */ sourceVault: SourceVault; /** * Url pointing to a key or secret in KeyVault */ keyUrl: string; } /** * Encryption settings for disk or snapshot */ export interface EncryptionSettings { /** * Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable * encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to * disable encryption. If EncryptionSettings is null in the request object, the existing settings * remain unchanged. */ enabled?: boolean; /** * Key Vault Secret Url and vault id of the disk encryption key */ diskEncryptionKey?: KeyVaultAndSecretReference; /** * Key Vault Key Url and vault id of the key encryption key */ keyEncryptionKey?: KeyVaultAndKeyReference; } /** * Disk resource. */ export interface Disk extends Resource { /** * A relative URI containing the ID of the VM that has the disk attached. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly managedBy?: string; sku?: DiskSku; /** * The Logical zone list for Disk. */ zones?: string[]; /** * The time when the disk was created. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly timeCreated?: Date; /** * The Operating System type. Possible values include: 'Windows', 'Linux' */ osType?: OperatingSystemTypes; /** * Disk source information. CreationData information cannot be changed after the disk has been * created. */ creationData: CreationData; /** * If creationData.createOption is Empty, this field is mandatory and it indicates the size of * the VHD to create. If this field is present for updates or creation with other options, it * indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and * can only increase the disk's size. */ diskSizeGB?: number; /** * Encryption settings for disk or snapshot */ encryptionSettings?: EncryptionSettings; /** * The disk provisioning state. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; } /** * Disk update resource. */ export interface DiskUpdate extends ResourceUpdate { /** * the Operating System type. Possible values include: 'Windows', 'Linux' */ osType?: OperatingSystemTypes; /** * If creationData.createOption is Empty, this field is mandatory and it indicates the size of * the VHD to create. If this field is present for updates or creation with other options, it * indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and * can only increase the disk's size. */ diskSizeGB?: number; /** * Encryption settings for disk or snapshot */ encryptionSettings?: EncryptionSettings; } /** * Data used for requesting a SAS. */ export interface GrantAccessData { /** * Possible values include: 'None', 'Read' */ access: AccessLevel; /** * Time duration in seconds until the SAS access expires. */ durationInSeconds: number; } /** * A disk access SAS uri. */ export interface AccessUri { /** * A SAS uri for accessing a disk. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly accessSAS?: string; } /** * Snapshot resource. */ export interface Snapshot extends Resource { /** * Unused. Always Null. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly managedBy?: string; sku?: DiskSku; /** * The time when the disk was created. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly timeCreated?: Date; /** * The Operating System type. Possible values include: 'Windows', 'Linux' */ osType?: OperatingSystemTypes; /** * Disk source information. CreationData information cannot be changed after the disk has been * created. */ creationData: CreationData; /** * If creationData.createOption is Empty, this field is mandatory and it indicates the size of * the VHD to create. If this field is present for updates or creation with other options, it * indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and * can only increase the disk's size. */ diskSizeGB?: number; /** * Encryption settings for disk or snapshot */ encryptionSettings?: EncryptionSettings; /** * The disk provisioning state. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; } /** * Snapshot update resource. */ export interface SnapshotUpdate extends ResourceUpdate { /** * the Operating System type. Possible values include: 'Windows', 'Linux' */ osType?: OperatingSystemTypes; /** * If creationData.createOption is Empty, this field is mandatory and it indicates the size of * the VHD to create. If this field is present for updates or creation with other options, it * indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and * can only increase the disk's size. */ diskSizeGB?: number; /** * Encryption settings for disk or snapshot */ encryptionSettings?: EncryptionSettings; } /** * Optional Parameters. */ export interface VirtualMachineExtensionImagesListVersionsOptionalParams extends msRest.RequestOptionsBase { /** * The filter to apply on the operation. */ filter?: string; top?: number; orderby?: string; } /** * Optional Parameters. */ export interface VirtualMachineExtensionsGetOptionalParams extends msRest.RequestOptionsBase { /** * The expand expression to apply on the operation. */ expand?: string; } /** * Optional Parameters. */ export interface VirtualMachinesGetExtensionsOptionalParams extends msRest.RequestOptionsBase { /** * The expand expression to apply on the operation. */ expand?: string; } /** * Optional Parameters. */ export interface VirtualMachinesGetOptionalParams extends msRest.RequestOptionsBase { /** * The expand expression to apply on the operation. Possible values include: 'instanceView' */ expand?: InstanceViewTypes; } /** * Optional Parameters. */ export interface VirtualMachineImagesListOptionalParams extends msRest.RequestOptionsBase { /** * The filter to apply on the operation. */ filter?: string; top?: number; orderby?: string; } /** * Optional Parameters. */ export interface ImagesGetOptionalParams extends msRest.RequestOptionsBase { /** * The expand expression to apply on the operation. */ expand?: string; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsDeallocateOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsPowerOffOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsRestartOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsStartOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsRedeployOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsPerformMaintenanceOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsReimageOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsReimageAllOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginDeallocateOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginPowerOffOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginRestartOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginStartOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginRedeployOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginPerformMaintenanceOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginReimageOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetsBeginReimageAllOptionalParams extends msRest.RequestOptionsBase { /** * A list of virtual machine instance IDs from the VM scale set. */ vmInstanceIDs?: VirtualMachineScaleSetVMInstanceIDs; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetExtensionsGetOptionalParams extends msRest.RequestOptionsBase { /** * The expand expression to apply on the operation. */ expand?: string; } /** * Optional Parameters. */ export interface VirtualMachineScaleSetVMsListOptionalParams extends msRest.RequestOptionsBase { /** * The filter to apply to the operation. */ filter?: string; /** * The list parameters. */ select?: string; /** * The expand expression to apply to the operation. */ expand?: string; } /** * An interface representing ComputeManagementClientOptions. */ export interface ComputeManagementClientOptions extends AzureServiceClientOptions { baseUri?: string; } /** * @interface * The List Compute Operation operation response. * @extends Array */ export interface ComputeOperationListResult extends Array { } /** * @interface * The List Availability Set operation response. * @extends Array */ export interface AvailabilitySetListResult extends Array { /** * The URI to fetch the next page of AvailabilitySets. Call ListNext() with this URI to fetch the * next page of AvailabilitySets. */ nextLink?: string; } /** * @interface * The List Virtual Machine operation response. * @extends Array */ export interface VirtualMachineSizeListResult extends Array { } /** * @interface * The List Virtual Machine operation response. * @extends Array */ export interface VirtualMachineListResult extends Array { /** * The URI to fetch the next page of VMs. Call ListNext() with this URI to fetch the next page of * Virtual Machines. */ nextLink?: string; } /** * @interface * The List Usages operation response. * @extends Array */ export interface ListUsagesResult extends Array { /** * The URI to fetch the next page of compute resource usage information. Call ListNext() with * this to fetch the next page of compute resource usage information. */ nextLink?: string; } /** * @interface * The List Image operation response. * @extends Array */ export interface ImageListResult extends Array { /** * The uri to fetch the next page of Images. Call ListNext() with this to fetch the next page of * Images. */ nextLink?: string; } /** * @interface * The List Virtual Machine operation response. * @extends Array */ export interface VirtualMachineScaleSetListResult extends Array { /** * The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to * fetch the next page of VMSS. */ nextLink?: string; } /** * @interface * The List Virtual Machine operation response. * @extends Array */ export interface VirtualMachineScaleSetListWithLinkResult extends Array { /** * The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to * fetch the next page of Virtual Machine Scale Sets. */ nextLink?: string; } /** * @interface * The Virtual Machine Scale Set List Skus operation response. * @extends Array */ export interface VirtualMachineScaleSetListSkusResult extends Array { /** * The uri to fetch the next page of Virtual Machine Scale Set Skus. Call ListNext() with this to * fetch the next page of VMSS Skus. */ nextLink?: string; } /** * @interface * List of Virtual Machine Scale Set OS Upgrade History operation response. * @extends Array */ export interface VirtualMachineScaleSetListOSUpgradeHistory extends Array { /** * The uri to fetch the next page of OS Upgrade History. Call ListNext() with this to fetch the * next page of history of upgrades. */ nextLink?: string; } /** * @interface * The List VM scale set extension operation response. * @extends Array */ export interface VirtualMachineScaleSetExtensionListResult extends Array { /** * The uri to fetch the next page of VM scale set extensions. Call ListNext() with this to fetch * the next page of VM scale set extensions. */ nextLink?: string; } /** * @interface * The List Virtual Machine Scale Set VMs operation response. * @extends Array */ export interface VirtualMachineScaleSetVMListResult extends Array { /** * The uri to fetch the next page of Virtual Machine Scale Set VMs. Call ListNext() with this to * fetch the next page of VMSS VMs */ nextLink?: string; } /** * @interface * The List Disks operation response. * @extends Array */ export interface DiskList extends Array { /** * The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of * disks. */ nextLink?: string; } /** * @interface * The List Snapshots operation response. * @extends Array */ export interface SnapshotList extends Array { /** * The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page * of snapshots. */ nextLink?: string; } /** * Defines values for StatusLevelTypes. * Possible values include: 'Info', 'Warning', 'Error' * @readonly * @enum {string} */ export type StatusLevelTypes = 'Info' | 'Warning' | 'Error'; /** * Defines values for OperatingSystemTypes. * Possible values include: 'Windows', 'Linux' * @readonly * @enum {string} */ export type OperatingSystemTypes = 'Windows' | 'Linux'; /** * Defines values for VirtualMachineSizeTypes. * Possible values include: 'Basic_A0', 'Basic_A1', 'Basic_A2', 'Basic_A3', 'Basic_A4', * 'Standard_A0', 'Standard_A1', 'Standard_A2', 'Standard_A3', 'Standard_A4', 'Standard_A5', * 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A9', 'Standard_A10', 'Standard_A11', * 'Standard_A1_v2', 'Standard_A2_v2', 'Standard_A4_v2', 'Standard_A8_v2', 'Standard_A2m_v2', * 'Standard_A4m_v2', 'Standard_A8m_v2', 'Standard_B1s', 'Standard_B1ms', 'Standard_B2s', * 'Standard_B2ms', 'Standard_B4ms', 'Standard_B8ms', 'Standard_D1', 'Standard_D2', 'Standard_D3', * 'Standard_D4', 'Standard_D11', 'Standard_D12', 'Standard_D13', 'Standard_D14', 'Standard_D1_v2', * 'Standard_D2_v2', 'Standard_D3_v2', 'Standard_D4_v2', 'Standard_D5_v2', 'Standard_D2_v3', * 'Standard_D4_v3', 'Standard_D8_v3', 'Standard_D16_v3', 'Standard_D32_v3', 'Standard_D64_v3', * 'Standard_D2s_v3', 'Standard_D4s_v3', 'Standard_D8s_v3', 'Standard_D16s_v3', 'Standard_D32s_v3', * 'Standard_D64s_v3', 'Standard_D11_v2', 'Standard_D12_v2', 'Standard_D13_v2', 'Standard_D14_v2', * 'Standard_D15_v2', 'Standard_DS1', 'Standard_DS2', 'Standard_DS3', 'Standard_DS4', * 'Standard_DS11', 'Standard_DS12', 'Standard_DS13', 'Standard_DS14', 'Standard_DS1_v2', * 'Standard_DS2_v2', 'Standard_DS3_v2', 'Standard_DS4_v2', 'Standard_DS5_v2', 'Standard_DS11_v2', * 'Standard_DS12_v2', 'Standard_DS13_v2', 'Standard_DS14_v2', 'Standard_DS15_v2', * 'Standard_DS13-4_v2', 'Standard_DS13-2_v2', 'Standard_DS14-8_v2', 'Standard_DS14-4_v2', * 'Standard_E2_v3', 'Standard_E4_v3', 'Standard_E8_v3', 'Standard_E16_v3', 'Standard_E32_v3', * 'Standard_E64_v3', 'Standard_E2s_v3', 'Standard_E4s_v3', 'Standard_E8s_v3', 'Standard_E16s_v3', * 'Standard_E32s_v3', 'Standard_E64s_v3', 'Standard_E32-16_v3', 'Standard_E32-8s_v3', * 'Standard_E64-32s_v3', 'Standard_E64-16s_v3', 'Standard_F1', 'Standard_F2', 'Standard_F4', * 'Standard_F8', 'Standard_F16', 'Standard_F1s', 'Standard_F2s', 'Standard_F4s', 'Standard_F8s', * 'Standard_F16s', 'Standard_F2s_v2', 'Standard_F4s_v2', 'Standard_F8s_v2', 'Standard_F16s_v2', * 'Standard_F32s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_G1', 'Standard_G2', * 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', * 'Standard_GS4', 'Standard_GS5', 'Standard_GS4-8', 'Standard_GS4-4', 'Standard_GS5-16', * 'Standard_GS5-8', 'Standard_H8', 'Standard_H16', 'Standard_H8m', 'Standard_H16m', * 'Standard_H16r', 'Standard_H16mr', 'Standard_L4s', 'Standard_L8s', 'Standard_L16s', * 'Standard_L32s', 'Standard_M64s', 'Standard_M64ms', 'Standard_M128s', 'Standard_M128ms', * 'Standard_M64-32ms', 'Standard_M64-16ms', 'Standard_M128-64ms', 'Standard_M128-32ms', * 'Standard_NC6', 'Standard_NC12', 'Standard_NC24', 'Standard_NC24r', 'Standard_NC6s_v2', * 'Standard_NC12s_v2', 'Standard_NC24s_v2', 'Standard_NC24rs_v2', 'Standard_NC6s_v3', * 'Standard_NC12s_v3', 'Standard_NC24s_v3', 'Standard_NC24rs_v3', 'Standard_ND6s', * 'Standard_ND12s', 'Standard_ND24s', 'Standard_ND24rs', 'Standard_NV6', 'Standard_NV12', * 'Standard_NV24' * @readonly * @enum {string} */ export type VirtualMachineSizeTypes = 'Basic_A0' | 'Basic_A1' | 'Basic_A2' | 'Basic_A3' | 'Basic_A4' | 'Standard_A0' | 'Standard_A1' | 'Standard_A2' | 'Standard_A3' | 'Standard_A4' | 'Standard_A5' | 'Standard_A6' | 'Standard_A7' | 'Standard_A8' | 'Standard_A9' | 'Standard_A10' | 'Standard_A11' | 'Standard_A1_v2' | 'Standard_A2_v2' | 'Standard_A4_v2' | 'Standard_A8_v2' | 'Standard_A2m_v2' | 'Standard_A4m_v2' | 'Standard_A8m_v2' | 'Standard_B1s' | 'Standard_B1ms' | 'Standard_B2s' | 'Standard_B2ms' | 'Standard_B4ms' | 'Standard_B8ms' | 'Standard_D1' | 'Standard_D2' | 'Standard_D3' | 'Standard_D4' | 'Standard_D11' | 'Standard_D12' | 'Standard_D13' | 'Standard_D14' | 'Standard_D1_v2' | 'Standard_D2_v2' | 'Standard_D3_v2' | 'Standard_D4_v2' | 'Standard_D5_v2' | 'Standard_D2_v3' | 'Standard_D4_v3' | 'Standard_D8_v3' | 'Standard_D16_v3' | 'Standard_D32_v3' | 'Standard_D64_v3' | 'Standard_D2s_v3' | 'Standard_D4s_v3' | 'Standard_D8s_v3' | 'Standard_D16s_v3' | 'Standard_D32s_v3' | 'Standard_D64s_v3' | 'Standard_D11_v2' | 'Standard_D12_v2' | 'Standard_D13_v2' | 'Standard_D14_v2' | 'Standard_D15_v2' | 'Standard_DS1' | 'Standard_DS2' | 'Standard_DS3' | 'Standard_DS4' | 'Standard_DS11' | 'Standard_DS12' | 'Standard_DS13' | 'Standard_DS14' | 'Standard_DS1_v2' | 'Standard_DS2_v2' | 'Standard_DS3_v2' | 'Standard_DS4_v2' | 'Standard_DS5_v2' | 'Standard_DS11_v2' | 'Standard_DS12_v2' | 'Standard_DS13_v2' | 'Standard_DS14_v2' | 'Standard_DS15_v2' | 'Standard_DS13-4_v2' | 'Standard_DS13-2_v2' | 'Standard_DS14-8_v2' | 'Standard_DS14-4_v2' | 'Standard_E2_v3' | 'Standard_E4_v3' | 'Standard_E8_v3' | 'Standard_E16_v3' | 'Standard_E32_v3' | 'Standard_E64_v3' | 'Standard_E2s_v3' | 'Standard_E4s_v3' | 'Standard_E8s_v3' | 'Standard_E16s_v3' | 'Standard_E32s_v3' | 'Standard_E64s_v3' | 'Standard_E32-16_v3' | 'Standard_E32-8s_v3' | 'Standard_E64-32s_v3' | 'Standard_E64-16s_v3' | 'Standard_F1' | 'Standard_F2' | 'Standard_F4' | 'Standard_F8' | 'Standard_F16' | 'Standard_F1s' | 'Standard_F2s' | 'Standard_F4s' | 'Standard_F8s' | 'Standard_F16s' | 'Standard_F2s_v2' | 'Standard_F4s_v2' | 'Standard_F8s_v2' | 'Standard_F16s_v2' | 'Standard_F32s_v2' | 'Standard_F64s_v2' | 'Standard_F72s_v2' | 'Standard_G1' | 'Standard_G2' | 'Standard_G3' | 'Standard_G4' | 'Standard_G5' | 'Standard_GS1' | 'Standard_GS2' | 'Standard_GS3' | 'Standard_GS4' | 'Standard_GS5' | 'Standard_GS4-8' | 'Standard_GS4-4' | 'Standard_GS5-16' | 'Standard_GS5-8' | 'Standard_H8' | 'Standard_H16' | 'Standard_H8m' | 'Standard_H16m' | 'Standard_H16r' | 'Standard_H16mr' | 'Standard_L4s' | 'Standard_L8s' | 'Standard_L16s' | 'Standard_L32s' | 'Standard_M64s' | 'Standard_M64ms' | 'Standard_M128s' | 'Standard_M128ms' | 'Standard_M64-32ms' | 'Standard_M64-16ms' | 'Standard_M128-64ms' | 'Standard_M128-32ms' | 'Standard_NC6' | 'Standard_NC12' | 'Standard_NC24' | 'Standard_NC24r' | 'Standard_NC6s_v2' | 'Standard_NC12s_v2' | 'Standard_NC24s_v2' | 'Standard_NC24rs_v2' | 'Standard_NC6s_v3' | 'Standard_NC12s_v3' | 'Standard_NC24s_v3' | 'Standard_NC24rs_v3' | 'Standard_ND6s' | 'Standard_ND12s' | 'Standard_ND24s' | 'Standard_ND24rs' | 'Standard_NV6' | 'Standard_NV12' | 'Standard_NV24'; /** * Defines values for CachingTypes. * Possible values include: 'None', 'ReadOnly', 'ReadWrite' * @readonly * @enum {string} */ export type CachingTypes = 'None' | 'ReadOnly' | 'ReadWrite'; /** * Defines values for DiskCreateOptionTypes. * Possible values include: 'FromImage', 'Empty', 'Attach' * @readonly * @enum {string} */ export type DiskCreateOptionTypes = 'FromImage' | 'Empty' | 'Attach'; /** * Defines values for StorageAccountTypes. * Possible values include: 'Standard_LRS', 'Premium_LRS' * @readonly * @enum {string} */ export type StorageAccountTypes = 'Standard_LRS' | 'Premium_LRS'; /** * Defines values for PassNames. * Possible values include: 'OobeSystem' * @readonly * @enum {string} */ export type PassNames = 'OobeSystem'; /** * Defines values for ComponentNames. * Possible values include: 'Microsoft-Windows-Shell-Setup' * @readonly * @enum {string} */ export type ComponentNames = 'Microsoft-Windows-Shell-Setup'; /** * Defines values for SettingNames. * Possible values include: 'AutoLogon', 'FirstLogonCommands' * @readonly * @enum {string} */ export type SettingNames = 'AutoLogon' | 'FirstLogonCommands'; /** * Defines values for ProtocolTypes. * Possible values include: 'Http', 'Https' * @readonly * @enum {string} */ export type ProtocolTypes = 'Http' | 'Https'; /** * Defines values for ResourceIdentityType. * Possible values include: 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', * 'None' * @readonly * @enum {string} */ export type ResourceIdentityType = 'SystemAssigned' | 'UserAssigned' | 'SystemAssigned, UserAssigned' | 'None'; /** * Defines values for MaintenanceOperationResultCodeTypes. * Possible values include: 'None', 'RetryLater', 'MaintenanceAborted', 'MaintenanceCompleted' * @readonly * @enum {string} */ export type MaintenanceOperationResultCodeTypes = 'None' | 'RetryLater' | 'MaintenanceAborted' | 'MaintenanceCompleted'; /** * Defines values for UpgradeMode. * Possible values include: 'Automatic', 'Manual', 'Rolling' * @readonly * @enum {string} */ export type UpgradeMode = 'Automatic' | 'Manual' | 'Rolling'; /** * Defines values for OperatingSystemStateTypes. * Possible values include: 'Generalized', 'Specialized' * @readonly * @enum {string} */ export type OperatingSystemStateTypes = 'Generalized' | 'Specialized'; /** * Defines values for IPVersion. * Possible values include: 'IPv4', 'IPv6' * @readonly * @enum {string} */ export type IPVersion = 'IPv4' | 'IPv6'; /** * Defines values for VirtualMachinePriorityTypes. * Possible values include: 'Regular', 'Low' * @readonly * @enum {string} */ export type VirtualMachinePriorityTypes = 'Regular' | 'Low'; /** * Defines values for VirtualMachineEvictionPolicyTypes. * Possible values include: 'Deallocate', 'Delete' * @readonly * @enum {string} */ export type VirtualMachineEvictionPolicyTypes = 'Deallocate' | 'Delete'; /** * Defines values for VirtualMachineScaleSetSkuScaleType. * Possible values include: 'Automatic', 'None' * @readonly * @enum {string} */ export type VirtualMachineScaleSetSkuScaleType = 'Automatic' | 'None'; /** * Defines values for UpgradeState. * Possible values include: 'RollingForward', 'Cancelled', 'Completed', 'Faulted' * @readonly * @enum {string} */ export type UpgradeState = 'RollingForward' | 'Cancelled' | 'Completed' | 'Faulted'; /** * Defines values for UpgradeOperationInvoker. * Possible values include: 'Unknown', 'User', 'Platform' * @readonly * @enum {string} */ export type UpgradeOperationInvoker = 'Unknown' | 'User' | 'Platform'; /** * Defines values for RollingUpgradeStatusCode. * Possible values include: 'RollingForward', 'Cancelled', 'Completed', 'Faulted' * @readonly * @enum {string} */ export type RollingUpgradeStatusCode = 'RollingForward' | 'Cancelled' | 'Completed' | 'Faulted'; /** * Defines values for RollingUpgradeActionType. * Possible values include: 'Start', 'Cancel' * @readonly * @enum {string} */ export type RollingUpgradeActionType = 'Start' | 'Cancel'; /** * Defines values for IntervalInMins. * Possible values include: 'ThreeMins', 'FiveMins', 'ThirtyMins', 'SixtyMins' * @readonly * @enum {string} */ export type IntervalInMins = 'ThreeMins' | 'FiveMins' | 'ThirtyMins' | 'SixtyMins'; /** * Defines values for DiskCreateOption. * Possible values include: 'Empty', 'Attach', 'FromImage', 'Import', 'Copy' * @readonly * @enum {string} */ export type DiskCreateOption = 'Empty' | 'Attach' | 'FromImage' | 'Import' | 'Copy'; /** * Defines values for AccessLevel. * Possible values include: 'None', 'Read' * @readonly * @enum {string} */ export type AccessLevel = 'None' | 'Read'; /** * Defines values for InstanceViewTypes. * Possible values include: 'instanceView' * @readonly * @enum {string} */ export type InstanceViewTypes = 'instanceView'; /** * Contains response data for the list operation. */ export type OperationsListResponse = ComputeOperationListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: ComputeOperationListResult; }; }; /** * Contains response data for the createOrUpdate operation. */ export type AvailabilitySetsCreateOrUpdateResponse = AvailabilitySet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AvailabilitySet; }; }; /** * Contains response data for the update operation. */ export type AvailabilitySetsUpdateResponse = AvailabilitySet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AvailabilitySet; }; }; /** * Contains response data for the deleteMethod operation. */ export type AvailabilitySetsDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the get operation. */ export type AvailabilitySetsGetResponse = AvailabilitySet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AvailabilitySet; }; }; /** * Contains response data for the listBySubscription operation. */ export type AvailabilitySetsListBySubscriptionResponse = AvailabilitySetListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AvailabilitySetListResult; }; }; /** * Contains response data for the list operation. */ export type AvailabilitySetsListResponse = AvailabilitySetListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AvailabilitySetListResult; }; }; /** * Contains response data for the listAvailableSizes operation. */ export type AvailabilitySetsListAvailableSizesResponse = VirtualMachineSizeListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineSizeListResult; }; }; /** * Contains response data for the listBySubscriptionNext operation. */ export type AvailabilitySetsListBySubscriptionNextResponse = AvailabilitySetListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AvailabilitySetListResult; }; }; /** * Contains response data for the listNext operation. */ export type AvailabilitySetsListNextResponse = AvailabilitySetListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AvailabilitySetListResult; }; }; /** * Contains response data for the get operation. */ export type VirtualMachineExtensionImagesGetResponse = VirtualMachineExtensionImage & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtensionImage; }; }; /** * Contains response data for the listTypes operation. */ export type VirtualMachineExtensionImagesListTypesResponse = Array & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtensionImage[]; }; }; /** * Contains response data for the listVersions operation. */ export type VirtualMachineExtensionImagesListVersionsResponse = Array & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtensionImage[]; }; }; /** * Contains response data for the createOrUpdate operation. */ export type VirtualMachineExtensionsCreateOrUpdateResponse = VirtualMachineExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtension; }; }; /** * Contains response data for the update operation. */ export type VirtualMachineExtensionsUpdateResponse = VirtualMachineExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtension; }; }; /** * Contains response data for the deleteMethod operation. */ export type VirtualMachineExtensionsDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the get operation. */ export type VirtualMachineExtensionsGetResponse = VirtualMachineExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtension; }; }; /** * Contains response data for the beginCreateOrUpdate operation. */ export type VirtualMachineExtensionsBeginCreateOrUpdateResponse = VirtualMachineExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtension; }; }; /** * Contains response data for the beginUpdate operation. */ export type VirtualMachineExtensionsBeginUpdateResponse = VirtualMachineExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtension; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type VirtualMachineExtensionsBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the getExtensions operation. */ export type VirtualMachinesGetExtensionsResponse = VirtualMachineExtensionsListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineExtensionsListResult; }; }; /** * Contains response data for the listByLocation operation. */ export type VirtualMachinesListByLocationResponse = VirtualMachineListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineListResult; }; }; /** * Contains response data for the capture operation. */ export type VirtualMachinesCaptureResponse = VirtualMachineCaptureResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineCaptureResult; }; }; /** * Contains response data for the createOrUpdate operation. */ export type VirtualMachinesCreateOrUpdateResponse = VirtualMachine & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachine; }; }; /** * Contains response data for the update operation. */ export type VirtualMachinesUpdateResponse = VirtualMachine & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachine; }; }; /** * Contains response data for the deleteMethod operation. */ export type VirtualMachinesDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the get operation. */ export type VirtualMachinesGetResponse = VirtualMachine & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachine; }; }; /** * Contains response data for the instanceView operation. */ export type VirtualMachinesInstanceViewResponse = VirtualMachineInstanceView & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineInstanceView; }; }; /** * Contains response data for the convertToManagedDisks operation. */ export type VirtualMachinesConvertToManagedDisksResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the deallocate operation. */ export type VirtualMachinesDeallocateResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the generalize operation. */ export type VirtualMachinesGeneralizeResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the list operation. */ export type VirtualMachinesListResponse = VirtualMachineListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineListResult; }; }; /** * Contains response data for the listAll operation. */ export type VirtualMachinesListAllResponse = VirtualMachineListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineListResult; }; }; /** * Contains response data for the listAvailableSizes operation. */ export type VirtualMachinesListAvailableSizesResponse = VirtualMachineSizeListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineSizeListResult; }; }; /** * Contains response data for the powerOff operation. */ export type VirtualMachinesPowerOffResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the restart operation. */ export type VirtualMachinesRestartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the start operation. */ export type VirtualMachinesStartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the redeploy operation. */ export type VirtualMachinesRedeployResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the performMaintenance operation. */ export type VirtualMachinesPerformMaintenanceResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginCapture operation. */ export type VirtualMachinesBeginCaptureResponse = VirtualMachineCaptureResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineCaptureResult; }; }; /** * Contains response data for the beginCreateOrUpdate operation. */ export type VirtualMachinesBeginCreateOrUpdateResponse = VirtualMachine & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachine; }; }; /** * Contains response data for the beginUpdate operation. */ export type VirtualMachinesBeginUpdateResponse = VirtualMachine & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachine; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type VirtualMachinesBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginConvertToManagedDisks operation. */ export type VirtualMachinesBeginConvertToManagedDisksResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginDeallocate operation. */ export type VirtualMachinesBeginDeallocateResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginPowerOff operation. */ export type VirtualMachinesBeginPowerOffResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginRestart operation. */ export type VirtualMachinesBeginRestartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginStart operation. */ export type VirtualMachinesBeginStartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginRedeploy operation. */ export type VirtualMachinesBeginRedeployResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginPerformMaintenance operation. */ export type VirtualMachinesBeginPerformMaintenanceResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listByLocationNext operation. */ export type VirtualMachinesListByLocationNextResponse = VirtualMachineListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineListResult; }; }; /** * Contains response data for the listNext operation. */ export type VirtualMachinesListNextResponse = VirtualMachineListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineListResult; }; }; /** * Contains response data for the listAllNext operation. */ export type VirtualMachinesListAllNextResponse = VirtualMachineListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineListResult; }; }; /** * Contains response data for the get operation. */ export type VirtualMachineImagesGetResponse = VirtualMachineImage & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineImage; }; }; /** * Contains response data for the list operation. */ export type VirtualMachineImagesListResponse = Array & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineImageResource[]; }; }; /** * Contains response data for the listOffers operation. */ export type VirtualMachineImagesListOffersResponse = Array & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineImageResource[]; }; }; /** * Contains response data for the listPublishers operation. */ export type VirtualMachineImagesListPublishersResponse = Array & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineImageResource[]; }; }; /** * Contains response data for the listSkus operation. */ export type VirtualMachineImagesListSkusResponse = Array & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineImageResource[]; }; }; /** * Contains response data for the list operation. */ export type UsageListResponse = ListUsagesResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: ListUsagesResult; }; }; /** * Contains response data for the listNext operation. */ export type UsageListNextResponse = ListUsagesResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: ListUsagesResult; }; }; /** * Contains response data for the list operation. */ export type VirtualMachineSizesListResponse = VirtualMachineSizeListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineSizeListResult; }; }; /** * Contains response data for the createOrUpdate operation. */ export type ImagesCreateOrUpdateResponse = Image & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Image; }; }; /** * Contains response data for the update operation. */ export type ImagesUpdateResponse = Image & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Image; }; }; /** * Contains response data for the deleteMethod operation. */ export type ImagesDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the get operation. */ export type ImagesGetResponse = Image & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Image; }; }; /** * Contains response data for the listByResourceGroup operation. */ export type ImagesListByResourceGroupResponse = ImageListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: ImageListResult; }; }; /** * Contains response data for the list operation. */ export type ImagesListResponse = ImageListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: ImageListResult; }; }; /** * Contains response data for the beginCreateOrUpdate operation. */ export type ImagesBeginCreateOrUpdateResponse = Image & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Image; }; }; /** * Contains response data for the beginUpdate operation. */ export type ImagesBeginUpdateResponse = Image & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Image; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type ImagesBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listByResourceGroupNext operation. */ export type ImagesListByResourceGroupNextResponse = ImageListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: ImageListResult; }; }; /** * Contains response data for the listNext operation. */ export type ImagesListNextResponse = ImageListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: ImageListResult; }; }; /** * Contains response data for the createOrUpdate operation. */ export type VirtualMachineScaleSetsCreateOrUpdateResponse = VirtualMachineScaleSet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSet; }; }; /** * Contains response data for the update operation. */ export type VirtualMachineScaleSetsUpdateResponse = VirtualMachineScaleSet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSet; }; }; /** * Contains response data for the deleteMethod operation. */ export type VirtualMachineScaleSetsDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the get operation. */ export type VirtualMachineScaleSetsGetResponse = VirtualMachineScaleSet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSet; }; }; /** * Contains response data for the deallocate operation. */ export type VirtualMachineScaleSetsDeallocateResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the deleteInstances operation. */ export type VirtualMachineScaleSetsDeleteInstancesResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the getInstanceView operation. */ export type VirtualMachineScaleSetsGetInstanceViewResponse = VirtualMachineScaleSetInstanceView & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetInstanceView; }; }; /** * Contains response data for the list operation. */ export type VirtualMachineScaleSetsListResponse = VirtualMachineScaleSetListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListResult; }; }; /** * Contains response data for the listAll operation. */ export type VirtualMachineScaleSetsListAllResponse = VirtualMachineScaleSetListWithLinkResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListWithLinkResult; }; }; /** * Contains response data for the listSkus operation. */ export type VirtualMachineScaleSetsListSkusResponse = VirtualMachineScaleSetListSkusResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListSkusResult; }; }; /** * Contains response data for the getOSUpgradeHistory operation. */ export type VirtualMachineScaleSetsGetOSUpgradeHistoryResponse = VirtualMachineScaleSetListOSUpgradeHistory & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListOSUpgradeHistory; }; }; /** * Contains response data for the powerOff operation. */ export type VirtualMachineScaleSetsPowerOffResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the restart operation. */ export type VirtualMachineScaleSetsRestartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the start operation. */ export type VirtualMachineScaleSetsStartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the redeploy operation. */ export type VirtualMachineScaleSetsRedeployResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the performMaintenance operation. */ export type VirtualMachineScaleSetsPerformMaintenanceResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the updateInstances operation. */ export type VirtualMachineScaleSetsUpdateInstancesResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the reimage operation. */ export type VirtualMachineScaleSetsReimageResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the reimageAll operation. */ export type VirtualMachineScaleSetsReimageAllResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the forceRecoveryServiceFabricPlatformUpdateDomainWalk operation. */ export type VirtualMachineScaleSetsForceRecoveryServiceFabricPlatformUpdateDomainWalkResponse = RecoveryWalkResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: RecoveryWalkResponse; }; }; /** * Contains response data for the beginCreateOrUpdate operation. */ export type VirtualMachineScaleSetsBeginCreateOrUpdateResponse = VirtualMachineScaleSet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSet; }; }; /** * Contains response data for the beginUpdate operation. */ export type VirtualMachineScaleSetsBeginUpdateResponse = VirtualMachineScaleSet & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSet; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type VirtualMachineScaleSetsBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginDeallocate operation. */ export type VirtualMachineScaleSetsBeginDeallocateResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginDeleteInstances operation. */ export type VirtualMachineScaleSetsBeginDeleteInstancesResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginPowerOff operation. */ export type VirtualMachineScaleSetsBeginPowerOffResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginRestart operation. */ export type VirtualMachineScaleSetsBeginRestartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginStart operation. */ export type VirtualMachineScaleSetsBeginStartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginRedeploy operation. */ export type VirtualMachineScaleSetsBeginRedeployResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginPerformMaintenance operation. */ export type VirtualMachineScaleSetsBeginPerformMaintenanceResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginUpdateInstances operation. */ export type VirtualMachineScaleSetsBeginUpdateInstancesResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginReimage operation. */ export type VirtualMachineScaleSetsBeginReimageResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginReimageAll operation. */ export type VirtualMachineScaleSetsBeginReimageAllResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listNext operation. */ export type VirtualMachineScaleSetsListNextResponse = VirtualMachineScaleSetListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListResult; }; }; /** * Contains response data for the listAllNext operation. */ export type VirtualMachineScaleSetsListAllNextResponse = VirtualMachineScaleSetListWithLinkResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListWithLinkResult; }; }; /** * Contains response data for the listSkusNext operation. */ export type VirtualMachineScaleSetsListSkusNextResponse = VirtualMachineScaleSetListSkusResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListSkusResult; }; }; /** * Contains response data for the getOSUpgradeHistoryNext operation. */ export type VirtualMachineScaleSetsGetOSUpgradeHistoryNextResponse = VirtualMachineScaleSetListOSUpgradeHistory & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetListOSUpgradeHistory; }; }; /** * Contains response data for the createOrUpdate operation. */ export type VirtualMachineScaleSetExtensionsCreateOrUpdateResponse = VirtualMachineScaleSetExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetExtension; }; }; /** * Contains response data for the deleteMethod operation. */ export type VirtualMachineScaleSetExtensionsDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the get operation. */ export type VirtualMachineScaleSetExtensionsGetResponse = VirtualMachineScaleSetExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetExtension; }; }; /** * Contains response data for the list operation. */ export type VirtualMachineScaleSetExtensionsListResponse = VirtualMachineScaleSetExtensionListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetExtensionListResult; }; }; /** * Contains response data for the beginCreateOrUpdate operation. */ export type VirtualMachineScaleSetExtensionsBeginCreateOrUpdateResponse = VirtualMachineScaleSetExtension & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetExtension; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type VirtualMachineScaleSetExtensionsBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listNext operation. */ export type VirtualMachineScaleSetExtensionsListNextResponse = VirtualMachineScaleSetExtensionListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetExtensionListResult; }; }; /** * Contains response data for the cancel operation. */ export type VirtualMachineScaleSetRollingUpgradesCancelResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the startOSUpgrade operation. */ export type VirtualMachineScaleSetRollingUpgradesStartOSUpgradeResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the getLatest operation. */ export type VirtualMachineScaleSetRollingUpgradesGetLatestResponse = RollingUpgradeStatusInfo & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: RollingUpgradeStatusInfo; }; }; /** * Contains response data for the beginCancel operation. */ export type VirtualMachineScaleSetRollingUpgradesBeginCancelResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginStartOSUpgrade operation. */ export type VirtualMachineScaleSetRollingUpgradesBeginStartOSUpgradeResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the reimage operation. */ export type VirtualMachineScaleSetVMsReimageResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the reimageAll operation. */ export type VirtualMachineScaleSetVMsReimageAllResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the deallocate operation. */ export type VirtualMachineScaleSetVMsDeallocateResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the update operation. */ export type VirtualMachineScaleSetVMsUpdateResponse = VirtualMachineScaleSetVM & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetVM; }; }; /** * Contains response data for the deleteMethod operation. */ export type VirtualMachineScaleSetVMsDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the get operation. */ export type VirtualMachineScaleSetVMsGetResponse = VirtualMachineScaleSetVM & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetVM; }; }; /** * Contains response data for the getInstanceView operation. */ export type VirtualMachineScaleSetVMsGetInstanceViewResponse = VirtualMachineScaleSetVMInstanceView & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetVMInstanceView; }; }; /** * Contains response data for the list operation. */ export type VirtualMachineScaleSetVMsListResponse = VirtualMachineScaleSetVMListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetVMListResult; }; }; /** * Contains response data for the powerOff operation. */ export type VirtualMachineScaleSetVMsPowerOffResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the restart operation. */ export type VirtualMachineScaleSetVMsRestartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the start operation. */ export type VirtualMachineScaleSetVMsStartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the redeploy operation. */ export type VirtualMachineScaleSetVMsRedeployResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the performMaintenance operation. */ export type VirtualMachineScaleSetVMsPerformMaintenanceResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginReimage operation. */ export type VirtualMachineScaleSetVMsBeginReimageResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginReimageAll operation. */ export type VirtualMachineScaleSetVMsBeginReimageAllResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginDeallocate operation. */ export type VirtualMachineScaleSetVMsBeginDeallocateResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginUpdate operation. */ export type VirtualMachineScaleSetVMsBeginUpdateResponse = VirtualMachineScaleSetVM & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetVM; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type VirtualMachineScaleSetVMsBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginPowerOff operation. */ export type VirtualMachineScaleSetVMsBeginPowerOffResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginRestart operation. */ export type VirtualMachineScaleSetVMsBeginRestartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginStart operation. */ export type VirtualMachineScaleSetVMsBeginStartResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginRedeploy operation. */ export type VirtualMachineScaleSetVMsBeginRedeployResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginPerformMaintenance operation. */ export type VirtualMachineScaleSetVMsBeginPerformMaintenanceResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listNext operation. */ export type VirtualMachineScaleSetVMsListNextResponse = VirtualMachineScaleSetVMListResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: VirtualMachineScaleSetVMListResult; }; }; /** * Contains response data for the exportRequestRateByInterval operation. */ export type LogAnalyticsExportRequestRateByIntervalResponse = LogAnalyticsOperationResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: LogAnalyticsOperationResult; }; }; /** * Contains response data for the exportThrottledRequests operation. */ export type LogAnalyticsExportThrottledRequestsResponse = LogAnalyticsOperationResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: LogAnalyticsOperationResult; }; }; /** * Contains response data for the beginExportRequestRateByInterval operation. */ export type LogAnalyticsBeginExportRequestRateByIntervalResponse = LogAnalyticsOperationResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: LogAnalyticsOperationResult; }; }; /** * Contains response data for the beginExportThrottledRequests operation. */ export type LogAnalyticsBeginExportThrottledRequestsResponse = LogAnalyticsOperationResult & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: LogAnalyticsOperationResult; }; }; /** * Contains response data for the createOrUpdate operation. */ export type DisksCreateOrUpdateResponse = Disk & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Disk; }; }; /** * Contains response data for the update operation. */ export type DisksUpdateResponse = Disk & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Disk; }; }; /** * Contains response data for the get operation. */ export type DisksGetResponse = Disk & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Disk; }; }; /** * Contains response data for the deleteMethod operation. */ export type DisksDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listByResourceGroup operation. */ export type DisksListByResourceGroupResponse = DiskList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: DiskList; }; }; /** * Contains response data for the list operation. */ export type DisksListResponse = DiskList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: DiskList; }; }; /** * Contains response data for the grantAccess operation. */ export type DisksGrantAccessResponse = AccessUri & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AccessUri; }; }; /** * Contains response data for the revokeAccess operation. */ export type DisksRevokeAccessResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginCreateOrUpdate operation. */ export type DisksBeginCreateOrUpdateResponse = Disk & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Disk; }; }; /** * Contains response data for the beginUpdate operation. */ export type DisksBeginUpdateResponse = Disk & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Disk; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type DisksBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginGrantAccess operation. */ export type DisksBeginGrantAccessResponse = AccessUri & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AccessUri; }; }; /** * Contains response data for the beginRevokeAccess operation. */ export type DisksBeginRevokeAccessResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listByResourceGroupNext operation. */ export type DisksListByResourceGroupNextResponse = DiskList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: DiskList; }; }; /** * Contains response data for the listNext operation. */ export type DisksListNextResponse = DiskList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: DiskList; }; }; /** * Contains response data for the createOrUpdate operation. */ export type SnapshotsCreateOrUpdateResponse = Snapshot & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Snapshot; }; }; /** * Contains response data for the update operation. */ export type SnapshotsUpdateResponse = Snapshot & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Snapshot; }; }; /** * Contains response data for the get operation. */ export type SnapshotsGetResponse = Snapshot & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Snapshot; }; }; /** * Contains response data for the deleteMethod operation. */ export type SnapshotsDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listByResourceGroup operation. */ export type SnapshotsListByResourceGroupResponse = SnapshotList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: SnapshotList; }; }; /** * Contains response data for the list operation. */ export type SnapshotsListResponse = SnapshotList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: SnapshotList; }; }; /** * Contains response data for the grantAccess operation. */ export type SnapshotsGrantAccessResponse = AccessUri & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AccessUri; }; }; /** * Contains response data for the revokeAccess operation. */ export type SnapshotsRevokeAccessResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginCreateOrUpdate operation. */ export type SnapshotsBeginCreateOrUpdateResponse = Snapshot & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Snapshot; }; }; /** * Contains response data for the beginUpdate operation. */ export type SnapshotsBeginUpdateResponse = Snapshot & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: Snapshot; }; }; /** * Contains response data for the beginDeleteMethod operation. */ export type SnapshotsBeginDeleteMethodResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the beginGrantAccess operation. */ export type SnapshotsBeginGrantAccessResponse = AccessUri & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: AccessUri; }; }; /** * Contains response data for the beginRevokeAccess operation. */ export type SnapshotsBeginRevokeAccessResponse = OperationStatusResponse & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: OperationStatusResponse; }; }; /** * Contains response data for the listByResourceGroupNext operation. */ export type SnapshotsListByResourceGroupNextResponse = SnapshotList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: SnapshotList; }; }; /** * Contains response data for the listNext operation. */ export type SnapshotsListNextResponse = SnapshotList & { /** * The underlying HTTP response. */ _response: msRest.HttpResponse & { /** * The response body as text (string format) */ bodyAsText: string; /** * The response body as parsed JSON or XML */ parsedBody: SnapshotList; }; };