import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface ApiDefinitionInfo { url?: Expressionable; } export interface AutoHealActions { actionType?: Expressionable<('Recycle' | 'LogEvent' | 'CustomAction')>; customAction?: Expressionable; minProcessExecutionTime?: Expressionable; } export interface AutoHealCustomAction { exe?: Expressionable; parameters?: Expressionable; } export interface AutoHealRules { triggers?: Expressionable; actions?: Expressionable; } export interface AutoHealTriggers { requests?: Expressionable; privateBytesInKB?: Expressionable; statusCodes?: Expressionable; slowRequests?: Expressionable; } export interface CloningInfo { correlationId?: Expressionable; overwrite?: Expressionable; cloneCustomHostNames?: Expressionable; cloneSourceControl?: Expressionable; sourceWebAppId: Expressionable; hostingEnvironment?: Expressionable; configureLoadBalancing?: Expressionable; trafficManagerProfileId?: Expressionable; trafficManagerProfileName?: Expressionable; } export interface ConnectionString_properties { value?: Expressionable; type?: Expressionable<('MySql' | 'SQLServer' | 'SQLAzure' | 'Custom' | 'NotificationHub' | 'ServiceBus' | 'EventHub' | 'ApiHub' | 'DocDb' | 'RedisCache')>; } export interface ConnStringInfo { name?: Expressionable; connectionString?: Expressionable; type?: Expressionable<('MySql' | 'SQLServer' | 'SQLAzure' | 'Custom' | 'NotificationHub' | 'ServiceBus' | 'EventHub' | 'ApiHub' | 'DocDb' | 'RedisCache')>; } export interface CorsSettings { allowedOrigins?: Expressionable; } export interface Deployment_properties { id?: Expressionable; status?: Expressionable; message?: Expressionable; author?: Expressionable; deployer?: Expressionable; author_email?: Expressionable; start_time?: Expressionable; end_time?: Expressionable; active?: Expressionable; details?: Expressionable; } export interface Experiments { rampUpRules?: Expressionable; } export interface HandlerMapping { extension?: Expressionable; scriptProcessor?: Expressionable; arguments?: Expressionable; } export interface HostingEnvironmentProfile { id?: Expressionable; } export interface HostNameBinding_properties { name?: Expressionable; siteName?: Expressionable; domainId?: Expressionable; azureResourceName?: Expressionable; azureResourceType?: Expressionable<('Website' | 'TrafficManager')>; customHostNameDnsRecordType?: Expressionable<('CName' | 'A')>; hostNameType?: Expressionable<('Verified' | 'Managed')>; sslState?: Expressionable<('Disabled' | 'SniEnabled' | 'IpBasedEnabled')>; thumbprint?: Expressionable; virtualIP?: Expressionable; } export interface HostNameSslState { name?: Expressionable; sslState?: Expressionable<('Disabled' | 'SniEnabled' | 'IpBasedEnabled')>; virtualIP?: Expressionable; thumbprint?: Expressionable; toUpdate?: Expressionable; hostType?: Expressionable<('Standard' | 'Repository')>; } export interface HybridConnection_properties { serviceBusNamespace?: Expressionable; relayName?: Expressionable; relayArmUri?: Expressionable; hostname?: Expressionable; port?: Expressionable; sendKeyName?: Expressionable; sendKeyValue?: Expressionable; } export interface Identifier_properties { id?: Expressionable; } export interface IpSecurityRestriction { ipAddress: Expressionable; subnetMask?: Expressionable; } export interface NameValuePair { name?: Expressionable; value?: Expressionable; } export interface PremierAddOn_properties { sku?: Expressionable; product?: Expressionable; vendor?: Expressionable; name?: Expressionable; location?: Expressionable; marketplacePublisher?: Expressionable; marketplaceOffer?: Expressionable; } export interface PublicCertificate_properties { blob?: Expressionable; publicCertificateLocation?: Expressionable<('CurrentUserMy' | 'LocalMachineMy' | 'Unknown')>; } export interface PushSettings { isPushEnabled: Expressionable; tagWhitelistJson?: Expressionable; tagsRequiringAuth?: Expressionable; dynamicTagsJson?: Expressionable; } export interface RampUpRule { actionHostName?: Expressionable; reroutePercentage?: Expressionable; changeStep?: Expressionable; changeIntervalInMinutes?: Expressionable; minReroutePercentage?: Expressionable; maxReroutePercentage?: Expressionable; changeDecisionCallbackUrl?: Expressionable; name?: Expressionable; } export interface RelayServiceConnectionEntity_properties { entityName?: Expressionable; entityConnectionString?: Expressionable; resourceType?: Expressionable; resourceConnectionString?: Expressionable; hostname?: Expressionable; port?: Expressionable; biztalkUri?: Expressionable; } export interface RequestsBasedTrigger { count?: Expressionable; timeInterval?: Expressionable; } export interface Site_properties { enabled?: Expressionable; hostNameSslStates?: Expressionable; serverFarmId?: Expressionable; reserved?: Expressionable; siteConfig?: Expressionable; scmSiteAlsoStopped?: Expressionable<(false)>; hostingEnvironmentProfile?: Expressionable; microService?: Expressionable<('false')>; gatewaySiteName?: Expressionable; clientAffinityEnabled?: Expressionable; clientCertEnabled?: Expressionable; hostNamesDisabled?: Expressionable; containerSize?: Expressionable; dailyMemoryTimeQuota?: Expressionable; cloningInfo?: Expressionable; httpsOnly?: Expressionable; } export interface SiteConfig { numberOfWorkers?: Expressionable; defaultDocuments?: Expressionable; netFrameworkVersion?: Expressionable<('v4.6')>; phpVersion?: Expressionable; pythonVersion?: Expressionable; nodeVersion?: Expressionable; linuxFxVersion?: Expressionable; requestTracingEnabled?: Expressionable; requestTracingExpirationTime?: Expressionable; remoteDebuggingEnabled?: Expressionable; remoteDebuggingVersion?: Expressionable; httpLoggingEnabled?: Expressionable; logsDirectorySizeLimit?: Expressionable; detailedErrorLoggingEnabled?: Expressionable; publishingUsername?: Expressionable; appSettings?: Expressionable; connectionStrings?: Expressionable; handlerMappings?: Expressionable; documentRoot?: Expressionable; scmType?: Expressionable<('None' | 'Dropbox' | 'Tfs' | 'LocalGit' | 'GitHub' | 'CodePlexGit' | 'CodePlexHg' | 'BitbucketGit' | 'BitbucketHg' | 'ExternalGit' | 'ExternalHg' | 'OneDrive' | 'VSO')>; use32BitWorkerProcess?: Expressionable; webSocketsEnabled?: Expressionable; alwaysOn?: Expressionable; javaVersion?: Expressionable; javaContainer?: Expressionable; javaContainerVersion?: Expressionable; appCommandLine?: Expressionable; managedPipelineMode?: Expressionable<('Integrated' | 'Classic')>; virtualApplications?: Expressionable; loadBalancing?: Expressionable<('WeightedRoundRobin' | 'LeastRequests' | 'LeastResponseTime' | 'WeightedTotalTraffic' | 'RequestHash')>; experiments?: Expressionable; limits?: Expressionable; autoHealEnabled?: Expressionable; autoHealRules?: Expressionable; tracingOptions?: Expressionable; vnetName?: Expressionable; cors?: Expressionable; push?: Expressionable; apiDefinition?: Expressionable; autoSwapSlotName?: Expressionable; localMySqlEnabled?: Expressionable<(false)>; ipSecurityRestrictions?: Expressionable; } export interface SourceControl { repoUrl?: Expressionable; branch?: Expressionable; isManualIntegration?: Expressionable; deploymentRollbackEnabled?: Expressionable; isMercurial?: Expressionable; } export interface SiteLimits { maxPercentageCpu?: Expressionable; maxMemoryInMb?: Expressionable; maxDiskSizeInMb?: Expressionable; } export interface SlowRequestsBasedTrigger { timeTaken?: Expressionable; count?: Expressionable; timeInterval?: Expressionable; } export interface StatusCodesBasedTrigger { status?: Expressionable; subStatus?: Expressionable; win32Status?: Expressionable; count?: Expressionable; timeInterval?: Expressionable; } export interface VirtualApplication { virtualPath?: Expressionable; physicalPath?: Expressionable; preloadEnabled?: Expressionable; virtualDirectories?: Expressionable; } export interface VirtualDirectory { virtualPath?: Expressionable; physicalPath?: Expressionable; } export interface VnetGateway_properties { vnetName?: Expressionable; vpnPackageUri?: Expressionable; } export declare namespace sites { type SitesResource = ResourceDefinition; function create(name: Expressionable, properties: Site_properties): SitesResource; } export declare namespace sites { namespace config { type ConfigResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: SiteConfig): ConfigResource; } } export declare namespace sites { namespace deployments { type DeploymentsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: Deployment_properties): DeploymentsResource; } } export declare namespace sites { namespace domainOwnershipIdentifiers { type DomainOwnershipIdentifiersResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: Identifier_properties): DomainOwnershipIdentifiersResource; } } export declare namespace sites { namespace hostNameBindings { type HostNameBindingsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: HostNameBinding_properties): HostNameBindingsResource; } } export declare namespace sites { namespace hybridconnection { type HybridconnectionResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: RelayServiceConnectionEntity_properties): HybridconnectionResource; } } export declare namespace sites { namespace hybridConnectionNamespaces { namespace relays { type RelaysResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: HybridConnection_properties): RelaysResource; } } } export declare namespace sites { namespace instances { namespace deployments { type DeploymentsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: Deployment_properties): DeploymentsResource; } } } export declare namespace sites { namespace premieraddons { type PremieraddonsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: PremierAddOn_properties): PremieraddonsResource; } } export declare namespace sites { namespace publiccertificates { type PubliccertificatesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: PublicCertificate_properties): PubliccertificatesResource; } } export declare namespace sites { namespace sourcecontrols { type SourcecontrolsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: SourceControl): SourcecontrolsResource; } } export declare namespace sites { namespace slots { type SlotsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: Site_properties): SlotsResource; } } export declare namespace sites { namespace slots { namespace config { type ConfigResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: SiteConfig): ConfigResource; } } } export declare namespace sites { namespace slots { namespace deployments { type DeploymentsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: Deployment_properties): DeploymentsResource; } } } export declare namespace sites { namespace slots { namespace domainOwnershipIdentifiers { type DomainOwnershipIdentifiersResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: Identifier_properties): DomainOwnershipIdentifiersResource; } } } export declare namespace sites { namespace slots { namespace hostNameBindings { type HostNameBindingsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: HostNameBinding_properties): HostNameBindingsResource; } } } export declare namespace sites { namespace slots { namespace hybridconnection { type HybridconnectionResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: RelayServiceConnectionEntity_properties): HybridconnectionResource; } } } export declare namespace sites { namespace slots { namespace hybridConnectionNamespaces { namespace relays { type RelaysResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable, Expressionable], properties: HybridConnection_properties): RelaysResource; } } } } export declare namespace sites { namespace slots { namespace instances { namespace deployments { type DeploymentsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable, Expressionable], properties: Deployment_properties): DeploymentsResource; } } } } export declare namespace sites { namespace slots { namespace premieraddons { type PremieraddonsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: PremierAddOn_properties): PremieraddonsResource; } } } export declare namespace sites { namespace slots { namespace publiccertificates { type PubliccertificatesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: PublicCertificate_properties): PubliccertificatesResource; } } } export declare namespace sites { namespace slots { namespace virtualNetworkConnections { type VirtualNetworkConnectionsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: any): VirtualNetworkConnectionsResource; } } } export declare namespace sites { namespace slots { namespace virtualNetworkConnections { namespace gateways { type GatewaysResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable, Expressionable], properties: VnetGateway_properties): GatewaysResource; } } } } export declare namespace sites { namespace slots { namespace sourcecontrols { type SourcecontrolsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: SourceControl): SourcecontrolsResource; } } } export declare namespace sites { namespace virtualNetworkConnections { type VirtualNetworkConnectionsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: any): VirtualNetworkConnectionsResource; } } export declare namespace sites { namespace virtualNetworkConnections { namespace gateways { type GatewaysResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: VnetGateway_properties): GatewaysResource; } } }