import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface Action { compatibilityLevel?: Expressionable; requiresPreprocessing?: Expressionable; sqlExpression?: Expressionable; } export interface ArmDisasterRecoveryProperties { alternateName?: Expressionable; partnerNamespace?: Expressionable; } export interface CorrelationFilter { contentType?: Expressionable; correlationId?: Expressionable; label?: Expressionable; messageId?: Expressionable; properties?: Expressionable; replyTo?: Expressionable; replyToSessionId?: Expressionable; requiresPreprocessing?: Expressionable; sessionId?: Expressionable; to?: Expressionable; } export interface MigrationConfigPropertiesProperties { postMigrationName: Expressionable; targetNamespace: Expressionable; } 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 Ruleproperties { action?: Expressionable; correlationFilter?: Expressionable; filterType?: Expressionable<('SqlFilter' | 'CorrelationFilter')>; sqlFilter?: Expressionable; } export interface SBAuthorizationRuleProperties { rights: Expressionable<('Manage' | 'Send' | 'Listen')[]>; } export interface SBNamespaceProperties { } export interface SBQueueProperties { autoDeleteOnIdle?: Expressionable; deadLetteringOnMessageExpiration?: Expressionable; defaultMessageTimeToLive?: Expressionable; duplicateDetectionHistoryTimeWindow?: Expressionable; enableBatchedOperations?: Expressionable; enableExpress?: Expressionable; enablePartitioning?: Expressionable; forwardDeadLetteredMessagesTo?: Expressionable; forwardTo?: Expressionable; lockDuration?: Expressionable; maxDeliveryCount?: Expressionable; maxSizeInMegabytes?: Expressionable; requiresDuplicateDetection?: Expressionable; requiresSession?: Expressionable; status?: Expressionable<('Active' | 'Disabled' | 'Restoring' | 'SendDisabled' | 'ReceiveDisabled' | 'Creating' | 'Deleting' | 'Renaming' | 'Unknown')>; } export interface SBSku { capacity?: Expressionable; name: Expressionable<('Basic' | 'Standard' | 'Premium')>; tier?: Expressionable<('Basic' | 'Standard' | 'Premium')>; } export interface SBSubscriptionProperties { autoDeleteOnIdle?: Expressionable; deadLetteringOnFilterEvaluationExceptions?: Expressionable; deadLetteringOnMessageExpiration?: Expressionable; defaultMessageTimeToLive?: Expressionable; duplicateDetectionHistoryTimeWindow?: Expressionable; enableBatchedOperations?: Expressionable; forwardDeadLetteredMessagesTo?: Expressionable; forwardTo?: Expressionable; lockDuration?: Expressionable; maxDeliveryCount?: Expressionable; requiresSession?: Expressionable; status?: Expressionable<('Active' | 'Disabled' | 'Restoring' | 'SendDisabled' | 'ReceiveDisabled' | 'Creating' | 'Deleting' | 'Renaming' | 'Unknown')>; } export interface SBTopicProperties { autoDeleteOnIdle?: Expressionable; defaultMessageTimeToLive?: Expressionable; duplicateDetectionHistoryTimeWindow?: Expressionable; enableBatchedOperations?: Expressionable; enableExpress?: Expressionable; enablePartitioning?: Expressionable; maxSizeInMegabytes?: Expressionable; requiresDuplicateDetection?: Expressionable; status?: Expressionable<('Active' | 'Disabled' | 'Restoring' | 'SendDisabled' | 'ReceiveDisabled' | 'Creating' | 'Deleting' | 'Renaming' | 'Unknown')>; supportOrdering?: Expressionable; } export interface SqlFilter { compatibilityLevel?: Expressionable; requiresPreprocessing?: Expressionable; sqlExpression?: Expressionable; } export interface Subnet { id: Expressionable; } export declare namespace namespaces { interface AdditionalProps { sku?: Expressionable; tags?: Expressionable; } type NamespacesResource = ResourceDefinition; function create(name: Expressionable, properties: SBNamespaceProperties, location: Expressionable, sku?: Expressionable, tags?: Expressionable): NamespacesResource; } export declare namespace namespaces { namespace AuthorizationRules { type AuthorizationRulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: SBAuthorizationRuleProperties): AuthorizationRulesResource; } } export declare namespace namespaces { namespace disasterRecoveryConfigs { type DisasterRecoveryConfigsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: ArmDisasterRecoveryProperties): DisasterRecoveryConfigsResource; } } export declare namespace namespaces { namespace migrationConfigurations { type MigrationConfigurationsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: MigrationConfigPropertiesProperties): MigrationConfigurationsResource; } } export declare namespace namespaces { namespace networkRuleSets { type NetworkRuleSetsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: NetworkRuleSetProperties): NetworkRuleSetsResource; } } export declare namespace namespaces { namespace queues { type QueuesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: SBQueueProperties): QueuesResource; } } export declare namespace namespaces { namespace queues { namespace authorizationRules { type AuthorizationRulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: SBAuthorizationRuleProperties): AuthorizationRulesResource; } } } export declare namespace namespaces { namespace topics { type TopicsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: SBTopicProperties): TopicsResource; } } export declare namespace namespaces { namespace topics { namespace authorizationRules { type AuthorizationRulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: SBAuthorizationRuleProperties): AuthorizationRulesResource; } } } export declare namespace namespaces { namespace topics { namespace subscriptions { type SubscriptionsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable], properties: SBSubscriptionProperties): SubscriptionsResource; } } } export declare namespace namespaces { namespace topics { namespace subscriptions { namespace rules { type RulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable, Expressionable, Expressionable], properties: Ruleproperties): RulesResource; } } } }