import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface ContactDetails { contactName: Expressionable; emailList: Expressionable; mobile?: Expressionable; notificationPreference?: Expressionable; phone: Expressionable; phoneExtension?: Expressionable; } export interface DataBoxDiskJobDetails { jobDetailsType: Expressionable<('DataBoxDisk')>; passkey?: Expressionable; preferredDisks?: Expressionable; } export interface DataBoxHeavyJobDetails { jobDetailsType: Expressionable<('DataBoxHeavy')>; } export interface DataBoxJobDetails { jobDetailsType: Expressionable<('DataBox')>; } export interface DestinationAccountDetails { accountId?: Expressionable; } export interface DestinationManagedDiskDetails { dataDestinationType: Expressionable<('ManagedDisk')>; resourceGroupId: Expressionable; stagingStorageAccountId: Expressionable; } export interface DestinationStorageAccountDetails { dataDestinationType: Expressionable<('StorageAccount')>; storageAccountId: Expressionable; } export interface JobDetails { contactDetails: Expressionable; destinationAccountDetails: Expressionable; expectedDataSizeInTeraBytes?: Expressionable; preferences?: Expressionable; shippingAddress: Expressionable; } export interface JobProperties { details?: Expressionable; } export interface NotificationPreference { sendNotification: Expressionable; stageName: Expressionable<('DevicePrepared' | 'Dispatched' | 'Delivered' | 'PickedUp' | 'AtAzureDC' | 'DataCopy')>; } export interface Preferences { preferredDataCenterRegion?: Expressionable; } export interface ShippingAddress { addressType?: Expressionable<('None' | 'Residential' | 'Commercial')>; city?: Expressionable; companyName?: Expressionable; country: Expressionable; postalCode: Expressionable; stateOrProvince?: Expressionable; streetAddress1: Expressionable; streetAddress2?: Expressionable; streetAddress3?: Expressionable; zipExtendedCode?: Expressionable; } export interface Sku { displayName?: Expressionable; family?: Expressionable; name: Expressionable<('DataBox' | 'DataBoxDisk' | 'DataBoxHeavy')>; } export declare namespace jobs { interface AdditionalProps { sku: Expressionable; tags?: Expressionable; } type JobsResource = ResourceDefinition; function create(name: Expressionable, properties: JobProperties, location: Expressionable, sku: Expressionable, tags?: Expressionable): JobsResource; }