import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface Disallowed { diskTypes?: Expressionable; } export interface GalleryArtifactSource { managedImage: Expressionable; } export interface GalleryIdentifier { } export interface GalleryImageIdentifier { publisher: Expressionable; offer: Expressionable; sku: Expressionable; } export interface GalleryImageProperties { description?: Expressionable; eula?: Expressionable; privacyStatementUri?: Expressionable; releaseNoteUri?: Expressionable; osType: Expressionable<('Windows' | 'Linux')>; osState: Expressionable<('Generalized' | 'Specialized')>; endOfLifeDate?: Expressionable; identifier: Expressionable; recommended?: Expressionable; disallowed?: Expressionable; purchasePlan?: Expressionable; } export interface GalleryImageVersionProperties { publishingProfile: Expressionable; } export interface GalleryImageVersionPublishingProfile { targetRegions?: Expressionable; source: Expressionable; replicaCount?: Expressionable; excludeFromLatest?: Expressionable; endOfLifeDate?: Expressionable; storageAccountType?: Expressionable<('Standard_LRS' | 'Standard_ZRS')>; } export interface GalleryProperties { description?: Expressionable; identifier?: Expressionable; } export interface ImagePurchasePlan { name?: Expressionable; publisher?: Expressionable; product?: Expressionable; } export interface ManagedArtifact { id: Expressionable; } export interface RecommendedMachineConfiguration { vCPUs?: Expressionable; memory?: Expressionable; } export interface ResourceRange { min?: Expressionable; max?: Expressionable; } export interface TargetRegion { name: Expressionable; regionalReplicaCount?: Expressionable; storageAccountType?: Expressionable<('Standard_LRS' | 'Standard_ZRS')>; } export declare namespace galleries { type GalleriesResource = ResourceDefinition; function create(name: Expressionable, properties: GalleryProperties, location: Expressionable): GalleriesResource; } export declare namespace galleries { namespace images { type ImagesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: GalleryImageProperties, location: Expressionable): ImagesResource; } } export declare namespace galleries { namespace images { namespace versions { type VersionsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: GalleryImageVersionProperties, location: Expressionable): VersionsResource; } } }