import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface DedicatedCloudNodeProperties { availabilityZoneId: Expressionable; nodesCount: Expressionable; placementGroupId: Expressionable; purchaseId: Expressionable; skuDescription?: Expressionable; } export interface DedicatedCloudServiceProperties { gatewaySubnet: Expressionable; } export interface GuestOSCustomization { dnsServers?: Expressionable; hostName?: Expressionable; password?: Expressionable; policyId?: Expressionable; username?: Expressionable; } export interface GuestOSNICCustomization { allocation?: Expressionable<('static' | 'dynamic')>; dnsServers?: Expressionable; gateway?: Expressionable; ipAddress?: Expressionable; mask?: Expressionable; primaryWinsServer?: Expressionable; secondaryWinsServer?: Expressionable; } export interface ResourcePool { id: Expressionable; properties?: Expressionable; } export interface ResourcePoolProperties { } export interface Sku { capacity?: Expressionable; description?: Expressionable; family?: Expressionable; name: Expressionable; tier?: Expressionable; } export interface SkuDescription { id: Expressionable; name: Expressionable; } export interface VirtualDisk { controllerId: Expressionable; independenceMode: Expressionable<('persistent' | 'independent_persistent' | 'independent_nonpersistent')>; totalSize: Expressionable; virtualDiskId?: Expressionable; } export interface VirtualMachineProperties { amountOfRam: Expressionable; customization?: Expressionable; disks?: Expressionable; exposeToGuestVM?: Expressionable; nics?: Expressionable; numberOfCores: Expressionable; password?: Expressionable; privateCloudId: Expressionable; resourcePool?: Expressionable; templateId?: Expressionable; username?: Expressionable; vSphereNetworks?: Expressionable; } export interface VirtualNetwork { id: Expressionable; properties?: Expressionable; } export interface VirtualNetworkProperties { } export interface VirtualNic { customization?: Expressionable; ipAddresses?: Expressionable; macAddress?: Expressionable; network: Expressionable; nicType: Expressionable<('E1000' | 'E1000E' | 'PCNET32' | 'VMXNET' | 'VMXNET2' | 'VMXNET3')>; powerOnBoot?: Expressionable; virtualNicId?: Expressionable; } export declare namespace dedicatedCloudNodes { interface AdditionalProps { sku?: Expressionable; tags?: Expressionable; } type DedicatedCloudNodesResource = ResourceDefinition; function create(name: Expressionable, properties: DedicatedCloudNodeProperties, location: Expressionable, sku?: Expressionable, tags?: Expressionable): DedicatedCloudNodesResource; } export declare namespace dedicatedCloudServices { interface AdditionalProps { tags?: Expressionable; } type DedicatedCloudServicesResource = ResourceDefinition; function create(name: Expressionable, properties: DedicatedCloudServiceProperties, location: Expressionable, tags?: Expressionable): DedicatedCloudServicesResource; } export declare namespace virtualMachines { interface AdditionalProps { tags?: Expressionable; } type VirtualMachinesResource = ResourceDefinition; function create(name: Expressionable, properties: VirtualMachineProperties, location: Expressionable, tags?: Expressionable): VirtualMachinesResource; }