import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface AddDataLakeStoreProperties { suffix?: Expressionable; } export interface AddDataLakeStoreWithAccountParameters { name: Expressionable; properties?: Expressionable; } export interface AddStorageAccountProperties { accessKey: Expressionable; suffix?: Expressionable; } export interface AddStorageAccountWithAccountParameters { name: Expressionable; properties: Expressionable; } export interface CreateComputePolicyWithAccountParameters { name: Expressionable; properties: Expressionable; } export interface CreateDataLakeAnalyticsAccountProperties { computePolicies?: Expressionable; dataLakeStoreAccounts: Expressionable; defaultDataLakeStoreAccount: Expressionable; firewallAllowAzureIps?: Expressionable<('Enabled' | 'Disabled')>; firewallRules?: Expressionable; firewallState?: Expressionable<('Enabled' | 'Disabled')>; maxDegreeOfParallelism?: Expressionable; maxDegreeOfParallelismPerJob?: Expressionable; maxJobCount?: Expressionable; minPriorityPerJob?: Expressionable; newTier?: Expressionable<('Consumption' | 'Commitment_100AUHours' | 'Commitment_500AUHours' | 'Commitment_1000AUHours' | 'Commitment_5000AUHours' | 'Commitment_10000AUHours' | 'Commitment_50000AUHours' | 'Commitment_100000AUHours' | 'Commitment_500000AUHours')>; queryStoreRetention?: Expressionable; storageAccounts?: Expressionable; } export interface CreateFirewallRuleWithAccountParameters { name: Expressionable; properties: Expressionable; } export interface CreateOrUpdateComputePolicyProperties { maxDegreeOfParallelismPerJob?: Expressionable; minPriorityPerJob?: Expressionable; objectId: Expressionable; objectType: Expressionable<('User' | 'Group' | 'ServicePrincipal')>; } export interface CreateOrUpdateFirewallRuleProperties { endIpAddress: Expressionable; startIpAddress: Expressionable; } export declare namespace accounts { interface AdditionalProps { tags?: Expressionable; } type AccountsResource = ResourceDefinition; function create(name: Expressionable, properties: CreateDataLakeAnalyticsAccountProperties, location: Expressionable, tags?: Expressionable): AccountsResource; } export declare namespace accounts { namespace computePolicies { type ComputePoliciesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: CreateOrUpdateComputePolicyProperties): ComputePoliciesResource; } } export declare namespace accounts { namespace dataLakeStoreAccounts { type DataLakeStoreAccountsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: AddDataLakeStoreProperties): DataLakeStoreAccountsResource; } } export declare namespace accounts { namespace firewallRules { type FirewallRulesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: CreateOrUpdateFirewallRuleProperties): FirewallRulesResource; } } export declare namespace accounts { namespace storageAccounts { type StorageAccountsResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: AddStorageAccountProperties): StorageAccountsResource; } }