---azVirtualNetworkGateway:# Mandatory- Name:'string'ResourceGroupName:'string'Location:'string'VNetName:'string'PublicIPName:'string'GatewayType:'string'# ExpressRoute, VPNGatewaySku:'string'VpnGatewayGeneration:'string'VpnType:'string'# PolicyBased, RouteBased# OptionalNatRule:- Name:'string'Type:'string'# Static, DynamicMode:'string'# EgressSnat, IngressSnatInternalMapping:[array]ExternalMapping:[array]ExternalPortRange:[array]InternalPortRange:[array]Diagnostic:- Name:'string'Log:Enabled:'string'# True (D if Category not null), FalseCategory:[array] # Defaults to all if enabledMetric:Enabled:'string'# True (D if MetricCategory not null), FalseCategory:[array] # Defaults to all if enabledTarget:Blob:StorageAccount:'string'ResourceGroupName:'string'# Defaults to RG of resourceSubscription:'string'# Defaults to Sub of resourceStorageKeyType:'string'# Primary, SecondaryRetentionInDays:'string'EventHub:Name:'string'Namespace:'string'ResourceGroupName:'string'# Defaults to RG of resourceSubscription:'string'# Defaults to Sub of resourceSharedAccessPolicy:'string'# RootManageSharedAccessKey (D)LogAnalytics:Workspace:'string'ResourceGroupName:'string'# Defaults to RG of resourceSubscription:'string'# Defaults to Sub of resourceTag:'keyvalue-pairs'Lock:- Name:'string'Level:'string'# CanNotDelete, ReadOnlyNotes:'string'