import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface extensionsChild { type: Expressionable<('extensions')>; apiVersion: Expressionable<('2017-03-30')>; properties: Expressionable; } export interface AdditionalUnattendContent { passName?: Expressionable<('oobeSystem')>; componentName?: Expressionable<('Microsoft-Windows-Shell-Setup')>; settingName?: Expressionable<('AutoLogon' | 'FirstLogonCommands')>; content?: Expressionable; } export interface ApiEntityReference { id?: Expressionable; } export interface AvailabilitySetProperties { platformUpdateDomainCount?: Expressionable; platformFaultDomainCount?: Expressionable; virtualMachines?: Expressionable; } export interface BootDiagnostics { enabled?: Expressionable; storageUri?: Expressionable; } export interface CreationData { createOption: Expressionable<('Empty' | 'Attach' | 'FromImage' | 'Import' | 'Copy')>; storageAccountId?: Expressionable; imageReference?: Expressionable; sourceUri?: Expressionable; sourceResourceId?: Expressionable; } export interface DataDisk { lun: Expressionable; name?: Expressionable; vhd?: Expressionable; image?: Expressionable; caching?: Expressionable<('None' | 'ReadOnly' | 'ReadWrite')>; createOption: Expressionable<('FromImage' | 'Empty' | 'Attach')>; diskSizeGB?: Expressionable; managedDisk?: Expressionable; } export interface DiagnosticsProfile { bootDiagnostics?: Expressionable; } export interface DiskEncryptionSettings { diskEncryptionKey?: Expressionable; keyEncryptionKey?: Expressionable; enabled?: Expressionable; } export interface DiskProperties { osType?: Expressionable<('Windows' | 'Linux')>; creationData: Expressionable; diskSizeGB?: Expressionable; encryptionSettings?: Expressionable; } export interface DiskSku { name?: Expressionable<('Standard_LRS' | 'Premium_LRS')>; } export interface EncryptionSettings { enabled?: Expressionable; diskEncryptionKey?: Expressionable; keyEncryptionKey?: Expressionable; } export interface HardwareProfile { vmSize?: Expressionable<('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_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_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_F1' | 'Standard_F2' | 'Standard_F4' | 'Standard_F8' | 'Standard_F16' | 'Standard_F1s' | 'Standard_F2s' | 'Standard_F4s' | 'Standard_F8s' | 'Standard_F16s' | 'Standard_G1' | 'Standard_G2' | 'Standard_G3' | 'Standard_G4' | 'Standard_G5' | 'Standard_GS1' | 'Standard_GS2' | 'Standard_GS3' | 'Standard_GS4' | 'Standard_GS5' | 'Standard_H8' | 'Standard_H16' | 'Standard_H8m' | 'Standard_H16m' | 'Standard_H16r' | 'Standard_H16mr' | 'Standard_L4s' | 'Standard_L8s' | 'Standard_L16s' | 'Standard_L32s' | 'Standard_NC6' | 'Standard_NC12' | 'Standard_NC24' | 'Standard_NC24r' | 'Standard_NV6' | 'Standard_NV12' | 'Standard_NV24')>; } export interface ImageDataDisk { lun: Expressionable; snapshot?: Expressionable; managedDisk?: Expressionable; blobUri?: Expressionable; caching?: Expressionable<('None' | 'ReadOnly' | 'ReadWrite')>; diskSizeGB?: Expressionable; storageAccountType?: Expressionable<('Standard_LRS' | 'Premium_LRS')>; } export interface ImageDiskReference { id: Expressionable; lun?: Expressionable; } export interface ImageOSDisk { osType: Expressionable<('Windows' | 'Linux')>; osState: Expressionable<('Generalized' | 'Specialized')>; snapshot?: Expressionable; managedDisk?: Expressionable; blobUri?: Expressionable; caching?: Expressionable<('None' | 'ReadOnly' | 'ReadWrite')>; diskSizeGB?: Expressionable; storageAccountType?: Expressionable<('Standard_LRS' | 'Premium_LRS')>; } export interface ImageProperties { sourceVirtualMachine?: Expressionable; storageProfile?: Expressionable; } export interface ImageReference { id?: Expressionable; publisher?: Expressionable; offer?: Expressionable; sku?: Expressionable; version?: Expressionable; } export interface ImageStorageProfile { osDisk: Expressionable; dataDisks?: Expressionable; } export interface InstanceViewStatus { code?: Expressionable; level?: Expressionable<('Info' | 'Warning' | 'Error')>; displayStatus?: Expressionable; message?: Expressionable; time?: Expressionable; } export interface KeyVaultAndKeyReference { sourceVault: Expressionable; keyUrl: Expressionable; } export interface KeyVaultAndSecretReference { sourceVault: Expressionable; secretUrl: Expressionable; } export interface KeyVaultKeyReference { keyUrl: Expressionable; sourceVault: Expressionable; } export interface KeyVaultSecretReference { secretUrl: Expressionable; sourceVault: Expressionable; } export interface LinuxConfiguration { disablePasswordAuthentication?: Expressionable; ssh?: Expressionable; } export interface ManagedDiskParameters { id?: Expressionable; storageAccountType?: Expressionable<('Standard_LRS' | 'Premium_LRS')>; } export interface NetworkInterfaceReference { id?: Expressionable; properties?: Expressionable; } export interface NetworkInterfaceReferenceProperties { primary?: Expressionable; } export interface NetworkProfile { networkInterfaces?: Expressionable; } export interface OSDisk { osType?: Expressionable<('Windows' | 'Linux')>; encryptionSettings?: Expressionable; name?: Expressionable; vhd?: Expressionable; image?: Expressionable; caching?: Expressionable<('None' | 'ReadOnly' | 'ReadWrite')>; createOption: Expressionable<('FromImage' | 'Empty' | 'Attach')>; diskSizeGB?: Expressionable; managedDisk?: Expressionable; } export interface OSProfile { computerName?: Expressionable; adminUsername?: Expressionable; adminPassword?: Expressionable; customData?: Expressionable; windowsConfiguration?: Expressionable; linuxConfiguration?: Expressionable; secrets?: Expressionable; } export interface Plan { name?: Expressionable; publisher?: Expressionable; product?: Expressionable; promotionCode?: Expressionable; } export interface Sku { name?: Expressionable; tier?: Expressionable; capacity?: Expressionable; } export interface SourceVault { id?: Expressionable; } export interface SshConfiguration { publicKeys?: Expressionable; } export interface SshPublicKey { path?: Expressionable; keyData?: Expressionable; } export interface StorageProfile { imageReference?: Expressionable; osDisk?: Expressionable; dataDisks?: Expressionable; } export interface SubResource { id?: Expressionable; } export interface UpgradePolicy { mode?: Expressionable<('Automatic' | 'Manual')>; } export interface VaultCertificate { certificateUrl?: Expressionable; certificateStore?: Expressionable; } export interface VaultSecretGroup { sourceVault?: Expressionable; vaultCertificates?: Expressionable; } export interface VirtualHardDisk { uri?: Expressionable; } export interface VirtualMachineExtensionInstanceView { name?: Expressionable; type?: Expressionable; typeHandlerVersion?: Expressionable; substatuses?: Expressionable; statuses?: Expressionable; } export interface VirtualMachineExtensionProperties { forceUpdateTag?: Expressionable; publisher?: Expressionable; type?: Expressionable; typeHandlerVersion?: Expressionable; autoUpgradeMinorVersion?: Expressionable; settings?: Expressionable; protectedSettings?: Expressionable; instanceView?: Expressionable; } export interface VirtualMachineIdentity { type?: Expressionable<('SystemAssigned')>; } export interface VirtualMachineProperties { hardwareProfile?: Expressionable; storageProfile?: Expressionable; osProfile?: Expressionable; networkProfile?: Expressionable; diagnosticsProfile?: Expressionable; availabilitySet?: Expressionable; licenseType?: Expressionable; } export interface VirtualMachineScaleSetDataDisk { name?: Expressionable; lun: Expressionable; caching?: Expressionable<('None' | 'ReadOnly' | 'ReadWrite')>; createOption: Expressionable<('FromImage' | 'Empty' | 'Attach')>; diskSizeGB?: Expressionable; managedDisk?: Expressionable; } export interface VirtualMachineScaleSetExtension { name?: Expressionable; properties?: Expressionable; } export interface VirtualMachineScaleSetExtensionProfile { extensions?: Expressionable; } export interface VirtualMachineScaleSetExtensionProperties { forceUpdateTag?: Expressionable; publisher?: Expressionable; type?: Expressionable; typeHandlerVersion?: Expressionable; autoUpgradeMinorVersion?: Expressionable; settings?: Expressionable; protectedSettings?: Expressionable; } export interface VirtualMachineScaleSetIdentity { type?: Expressionable<('SystemAssigned')>; } export interface VirtualMachineScaleSetIPConfiguration { id?: Expressionable; name: Expressionable; properties?: Expressionable; } export interface VirtualMachineScaleSetIPConfigurationProperties { subnet?: Expressionable; primary?: Expressionable; publicIPAddressConfiguration?: Expressionable; privateIPAddressVersion?: Expressionable<('IPv4' | 'IPv6')>; applicationGatewayBackendAddressPools?: Expressionable; loadBalancerBackendAddressPools?: Expressionable; loadBalancerInboundNatPools?: Expressionable; } export interface VirtualMachineScaleSetManagedDiskParameters { storageAccountType?: Expressionable<('Standard_LRS' | 'Premium_LRS')>; } export interface VirtualMachineScaleSetNetworkConfiguration { id?: Expressionable; name: Expressionable; properties?: Expressionable; } export interface VirtualMachineScaleSetNetworkConfigurationDnsSettings { dnsServers?: Expressionable; } export interface VirtualMachineScaleSetNetworkConfigurationProperties { primary?: Expressionable; enableAcceleratedNetworking?: Expressionable; networkSecurityGroup?: Expressionable; dnsSettings?: Expressionable; ipConfigurations: Expressionable; } export interface VirtualMachineScaleSetNetworkProfile { networkInterfaceConfigurations?: Expressionable; } export interface VirtualMachineScaleSetOSDisk { name?: Expressionable; caching?: Expressionable<('None' | 'ReadOnly' | 'ReadWrite')>; createOption: Expressionable<('FromImage' | 'Empty' | 'Attach')>; osType?: Expressionable<('Windows' | 'Linux')>; image?: Expressionable; vhdContainers?: Expressionable; managedDisk?: Expressionable; } export interface VirtualMachineScaleSetOSProfile { computerNamePrefix?: Expressionable; adminUsername?: Expressionable; adminPassword?: Expressionable; customData?: Expressionable; windowsConfiguration?: Expressionable; linuxConfiguration?: Expressionable; secrets?: Expressionable; } export interface VirtualMachineScaleSetProperties { upgradePolicy?: Expressionable; virtualMachineProfile?: Expressionable; overprovision?: Expressionable; singlePlacementGroup?: Expressionable; } export interface VirtualMachineScaleSetPublicIPAddressConfiguration { name: Expressionable; properties?: Expressionable; } export interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings { domainNameLabel: Expressionable; } export interface VirtualMachineScaleSetPublicIPAddressConfigurationProperties { idleTimeoutInMinutes?: Expressionable; dnsSettings?: Expressionable; } export interface VirtualMachineScaleSetStorageProfile { imageReference?: Expressionable; osDisk?: Expressionable; dataDisks?: Expressionable; } export interface VirtualMachineScaleSetVMProfile { osProfile?: Expressionable; storageProfile?: Expressionable; networkProfile?: Expressionable; diagnosticsProfile?: Expressionable; extensionProfile?: Expressionable; licenseType?: Expressionable; } export interface WindowsConfiguration { provisionVMAgent?: Expressionable; enableAutomaticUpdates?: Expressionable; timeZone?: Expressionable; additionalUnattendContent?: Expressionable; winRM?: Expressionable; } export interface WinRMConfiguration { listeners?: Expressionable; } export interface WinRMListener { protocol?: Expressionable<('Http' | 'Https')>; certificateUrl?: Expressionable; } export interface genericExtension { publisher: Expressionable; type: Expressionable; typeHandlerVersion: Expressionable; } export interface iaaSDiagnostics { publisher: Expressionable<('Microsoft.Azure.Diagnostics')>; type: Expressionable<('IaaSDiagnostics')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface iaaSAntimalware { publisher: Expressionable<('Microsoft.Azure.Security')>; type: Expressionable<('IaaSAntimalware')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface customScriptExtension { publisher: Expressionable<('Microsoft.Compute')>; type: Expressionable<('CustomScriptExtension')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface customScriptForLinux { publisher: Expressionable<('Microsoft.OSTCExtensions')>; type: Expressionable<('CustomScriptForLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface linuxDiagnostic { publisher: Expressionable<('Microsoft.OSTCExtensions')>; type: Expressionable<('LinuxDiagnostic')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface vmAccessForLinux { publisher: Expressionable<('Microsoft.OSTCExtensions')>; type: Expressionable<('VMAccessForLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface bgInfo { publisher: Expressionable<('Microsoft.Compute')>; type: Expressionable<('bginfo')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; } export interface vmAccessAgent { publisher: Expressionable<('Microsoft.Compute')>; type: Expressionable<('VMAccessAgent')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface dscExtension { publisher: Expressionable<('Microsoft.Powershell')>; type: Expressionable<('DSC')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface acronisBackupLinux { publisher: Expressionable<('Acronis.Backup')>; type: Expressionable<('AcronisBackupLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface acronisBackup { publisher: Expressionable<('Acronis.Backup')>; type: Expressionable<('AcronisBackup')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface linuxChefClient { publisher: Expressionable<('Chef.Bootstrap.WindowsAzure')>; type: Expressionable<('LinuxChefClient')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface chefClient { publisher: Expressionable<('Chef.Bootstrap.WindowsAzure')>; type: Expressionable<('ChefClient')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface datadogLinuxAgent { publisher: Expressionable<('Datadog.Agent')>; type: Expressionable<('DatadogLinuxAgent')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface datadogWindowsAgent { publisher: Expressionable<('Datadog.Agent')>; type: Expressionable<('DatadogWindowsAgent')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface dockerExtension { publisher: Expressionable<('Microsoft.Azure.Extensions')>; type: Expressionable<('DockerExtension')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface dynatraceLinux { publisher: Expressionable<('dynatrace.ruxit')>; type: Expressionable<('ruxitAgentLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface dynatraceWindows { publisher: Expressionable<('dynatrace.ruxit')>; type: Expressionable<('ruxitAgentWindows')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface eset { publisher: Expressionable<('ESET')>; type: Expressionable<('FileSecurity')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface hpeSecurityApplicationDefender { publisher: Expressionable<('HPE.Security.ApplicationDefender')>; type: Expressionable<('DotnetAgent')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; protectedSettings: Expressionable; } export interface puppetAgent { publisher: Expressionable<('Puppet')>; type: Expressionable<('PuppetAgent')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; protectedSettings: Expressionable; } export interface site24x7LinuxServerExtn { publisher: Expressionable<('Site24x7')>; type: Expressionable<('Site24x7LinuxServerExtn')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface site24x7WindowsServerExtn { publisher: Expressionable<('Site24x7')>; type: Expressionable<('Site24x7WindowsServerExtn')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface site24x7ApmInsightExtn { publisher: Expressionable<('Site24x7')>; type: Expressionable<('Site24x7ApmInsightExtn')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface trendMicroDSALinux { publisher: Expressionable<('TrendMicro.DeepSecurity')>; type: Expressionable<('TrendMicroDSALinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface trendMicroDSA { publisher: Expressionable<('TrendMicro.DeepSecurity')>; type: Expressionable<('TrendMicroDSA')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface bmcCtmAgentLinux { publisher: Expressionable<('ctm.bmc.com')>; type: Expressionable<('BmcCtmAgentLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface bmcCtmAgentWindows { publisher: Expressionable<('bmc.ctm')>; type: Expressionable<('AgentWinExt')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface OSPatchingForLinux { publisher: Expressionable<('Microsoft.OSTCExtensions')>; type: Expressionable<('OSPatchingForLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface VMSnapshot { publisher: Expressionable<('Microsoft.Azure.RecoveryServices')>; type: Expressionable<('VMSnapshot')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface VMSnapshotLinux { publisher: Expressionable<('Microsoft.Azure.RecoveryServices')>; type: Expressionable<('VMSnapshotLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; } export interface customScript { publisher: Expressionable<('Microsoft.Azure.Extensions')>; type: Expressionable<('CustomScript')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; settings: Expressionable; protectedSettings: Expressionable; } export interface networkWatcherAgentWindows { publisher: Expressionable<('Microsoft.Azure.NetworkWatcher')>; type: Expressionable<('NetworkWatcherAgentWindows')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; } export interface networkWatcherAgentLinux { publisher: Expressionable<('Microsoft.Azure.NetworkWatcher')>; type: Expressionable<('NetworkWatcherAgentLinux')>; typeHandlerVersion: Expressionable; autoUpgradeMinorVersion: Expressionable; } export declare namespace availabilitySets { interface AdditionalProps { sku?: Expressionable; } type AvailabilitySetsResource = ResourceDefinition; function create(name: Expressionable, properties: AvailabilitySetProperties, location: Expressionable, sku?: Expressionable): AvailabilitySetsResource; } export declare namespace disks { interface AdditionalProps { sku?: Expressionable; zones?: Expressionable; } type DisksResource = ResourceDefinition; function create(name: Expressionable, properties: DiskProperties, location: Expressionable, sku?: Expressionable, zones?: Expressionable): DisksResource; } export declare namespace images { type ImagesResource = ResourceDefinition; function create(name: Expressionable, properties: ImageProperties, location: Expressionable): ImagesResource; } export declare namespace snapshots { interface AdditionalProps { sku?: Expressionable; } type SnapshotsResource = ResourceDefinition; function create(name: Expressionable, properties: DiskProperties, location: Expressionable, sku?: Expressionable): SnapshotsResource; } export declare namespace virtualMachines { interface AdditionalProps { identity?: Expressionable; zones?: Expressionable; plan?: Expressionable; } type VirtualMachinesResource = ResourceDefinition; function create(name: Expressionable, properties: VirtualMachineProperties, location: Expressionable, identity?: Expressionable, zones?: Expressionable, plan?: Expressionable): VirtualMachinesResource; } export declare namespace virtualMachines { namespace extensions { type ExtensionsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: any, location: Expressionable): ExtensionsResource; } } export declare namespace virtualMachineScaleSets { interface AdditionalProps { identity?: Expressionable; sku?: Expressionable; zones?: Expressionable; plan?: Expressionable; } type VirtualMachineScaleSetsResource = ResourceDefinition; function create(name: Expressionable, properties: VirtualMachineScaleSetProperties, location: Expressionable, identity?: Expressionable, sku?: Expressionable, zones?: Expressionable, plan?: Expressionable): VirtualMachineScaleSetsResource; }