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 { regions?: Expressionable; source?: Expressionable; scaleTier?: Expressionable<('S30' | 'S100')>; excludeFromLatest?: Expressionable; endOfLifeDate?: Expressionable; } 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 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; } } }