import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface EHNamespaceProperties { clusterArmId?: Expressionable; encryption?: Expressionable; identity?: Expressionable; isAutoInflateEnabled?: Expressionable; kafkaEnabled?: Expressionable; maximumThroughputUnits?: Expressionable; zoneRedundant?: Expressionable; } export interface Encryption { keySource?: Expressionable<('Microsoft.KeyVault')>; keyVaultProperties?: Expressionable; } export interface Identity { principalId?: Expressionable; tenantId?: Expressionable; type?: Expressionable<('SystemAssigned')>; } export interface IpFilterRuleProperties { action?: Expressionable<('Accept' | 'Reject')>; filterName?: Expressionable; ipMask?: Expressionable; } export interface KeyVaultProperties { keyName?: Expressionable; keyVaultUri?: 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 Sku { capacity?: Expressionable; name: Expressionable<('Dedicated' | 'Basic' | 'Standard')>; tier?: Expressionable<('Basic' | 'Standard')>; } export interface Subnet { id?: Expressionable; } export interface VirtualNetworkRuleProperties { virtualNetworkSubnetId?: Expressionable; } export declare namespace clusters { type ClustersResource = ResourceDefinition; function create(name: Expressionable, properties: any): ClustersResource; } 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 ipfilterrules { type IpfilterrulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: IpFilterRuleProperties): IpfilterrulesResource; } } export declare namespace namespaces { namespace networkRuleSets { type NetworkRuleSetsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: NetworkRuleSetProperties): NetworkRuleSetsResource; } } export declare namespace namespaces { namespace virtualnetworkrules { type VirtualnetworkrulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: VirtualNetworkRuleProperties): VirtualnetworkrulesResource; } }