import { ArmResource } from '@yetics/armkit-core' ; import { Construct } from 'constructs' ; schema export class Clusters extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'clusters' , } ) ; } } schema export class ClustersApplications extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'clusters_applications' , } ) ; } } schema export class ClustersApplicationsServices extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'clusters_applications_services' , } ) ; } } schema export class ClustersApplicationTypes extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'clusters_applicationTypes' , } ) ; } } schema export class ClustersApplicationTypesVersions extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'clusters_applicationTypes_versions' , } ) ; } } schema export interface ClustersOptions { schema readonly apiVersion ? : MicrosoftServiceFabricClustersApiVersion ; schema readonly location : string ; schema readonly name : string ; schema readonly properties : ClusterProperties ; schema readonly resources ? : MicrosoftServiceFabricClustersResources [ ] ; schema readonly tags ? : MicrosoftServiceFabricClustersTags ; schema readonly type : MicrosoftServiceFabricClustersType ; } schema export interface ClustersApplicationsOptions { schema readonly apiVersion ? : MicrosoftServiceFabricClustersApplicationsApiVersion ; schema readonly identity ? : ManagedIdentity ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ApplicationResourceProperties ; schema readonly resources ? : ClustersApplicationsServicesChildResource [ ] ; schema readonly tags ? : MicrosoftServiceFabricClustersApplicationsTags ; schema readonly type : MicrosoftServiceFabricClustersApplicationsType ; } schema export interface ClustersApplicationsServicesOptions { schema readonly apiVersion ? : MicrosoftServiceFabricClustersApplicationsServicesApiVersion ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ServiceResourceProperties ; schema readonly tags ? : MicrosoftServiceFabricClustersApplicationsServicesTags ; schema readonly type : MicrosoftServiceFabricClustersApplicationsServicesType ; } schema export interface ClustersApplicationTypesOptions { schema readonly apiVersion ? : MicrosoftServiceFabricClustersApplicationTypesApiVersion ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ApplicationTypeResourceProperties ; schema readonly resources ? : ClustersApplicationTypesVersionsChildResource [ ] ; schema readonly tags ? : MicrosoftServiceFabricClustersApplicationTypesTags ; schema readonly type : MicrosoftServiceFabricClustersApplicationTypesType ; } schema export interface ClustersApplicationTypesVersionsOptions { schema readonly apiVersion ? : MicrosoftServiceFabricClustersApplicationTypesVersionsApiVersion ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ApplicationTypeVersionResourceProperties ; schema readonly tags ? : MicrosoftServiceFabricClustersApplicationTypesVersionsTags ; schema readonly type : MicrosoftServiceFabricClustersApplicationTypesVersionsType ; } export enum MicrosoftServiceFabricClustersApiVersion { "MicrosoftServiceFabricClustersApiVersion_2020_03_01" = '2020-03-01' } schema export interface ClusterProperties { schema readonly addOnFeatures ? : ClusterPropertiesAddOnFeatures [ ] ; schema readonly applicationTypeVersionsCleanupPolicy ? : ApplicationTypeVersionsCleanupPolicy ; schema readonly azureActiveDirectory ? : AzureActiveDirectory ; schema readonly certificate ? : CertificateDescription ; schema readonly certificateCommonNames ? : ServerCertificateCommonNames ; schema readonly clientCertificateCommonNames ? : ClientCertificateCommonName [ ] ; schema readonly clientCertificateThumbprints ? : ClientCertificateThumbprint [ ] ; schema readonly clusterCodeVersion ? : string ; schema readonly diagnosticsStorageAccountConfig ? : DiagnosticsStorageAccountConfig ; schema readonly eventStoreServiceEnabled ? : boolean ; schema readonly fabricSettings ? : SettingsSectionDescription [ ] ; schema readonly managementEndpoint : string ; schema readonly nodeTypes : NodeTypeDescription [ ] ; schema readonly reliabilityLevel ? : ClusterPropertiesReliabilityLevel ; schema readonly reverseProxyCertificate ? : CertificateDescription ; schema readonly reverseProxyCertificateCommonNames ? : ServerCertificateCommonNames ; schema readonly upgradeDescription ? : ClusterUpgradePolicy ; schema readonly upgradeMode ? : ClusterPropertiesUpgradeMode ; schema readonly vmImage ? : string ; } schema export class MicrosoftServiceFabricClustersResources { public static fromClustersApplicationTypesChildResource ( value ) { return new MicrosoftServiceFabricClustersResources ( value ) ; } public static fromClustersApplicationsChildResource ( value ) { return new MicrosoftServiceFabricClustersResources ( value ) ; } private constructor ( value ) { Object . defineProperty ( this , 'resolve' , { value : ( ) => value } ) ; } } schema export interface MicrosoftServiceFabricClustersTags { } export enum MicrosoftServiceFabricClustersType { "MicrosoftServiceFabricClustersType_MICROSOFT_SERVICE_FABRIC_CLUSTERS" = 'Microsoft.ServiceFabric/clusters' } export enum MicrosoftServiceFabricClustersApplicationsApiVersion { "MicrosoftServiceFabricClustersApplicationsApiVersion_2020_03_01" = '2020-03-01' } schema export interface ManagedIdentity { schema readonly type ? : ManagedIdentityType ; schema readonly userAssignedIdentities ? : ManagedIdentityUserAssignedIdentities ; } schema export interface ApplicationResourceProperties { schema readonly managedIdentities ? : ApplicationUserAssignedIdentity [ ] ; schema readonly maximumNodes ? : number ; schema readonly metrics ? : ApplicationMetricDescription [ ] ; schema readonly minimumNodes ? : number ; schema readonly parameters ? : ApplicationResourcePropertiesParameters ; schema readonly removeApplicationCapacity ? : boolean ; schema readonly typeName ? : string ; schema readonly typeVersion ? : string ; schema readonly upgradePolicy ? : ApplicationUpgradePolicy ; } schema export interface ClustersApplicationsServicesChildResource { schema readonly apiVersion : ClustersApplicationsServicesChildResourceApiVersion ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ServiceResourceProperties ; schema readonly tags ? : ClustersApplicationsServicesChildResourceTags ; schema readonly type : ClustersApplicationsServicesChildResourceType ; } schema export interface MicrosoftServiceFabricClustersApplicationsTags { } export enum MicrosoftServiceFabricClustersApplicationsType { "MicrosoftServiceFabricClustersApplicationsType_MICROSOFT_SERVICE_FABRIC_CLUSTERS_APPLICATIONS" = 'Microsoft.ServiceFabric/clusters/applications' } export enum MicrosoftServiceFabricClustersApplicationsServicesApiVersion { "MicrosoftServiceFabricClustersApplicationsServicesApiVersion_2020_03_01" = '2020-03-01' } schema export class ServiceResourceProperties { public static fromStatefulServiceProperties ( value ) { return new ServiceResourceProperties ( value ) ; } public static fromStatelessServiceProperties ( value ) { return new ServiceResourceProperties ( value ) ; } private constructor ( value ) { Object . defineProperty ( this , 'resolve' , { value : ( ) => value } ) ; } } schema export interface MicrosoftServiceFabricClustersApplicationsServicesTags { } export enum MicrosoftServiceFabricClustersApplicationsServicesType { "MicrosoftServiceFabricClustersApplicationsServicesType_MICROSOFT_SERVICE_FABRIC_CLUSTERS_APPLICATIONS_SERVICES" = 'Microsoft.ServiceFabric/clusters/applications/services' } export enum MicrosoftServiceFabricClustersApplicationTypesApiVersion { "MicrosoftServiceFabricClustersApplicationTypesApiVersion_2020_03_01" = '2020-03-01' } schema export interface ApplicationTypeResourceProperties { } schema export interface ClustersApplicationTypesVersionsChildResource { schema readonly apiVersion : ClustersApplicationTypesVersionsChildResourceApiVersion ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ApplicationTypeVersionResourceProperties ; schema readonly tags ? : ClustersApplicationTypesVersionsChildResourceTags ; schema readonly type : ClustersApplicationTypesVersionsChildResourceType ; } schema export interface MicrosoftServiceFabricClustersApplicationTypesTags { } export enum MicrosoftServiceFabricClustersApplicationTypesType { "MicrosoftServiceFabricClustersApplicationTypesType_MICROSOFT_SERVICE_FABRIC_CLUSTERS_APPLICATION_TYPES" = 'Microsoft.ServiceFabric/clusters/applicationTypes' } export enum MicrosoftServiceFabricClustersApplicationTypesVersionsApiVersion { "MicrosoftServiceFabricClustersApplicationTypesVersionsApiVersion_2020_03_01" = '2020-03-01' } schema export interface ApplicationTypeVersionResourceProperties { schema readonly appPackageUrl : string ; } schema export interface MicrosoftServiceFabricClustersApplicationTypesVersionsTags { } export enum MicrosoftServiceFabricClustersApplicationTypesVersionsType { "MicrosoftServiceFabricClustersApplicationTypesVersionsType_MICROSOFT_SERVICE_FABRIC_CLUSTERS_APPLICATION_TYPES_VERSIONS" = 'Microsoft.ServiceFabric/clusters/applicationTypes/versions' } export enum ClusterPropertiesAddOnFeatures { REPAIR_MANAGER = 'RepairManager' , DNS_SERVICE = 'DnsService' , BACKUP_RESTORE_SERVICE = 'BackupRestoreService' , RESOURCE_MONITOR_SERVICE = 'ResourceMonitorService' } schema export interface ApplicationTypeVersionsCleanupPolicy { schema readonly maxUnusedVersionsToKeep : number ; } schema export interface AzureActiveDirectory { schema readonly clientApplication ? : string ; schema readonly clusterApplication ? : string ; schema readonly tenantId ? : string ; } schema export interface CertificateDescription { schema readonly thumbprint : string ; schema readonly thumbprintSecondary ? : string ; schema readonly x509StoreName ? : CertificateDescriptionX509StoreName ; } schema export interface ServerCertificateCommonNames { schema readonly commonNames ? : ServerCertificateCommonName [ ] ; schema readonly x509StoreName ? : ServerCertificateCommonNamesX509StoreName ; } schema export interface ClientCertificateCommonName { schema readonly certificateCommonName : string ; schema readonly certificateIssuerThumbprint : string ; schema readonly isAdmin : boolean ; } schema export interface ClientCertificateThumbprint { schema readonly certificateThumbprint : string ; schema readonly isAdmin : boolean ; } schema export interface DiagnosticsStorageAccountConfig { schema readonly blobEndpoint : string ; schema readonly protectedAccountKeyName : string ; schema readonly protectedAccountKeyName2 ? : string ; schema readonly queueEndpoint : string ; schema readonly storageAccountName : string ; schema readonly tableEndpoint : string ; } schema export interface SettingsSectionDescription { schema readonly name : string ; schema readonly parameters : SettingsParameterDescription [ ] ; } schema export interface NodeTypeDescription { schema readonly applicationPorts ? : EndpointRangeDescription ; schema readonly capacities ? : NodeTypeDescriptionCapacities ; schema readonly clientConnectionEndpointPort : number ; schema readonly durabilityLevel ? : NodeTypeDescriptionDurabilityLevel ; schema readonly ephemeralPorts ? : EndpointRangeDescription ; schema readonly httpGatewayEndpointPort : number ; schema readonly isPrimary : boolean ; schema readonly name : string ; schema readonly placementProperties ? : NodeTypeDescriptionPlacementProperties ; schema readonly reverseProxyEndpointPort ? : number ; schema readonly vmInstanceCount : number ; } export enum ClusterPropertiesReliabilityLevel { NONE = 'None' , BRONZE = 'Bronze' , SILVER = 'Silver' , GOLD = 'Gold' , PLATINUM = 'Platinum' } schema export interface ClusterUpgradePolicy { schema readonly deltaHealthPolicy ? : ClusterUpgradeDeltaHealthPolicy ; schema readonly forceRestart ? : boolean ; schema readonly healthCheckRetryTimeout : string ; schema readonly healthCheckStableDuration : string ; schema readonly healthCheckWaitDuration : string ; schema readonly healthPolicy : ClusterHealthPolicy ; schema readonly upgradeDomainTimeout : string ; schema readonly upgradeReplicaSetCheckTimeout : string ; schema readonly upgradeTimeout : string ; } export enum ClusterPropertiesUpgradeMode { AUTOMATIC = 'Automatic' , MANUAL = 'Manual' } schema export interface ClustersApplicationTypesChildResource { schema readonly apiVersion : ClustersApplicationTypesChildResourceApiVersion ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ApplicationTypeResourceProperties ; schema readonly tags ? : ClustersApplicationTypesChildResourceTags ; schema readonly type : ClustersApplicationTypesChildResourceType ; } schema export interface ClustersApplicationsChildResource { schema readonly apiVersion : ClustersApplicationsChildResourceApiVersion ; schema readonly identity ? : ManagedIdentity ; schema readonly location ? : string ; schema readonly name : string ; schema readonly properties : ApplicationResourceProperties ; schema readonly tags ? : ClustersApplicationsChildResourceTags ; schema readonly type : ClustersApplicationsChildResourceType ; } export enum ManagedIdentityType { SYSTEM_ASSIGNED = 'SystemAssigned' , USER_ASSIGNED = 'UserAssigned' , "ManagedIdentityType_SYSTEM_ASSIGNED_USER_ASSIGNED" = 'SystemAssigned, UserAssigned' , NONE = 'None' } schema export interface ManagedIdentityUserAssignedIdentities { } schema export interface ApplicationUserAssignedIdentity { schema readonly name : string ; schema readonly principalId : string ; } schema export interface ApplicationMetricDescription { schema readonly maximumCapacity ? : number ; schema readonly name ? : string ; schema readonly reservationCapacity ? : number ; schema readonly totalApplicationCapacity ? : number ; } schema export interface ApplicationResourcePropertiesParameters { } schema export interface ApplicationUpgradePolicy { schema readonly applicationHealthPolicy ? : ArmApplicationHealthPolicy ; schema readonly forceRestart ? : boolean ; schema readonly rollingUpgradeMonitoringPolicy ? : ArmRollingUpgradeMonitoringPolicy ; schema readonly upgradeMode ? : ApplicationUpgradePolicyUpgradeMode ; schema readonly upgradeReplicaSetCheckTimeout ? : string ; } export enum ClustersApplicationsServicesChildResourceApiVersion { "ClustersApplicationsServicesChildResourceApiVersion_2020_03_01" = '2020-03-01' } schema export interface ClustersApplicationsServicesChildResourceTags { } export enum ClustersApplicationsServicesChildResourceType { SERVICES = 'services' } schema export interface StatefulServiceProperties { schema readonly hasPersistedState ? : boolean ; schema readonly minReplicaSetSize ? : number ; schema readonly quorumLossWaitDuration ? : Date ; schema readonly replicaRestartWaitDuration ? : Date ; schema readonly serviceKind : StatefulServicePropertiesServiceKind ; schema readonly standByReplicaKeepDuration ? : Date ; schema readonly targetReplicaSetSize ? : number ; } schema export interface StatelessServiceProperties { schema readonly instanceCloseDelayDuration ? : string ; schema readonly instanceCount ? : number ; schema readonly serviceKind : StatelessServicePropertiesServiceKind ; } export enum ClustersApplicationTypesVersionsChildResourceApiVersion { "ClustersApplicationTypesVersionsChildResourceApiVersion_2020_03_01" = '2020-03-01' } schema export interface ClustersApplicationTypesVersionsChildResourceTags { } export enum ClustersApplicationTypesVersionsChildResourceType { VERSIONS = 'versions' } export enum CertificateDescriptionX509StoreName { ADDRESS_BOOK = 'AddressBook' , AUTH_ROOT = 'AuthRoot' , CERTIFICATE_AUTHORITY = 'CertificateAuthority' , DISALLOWED = 'Disallowed' , MY = 'My' , ROOT = 'Root' , TRUSTED_PEOPLE = 'TrustedPeople' , TRUSTED_PUBLISHER = 'TrustedPublisher' } schema export interface ServerCertificateCommonName { schema readonly certificateCommonName : string ; schema readonly certificateIssuerThumbprint : string ; } export enum ServerCertificateCommonNamesX509StoreName { ADDRESS_BOOK = 'AddressBook' , AUTH_ROOT = 'AuthRoot' , CERTIFICATE_AUTHORITY = 'CertificateAuthority' , DISALLOWED = 'Disallowed' , MY = 'My' , ROOT = 'Root' , TRUSTED_PEOPLE = 'TrustedPeople' , TRUSTED_PUBLISHER = 'TrustedPublisher' } schema export interface SettingsParameterDescription { schema readonly name : string ; schema readonly value : string ; } schema export interface EndpointRangeDescription { schema readonly endPort : number ; schema readonly startPort : number ; } schema export interface NodeTypeDescriptionCapacities { } export enum NodeTypeDescriptionDurabilityLevel { BRONZE = 'Bronze' , SILVER = 'Silver' , GOLD = 'Gold' } schema export interface NodeTypeDescriptionPlacementProperties { } schema export interface ClusterUpgradeDeltaHealthPolicy { schema readonly applicationDeltaHealthPolicies ? : ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies ; schema readonly maxPercentDeltaUnhealthyApplications : number ; schema readonly maxPercentDeltaUnhealthyNodes : number ; schema readonly maxPercentUpgradeDomainDeltaUnhealthyNodes : number ; } schema export interface ClusterHealthPolicy { schema readonly applicationHealthPolicies ? : ClusterHealthPolicyApplicationHealthPolicies ; schema readonly maxPercentUnhealthyApplications ? : number ; schema readonly maxPercentUnhealthyNodes ? : number ; } export enum ClustersApplicationTypesChildResourceApiVersion { "ClustersApplicationTypesChildResourceApiVersion_2020_03_01" = '2020-03-01' } schema export interface ClustersApplicationTypesChildResourceTags { } export enum ClustersApplicationTypesChildResourceType { APPLICATION_TYPES = 'applicationTypes' } export enum ClustersApplicationsChildResourceApiVersion { "ClustersApplicationsChildResourceApiVersion_2020_03_01" = '2020-03-01' } schema export interface ClustersApplicationsChildResourceTags { } export enum ClustersApplicationsChildResourceType { APPLICATIONS = 'applications' } schema export interface ArmApplicationHealthPolicy { schema readonly considerWarningAsError ? : boolean ; schema readonly defaultServiceTypeHealthPolicy ? : ArmServiceTypeHealthPolicy ; schema readonly maxPercentUnhealthyDeployedApplications ? : number ; schema readonly serviceTypeHealthPolicyMap ? : ArmApplicationHealthPolicyServiceTypeHealthPolicyMap ; } schema export interface ArmRollingUpgradeMonitoringPolicy { schema readonly failureAction ? : ArmRollingUpgradeMonitoringPolicyFailureAction ; schema readonly healthCheckRetryTimeout ? : string ; schema readonly healthCheckStableDuration ? : string ; schema readonly healthCheckWaitDuration ? : string ; schema readonly upgradeDomainTimeout ? : string ; schema readonly upgradeTimeout ? : string ; } export enum ApplicationUpgradePolicyUpgradeMode { INVALID = 'Invalid' , UNMONITORED_AUTO = 'UnmonitoredAuto' , UNMONITORED_MANUAL = 'UnmonitoredManual' , MONITORED = 'Monitored' } export enum StatefulServicePropertiesServiceKind { STATEFUL = 'Stateful' } export enum StatelessServicePropertiesServiceKind { STATELESS = 'Stateless' } schema export interface ClusterUpgradeDeltaHealthPolicyApplicationDeltaHealthPolicies { } schema export interface ClusterHealthPolicyApplicationHealthPolicies { } schema export interface ArmServiceTypeHealthPolicy { schema readonly maxPercentUnhealthyPartitionsPerService ? : number ; schema readonly maxPercentUnhealthyReplicasPerPartition ? : number ; schema readonly maxPercentUnhealthyServices ? : number ; } schema export interface ArmApplicationHealthPolicyServiceTypeHealthPolicyMap { } export enum ArmRollingUpgradeMonitoringPolicyFailureAction { ROLLBACK = 'Rollback' , MANUAL = 'Manual' }