import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface EnvironmentProperties { provisioningState?: Expressionable; resourceSets?: Expressionable; uniqueIdentifier?: Expressionable; } export interface EnvironmentSettingProperties { configurationState?: Expressionable<('NotApplicable' | 'Completed')>; description?: Expressionable; provisioningState?: Expressionable; resourceSettings: Expressionable; title?: Expressionable; uniqueIdentifier?: Expressionable; } export interface GalleryImageProperties { isEnabled?: Expressionable; isOverride?: Expressionable; isPlanAuthorized?: Expressionable; provisioningState?: Expressionable; uniqueIdentifier?: Expressionable; } export interface LabAccountProperties { enabledRegionSelection?: Expressionable; provisioningState?: Expressionable; uniqueIdentifier?: Expressionable; } export interface LabProperties { maxUsersInLab?: Expressionable; provisioningState?: Expressionable; uniqueIdentifier?: Expressionable; usageQuota?: Expressionable; userAccessMode?: Expressionable<('Restricted' | 'Open')>; } export interface ReferenceVm { password?: Expressionable; userName: Expressionable; } export interface ResourceSet { resourceSettingId?: Expressionable; vmResourceId?: Expressionable; } export interface ResourceSettings { galleryImageResourceId?: Expressionable; referenceVm: Expressionable; size?: Expressionable<('Basic' | 'Standard' | 'Performance')>; } export interface UserProperties { provisioningState?: Expressionable; uniqueIdentifier?: Expressionable; } export declare namespace labaccounts { interface AdditionalProps { tags?: Expressionable; } type LabaccountsResource = ResourceDefinition; function create(name: Expressionable, properties: LabAccountProperties, location?: Expressionable, tags?: Expressionable): LabaccountsResource; } export declare namespace labaccounts { namespace galleryimages { interface AdditionalProps { tags?: Expressionable; } type GalleryimagesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: GalleryImageProperties, location?: Expressionable, tags?: Expressionable): GalleryimagesResource; } } export declare namespace labaccounts { namespace labs { interface AdditionalProps { tags?: Expressionable; } type LabsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: LabProperties, location?: Expressionable, tags?: Expressionable): LabsResource; } } export declare namespace labaccounts { namespace labs { namespace environmentsettings { interface AdditionalProps { tags?: Expressionable; } type EnvironmentsettingsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: EnvironmentSettingProperties, location?: Expressionable, tags?: Expressionable): EnvironmentsettingsResource; } } } export declare namespace labaccounts { namespace labs { namespace environmentsettings { namespace environments { interface AdditionalProps { tags?: Expressionable; } type EnvironmentsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable, Expressionable], properties: EnvironmentProperties, location?: Expressionable, tags?: Expressionable): EnvironmentsResource; } } } } export declare namespace labaccounts { namespace labs { namespace users { interface AdditionalProps { tags?: Expressionable; } type UsersResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: UserProperties, location?: Expressionable, tags?: Expressionable): UsersResource; } } }