import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface ArmDisasterRecoveryProperties { alternateName?: Expressionable; partnerNamespace?: Expressionable; } export interface AuthorizationRuleProperties { rights: Expressionable<('Manage' | 'Send' | 'Listen')[]>; } export interface CaptureDescription { destination?: Expressionable; enabled?: Expressionable; encoding?: Expressionable<('Avro' | 'AvroDeflate')>; intervalInSeconds?: Expressionable; sizeLimitInBytes?: Expressionable; skipEmptyArchives?: Expressionable; } export interface ConsumerGroupProperties { userMetadata?: Expressionable; } export interface Destination { name?: Expressionable; properties?: Expressionable; } export interface DestinationProperties { archiveNameFormat?: Expressionable; blobContainer?: Expressionable; storageAccountResourceId?: Expressionable; } export interface EHNamespaceProperties { isAutoInflateEnabled?: Expressionable; kafkaEnabled?: Expressionable; maximumThroughputUnits?: Expressionable; } export interface EventhubProperties { captureDescription?: Expressionable; messageRetentionInDays?: Expressionable; partitionCount?: Expressionable; status?: Expressionable<('Active' | 'Disabled' | 'Restoring' | 'SendDisabled' | 'ReceiveDisabled' | 'Creating' | 'Deleting' | 'Renaming' | 'Unknown')>; } export interface NetworkRuleSetProperties { defaultAction?: Expressionable<('Allow' | 'Deny')>; ipRules?: Expressionable; virtualNetworkRules?: Expressionable; } export interface NWRuleSetIpRules { action?: Expressionable<('Allow')>; ipMask?: Expressionable; } export interface NWRuleSetVirtualNetworkRules { ignoreMissingVnetServiceEndpoint?: Expressionable; subnet?: Expressionable; } export interface Sku { capacity?: Expressionable; name: Expressionable<('Basic' | 'Standard')>; tier?: Expressionable<('Basic' | 'Standard')>; } export interface Subnet { id: Expressionable; } export declare namespace namespaces { interface AdditionalProps { sku?: Expressionable; tags?: Expressionable; } type NamespacesResource = ResourceDefinition; function create(name: Expressionable, properties: EHNamespaceProperties, location?: Expressionable, sku?: Expressionable, tags?: Expressionable): NamespacesResource; } export declare namespace namespaces { namespace AuthorizationRules { type AuthorizationRulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: AuthorizationRuleProperties): AuthorizationRulesResource; } } export declare namespace namespaces { namespace disasterRecoveryConfigs { type DisasterRecoveryConfigsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: ArmDisasterRecoveryProperties): DisasterRecoveryConfigsResource; } } export declare namespace namespaces { namespace eventhubs { type EventhubsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: EventhubProperties): EventhubsResource; } } export declare namespace namespaces { namespace eventhubs { namespace authorizationRules { type AuthorizationRulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: AuthorizationRuleProperties): AuthorizationRulesResource; } } } export declare namespace namespaces { namespace eventhubs { namespace consumergroups { type ConsumergroupsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: ConsumerGroupProperties): ConsumergroupsResource; } } } export declare namespace namespaces { namespace networkRuleSets { type NetworkRuleSetsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: NetworkRuleSetProperties): NetworkRuleSetsResource; } }