import { ArmResource } from '@yetics/armkit-core' ; import { Construct } from 'constructs' ; schema export class IotHubs extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'IotHubs' , } ) ; } } schema export class IotHubsCertificates extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'IotHubs_certificates' , } ) ; } } schema export class IotHubsEventHubEndpointsConsumerGroups extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'IotHubs_eventHubEndpoints_ConsumerGroups' , } ) ; } } schema export class IotHubsPrivateEndpointConnections extends ArmResource { param scope param name param options public constructor ( scope , name , options ) { super ( scope , name , { ... options , armResourceType : 'iotHubs_privateEndpointConnections' , } ) ; } } schema export interface IotHubsOptions { schema readonly apiVersion ? : MicrosoftDevicesIotHubsApiVersion ; schema readonly etag ? : string ; schema readonly location : string ; schema readonly name : string ; schema readonly properties : IotHubProperties ; schema readonly resources ? : MicrosoftDevicesIotHubsResources [ ] ; schema readonly sku : IotHubSkuInfo ; schema readonly tags ? : MicrosoftDevicesIotHubsTags ; schema readonly type : MicrosoftDevicesIotHubsType ; } schema export interface IotHubsCertificatesOptions { schema readonly apiVersion ? : MicrosoftDevicesIotHubsCertificatesApiVersion ; schema readonly name : MicrosoftDevicesIotHubsCertificatesNamePattern ; schema readonly properties : CertificateProperties ; schema readonly type : MicrosoftDevicesIotHubsCertificatesType ; } schema export interface IotHubsEventHubEndpointsConsumerGroupsOptions { schema readonly apiVersion ? : MicrosoftDevicesIotHubsEventHubEndpointsConsumerGroupsApiVersion ; schema readonly name : string ; schema readonly properties : EventHubConsumerGroupName ; schema readonly type : MicrosoftDevicesIotHubsEventHubEndpointsConsumerGroupsType ; } schema export interface IotHubsPrivateEndpointConnectionsOptions { schema readonly apiVersion ? : MicrosoftDevicesIotHubsPrivateEndpointConnectionsApiVersion ; schema readonly name : string ; schema readonly properties : PrivateEndpointConnectionProperties ; schema readonly type : MicrosoftDevicesIotHubsPrivateEndpointConnectionsType ; } export enum MicrosoftDevicesIotHubsApiVersion { "MicrosoftDevicesIotHubsApiVersion_2020_08_31" = '2020-08-31' } schema export interface IotHubProperties { schema readonly authorizationPolicies ? : SharedAccessSignatureAuthorizationRule [ ] ; schema readonly cloudToDevice ? : CloudToDeviceProperties ; schema readonly comments ? : string ; schema readonly enableFileUploadNotifications ? : boolean ; schema readonly eventHubEndpoints ? : IotHubPropertiesEventHubEndpoints ; schema readonly features ? : IotHubPropertiesFeatures ; schema readonly ipFilterRules ? : IpFilterRule [ ] ; schema readonly messagingEndpoints ? : IotHubPropertiesMessagingEndpoints ; schema readonly minTlsVersion ? : string ; schema readonly networkRuleSets ? : NetworkRuleSetProperties ; schema readonly privateEndpointConnections ? : PrivateEndpointConnection [ ] ; schema readonly publicNetworkAccess ? : IotHubPropertiesPublicNetworkAccess ; schema readonly routing ? : RoutingProperties ; schema readonly storageEndpoints ? : IotHubPropertiesStorageEndpoints ; } schema export class MicrosoftDevicesIotHubsResources { public static fromIotHubsCertificatesChildResource ( value ) { return new MicrosoftDevicesIotHubsResources ( value ) ; } public static fromIotHubsPrivateEndpointConnectionsChildResource ( value ) { return new MicrosoftDevicesIotHubsResources ( value ) ; } private constructor ( value ) { Object . defineProperty ( this , 'resolve' , { value : ( ) => value } ) ; } } schema export interface IotHubSkuInfo { schema readonly capacity ? : number ; schema readonly name : IotHubSkuInfoName ; } schema export interface MicrosoftDevicesIotHubsTags { } export enum MicrosoftDevicesIotHubsType { "MicrosoftDevicesIotHubsType_MICROSOFT_DEVICES_IOT_HUBS" = 'Microsoft.Devices/IotHubs' } export enum MicrosoftDevicesIotHubsCertificatesApiVersion { "MicrosoftDevicesIotHubsCertificatesApiVersion_2020_08_31" = '2020-08-31' } schema export class MicrosoftDevicesIotHubsCertificatesNamePattern { public static pattern ( value ) { return value ; } } schema export interface CertificateProperties { schema readonly certificate ? : string ; } export enum MicrosoftDevicesIotHubsCertificatesType { "MicrosoftDevicesIotHubsCertificatesType_MICROSOFT_DEVICES_IOT_HUBS_CERTIFICATES" = 'Microsoft.Devices/IotHubs/certificates' } export enum MicrosoftDevicesIotHubsEventHubEndpointsConsumerGroupsApiVersion { "MicrosoftDevicesIotHubsEventHubEndpointsConsumerGroupsApiVersion_2020_08_31" = '2020-08-31' } schema export interface EventHubConsumerGroupName { schema readonly name ? : string ; } export enum MicrosoftDevicesIotHubsEventHubEndpointsConsumerGroupsType { "MicrosoftDevicesIotHubsEventHubEndpointsConsumerGroupsType_MICROSOFT_DEVICES_IOT_HUBS_EVENT_HUB_ENDPOINTS_CONSUMER_GROUPS" = 'Microsoft.Devices/IotHubs/eventHubEndpoints/ConsumerGroups' } export enum MicrosoftDevicesIotHubsPrivateEndpointConnectionsApiVersion { "MicrosoftDevicesIotHubsPrivateEndpointConnectionsApiVersion_2020_08_31" = '2020-08-31' } schema export interface PrivateEndpointConnectionProperties { schema readonly privateEndpoint ? : PrivateEndpoint ; schema readonly privateLinkServiceConnectionState : PrivateLinkServiceConnectionState ; } export enum MicrosoftDevicesIotHubsPrivateEndpointConnectionsType { "MicrosoftDevicesIotHubsPrivateEndpointConnectionsType_MICROSOFT_DEVICES_IOT_HUBS_PRIVATE_ENDPOINT_CONNECTIONS" = 'Microsoft.Devices/iotHubs/privateEndpointConnections' } schema export interface SharedAccessSignatureAuthorizationRule { schema readonly keyName : string ; schema readonly primaryKey ? : string ; schema readonly rights : SharedAccessSignatureAuthorizationRuleRights ; schema readonly secondaryKey ? : string ; } schema export interface CloudToDeviceProperties { schema readonly defaultTtlAsIso8601 ? : string ; schema readonly feedback ? : FeedbackProperties ; schema readonly maxDeliveryCount ? : number ; } schema export interface IotHubPropertiesEventHubEndpoints { } export enum IotHubPropertiesFeatures { NONE = 'None' , DEVICE_MANAGEMENT = 'DeviceManagement' } schema export interface IpFilterRule { schema readonly action : IpFilterRuleAction ; schema readonly filterName : string ; schema readonly ipMask : string ; } schema export interface IotHubPropertiesMessagingEndpoints { } schema export interface NetworkRuleSetProperties { schema readonly applyToBuiltInEventHubEndpoint : boolean ; schema readonly defaultAction ? : NetworkRuleSetPropertiesDefaultAction ; schema readonly ipRules : NetworkRuleSetIpRule [ ] ; } schema export interface PrivateEndpointConnection { schema readonly properties : PrivateEndpointConnectionProperties ; } export enum IotHubPropertiesPublicNetworkAccess { ENABLED = 'Enabled' , DISABLED = 'Disabled' } schema export interface RoutingProperties { schema readonly endpoints ? : RoutingEndpoints ; schema readonly enrichments ? : EnrichmentProperties [ ] ; schema readonly fallbackRoute ? : FallbackRouteProperties ; schema readonly routes ? : RouteProperties [ ] ; } schema export interface IotHubPropertiesStorageEndpoints { } schema export interface IotHubsCertificatesChildResource { schema readonly apiVersion : IotHubsCertificatesChildResourceApiVersion ; schema readonly name : IotHubsCertificatesChildResourceNamePattern ; schema readonly properties : CertificateProperties ; schema readonly type : IotHubsCertificatesChildResourceType ; } schema export interface IotHubsPrivateEndpointConnectionsChildResource { schema readonly apiVersion : IotHubsPrivateEndpointConnectionsChildResourceApiVersion ; schema readonly name : string ; schema readonly properties : PrivateEndpointConnectionProperties ; schema readonly type : IotHubsPrivateEndpointConnectionsChildResourceType ; } export enum IotHubSkuInfoName { "IotHubSkuInfoName_F1" = 'F1' , "IotHubSkuInfoName_S1" = 'S1' , "IotHubSkuInfoName_S2" = 'S2' , "IotHubSkuInfoName_S3" = 'S3' , "IotHubSkuInfoName_B1" = 'B1' , "IotHubSkuInfoName_B2" = 'B2' , "IotHubSkuInfoName_B3" = 'B3' } schema export interface PrivateEndpoint { } schema export interface PrivateLinkServiceConnectionState { schema readonly actionsRequired ? : string ; schema readonly description : string ; schema readonly status : PrivateLinkServiceConnectionStateStatus ; } export enum SharedAccessSignatureAuthorizationRuleRights { REGISTRY_READ = 'RegistryRead' , REGISTRY_WRITE = 'RegistryWrite' , SERVICE_CONNECT = 'ServiceConnect' , DEVICE_CONNECT = 'DeviceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_READ_REGISTRY_WRITE" = 'RegistryRead, RegistryWrite' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_READ_SERVICE_CONNECT" = 'RegistryRead, ServiceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_READ_DEVICE_CONNECT" = 'RegistryRead, DeviceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_WRITE_SERVICE_CONNECT" = 'RegistryWrite, ServiceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_WRITE_DEVICE_CONNECT" = 'RegistryWrite, DeviceConnect' , "SharedAccessSignatureAuthorizationRuleRights_SERVICE_CONNECT_DEVICE_CONNECT" = 'ServiceConnect, DeviceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_READ_REGISTRY_WRITE_SERVICE_CONNECT" = 'RegistryRead, RegistryWrite, ServiceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_READ_REGISTRY_WRITE_DEVICE_CONNECT" = 'RegistryRead, RegistryWrite, DeviceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_READ_SERVICE_CONNECT_DEVICE_CONNECT" = 'RegistryRead, ServiceConnect, DeviceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_WRITE_SERVICE_CONNECT_DEVICE_CONNECT" = 'RegistryWrite, ServiceConnect, DeviceConnect' , "SharedAccessSignatureAuthorizationRuleRights_REGISTRY_READ_REGISTRY_WRITE_SERVICE_CONNECT_DEVICE_CONNECT" = 'RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect' } schema export interface FeedbackProperties { schema readonly lockDurationAsIso8601 ? : string ; schema readonly maxDeliveryCount ? : number ; schema readonly ttlAsIso8601 ? : string ; } export enum IpFilterRuleAction { ACCEPT = 'Accept' , REJECT = 'Reject' } export enum NetworkRuleSetPropertiesDefaultAction { DENY = 'Deny' , ALLOW = 'Allow' } schema export interface NetworkRuleSetIpRule { schema readonly action ? : NetworkRuleSetIpRuleAction ; schema readonly filterName : string ; schema readonly ipMask : string ; } schema export interface RoutingEndpoints { schema readonly eventHubs ? : RoutingEventHubProperties [ ] ; schema readonly serviceBusQueues ? : RoutingServiceBusQueueEndpointProperties [ ] ; schema readonly serviceBusTopics ? : RoutingServiceBusTopicEndpointProperties [ ] ; schema readonly storageContainers ? : RoutingStorageContainerProperties [ ] ; } schema export interface EnrichmentProperties { schema readonly endpointNames : string [ ] ; schema readonly key : string ; schema readonly value : string ; } schema export interface FallbackRouteProperties { schema readonly condition ? : string ; schema readonly endpointNames : string [ ] ; schema readonly isEnabled : boolean ; schema readonly name ? : string ; schema readonly source : FallbackRoutePropertiesSource ; } schema export interface RouteProperties { schema readonly condition ? : string ; schema readonly endpointNames : string [ ] ; schema readonly isEnabled : boolean ; schema readonly name : RoutePropertiesNamePattern ; schema readonly source : RoutePropertiesSource ; } export enum IotHubsCertificatesChildResourceApiVersion { "IotHubsCertificatesChildResourceApiVersion_2020_08_31" = '2020-08-31' } schema export class IotHubsCertificatesChildResourceNamePattern { public static pattern ( value ) { return value ; } } export enum IotHubsCertificatesChildResourceType { CERTIFICATES = 'certificates' } export enum IotHubsPrivateEndpointConnectionsChildResourceApiVersion { "IotHubsPrivateEndpointConnectionsChildResourceApiVersion_2020_08_31" = '2020-08-31' } export enum IotHubsPrivateEndpointConnectionsChildResourceType { PRIVATE_ENDPOINT_CONNECTIONS = 'privateEndpointConnections' } export enum PrivateLinkServiceConnectionStateStatus { PENDING = 'Pending' , APPROVED = 'Approved' , REJECTED = 'Rejected' , DISCONNECTED = 'Disconnected' } export enum NetworkRuleSetIpRuleAction { ALLOW = 'Allow' } schema export interface RoutingEventHubProperties { schema readonly authenticationType ? : RoutingEventHubPropertiesAuthenticationType ; schema readonly connectionString ? : string ; schema readonly endpointUri ? : string ; schema readonly entityPath ? : string ; schema readonly id ? : string ; schema readonly name : RoutingEventHubPropertiesNamePattern ; schema readonly resourceGroup ? : string ; schema readonly subscriptionId ? : string ; } schema export interface RoutingServiceBusQueueEndpointProperties { schema readonly authenticationType ? : RoutingServiceBusQueueEndpointPropertiesAuthenticationType ; schema readonly connectionString ? : string ; schema readonly endpointUri ? : string ; schema readonly entityPath ? : string ; schema readonly id ? : string ; schema readonly name : RoutingServiceBusQueueEndpointPropertiesNamePattern ; schema readonly resourceGroup ? : string ; schema readonly subscriptionId ? : string ; } schema export interface RoutingServiceBusTopicEndpointProperties { schema readonly authenticationType ? : RoutingServiceBusTopicEndpointPropertiesAuthenticationType ; schema readonly connectionString ? : string ; schema readonly endpointUri ? : string ; schema readonly entityPath ? : string ; schema readonly id ? : string ; schema readonly name : RoutingServiceBusTopicEndpointPropertiesNamePattern ; schema readonly resourceGroup ? : string ; schema readonly subscriptionId ? : string ; } schema export interface RoutingStorageContainerProperties { schema readonly authenticationType ? : RoutingStorageContainerPropertiesAuthenticationType ; schema readonly batchFrequencyInSeconds ? : number ; schema readonly connectionString ? : string ; schema readonly containerName : string ; schema readonly encoding ? : RoutingStorageContainerPropertiesEncoding ; schema readonly endpointUri ? : string ; schema readonly fileNameFormat ? : string ; schema readonly id ? : string ; schema readonly maxChunkSizeInBytes ? : number ; schema readonly name : RoutingStorageContainerPropertiesNamePattern ; schema readonly resourceGroup ? : string ; schema readonly subscriptionId ? : string ; } export enum FallbackRoutePropertiesSource { INVALID = 'Invalid' , DEVICE_MESSAGES = 'DeviceMessages' , TWIN_CHANGE_EVENTS = 'TwinChangeEvents' , DEVICE_LIFECYCLE_EVENTS = 'DeviceLifecycleEvents' , DEVICE_JOB_LIFECYCLE_EVENTS = 'DeviceJobLifecycleEvents' } schema export class RoutePropertiesNamePattern { public static pattern ( value ) { return value ; } } export enum RoutePropertiesSource { INVALID = 'Invalid' , DEVICE_MESSAGES = 'DeviceMessages' , TWIN_CHANGE_EVENTS = 'TwinChangeEvents' , DEVICE_LIFECYCLE_EVENTS = 'DeviceLifecycleEvents' , DEVICE_JOB_LIFECYCLE_EVENTS = 'DeviceJobLifecycleEvents' } export enum RoutingEventHubPropertiesAuthenticationType { KEY_BASED = 'keyBased' , IDENTITY_BASED = 'identityBased' } schema export class RoutingEventHubPropertiesNamePattern { public static pattern ( value ) { return value ; } } export enum RoutingServiceBusQueueEndpointPropertiesAuthenticationType { KEY_BASED = 'keyBased' , IDENTITY_BASED = 'identityBased' } schema export class RoutingServiceBusQueueEndpointPropertiesNamePattern { public static pattern ( value ) { return value ; } } export enum RoutingServiceBusTopicEndpointPropertiesAuthenticationType { KEY_BASED = 'keyBased' , IDENTITY_BASED = 'identityBased' } schema export class RoutingServiceBusTopicEndpointPropertiesNamePattern { public static pattern ( value ) { return value ; } } export enum RoutingStorageContainerPropertiesAuthenticationType { KEY_BASED = 'keyBased' , IDENTITY_BASED = 'identityBased' } export enum RoutingStorageContainerPropertiesEncoding { AVRO = 'Avro' , AVRO_DEFLATE = 'AvroDeflate' , JSON = 'JSON' } schema export class RoutingStorageContainerPropertiesNamePattern { public static pattern ( value ) { return value ; } }