import { Expressionable, ResourceDefinition } from 'arm-templator'; export interface Resource { name?: Expressionable; type?: Expressionable; } export interface Kind { kind?: Expressionable; } export interface Location { location?: Expressionable; } export interface JitNetworkAccessPoliciesList { value?: Expressionable; nextLink?: Expressionable; } export interface JitNetworkAccessPolicy { properties: Expressionable; } export interface JitNetworkAccessPolicyProperties { virtualMachines: Expressionable; requests?: Expressionable; provisioningState?: Expressionable; } export interface JitNetworkAccessPolicyVirtualMachine { id: Expressionable; ports: Expressionable; } export interface JitNetworkAccessPortRule { number: Expressionable; protocol: Expressionable<('TCP' | 'UDP' | '*')>; allowedSourceAddressPrefix?: Expressionable; allowedSourceAddressPrefixes?: Expressionable; maxRequestAccessDuration: Expressionable; } export interface JitNetworkAccessRequest { virtualMachines: Expressionable; startTimeUtc: Expressionable; requestor: Expressionable; } export interface JitNetworkAccessRequestVirtualMachine { id: Expressionable; ports: Expressionable; } export interface JitNetworkAccessRequestPort { number: Expressionable; allowedSourceAddressPrefix?: Expressionable; allowedSourceAddressPrefixes?: Expressionable; endTimeUtc: Expressionable; status: Expressionable<('Revoked' | 'Initiated')>; statusReason: Expressionable<('Expired' | 'UserRequested' | 'NewerRequestInitiated')>; } export interface PortNumber { } export declare namespace locations { namespace jitNetworkAccessPolicies { interface AdditionalProps { kind: Expressionable<('Basic')>; } type JitNetworkAccessPoliciesResource = ResourceDefinition; function create(name: [Expressionable, Expressionable], properties: JitNetworkAccessPolicyProperties, kind: Expressionable<('Basic')>): JitNetworkAccessPoliciesResource; } }