MICROSOFT.NETWORK

AdminRuleCollections_CreateOrUpdate

valid {
    input.Body.properties.description == STRING
    input.Body.properties.appliesToGroups[_].networkGroupId == STRING
    input.ProviderMetadata.Region == STRING
}

AdminRuleCollections_Delete

valid {
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

AdminRuleCollections_Get

valid {
    input.ProviderMetadata.Region == STRING
}

AdminRuleCollections_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkManagerName == STRING
    input.ReqMap.configurationName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AdminRules_CreateOrUpdate

enum_BaseAdminRuleKind := [ "Custom", "Default" ]

valid {
    input.Body.kind == enum_BaseAdminRuleKind[_]
    input.ProviderMetadata.Region == STRING
}

AdminRules_Delete

valid {
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

AdminRules_Get

valid {
    input.ProviderMetadata.Region == STRING
}

AdminRules_List

valid {
    input.ProviderMetadata.Region == STRING
}

ApplicationGatewayPrivateEndpointConnections_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGatewayPrivateEndpointConnections_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGatewayPrivateEndpointConnections_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGatewayPrivateEndpointConnections_Update

valid {
    input.Body.properties.privateLinkServiceConnectionState.status == STRING
    input.Body.properties.privateLinkServiceConnectionState.description == STRING
    input.Body.properties.privateLinkServiceConnectionState.actionsRequired == STRING
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGatewayPrivateLinkResources_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGatewayWafDynamicManifestsDefault_Get

valid {
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGatewayWafDynamicManifests_Get

valid {
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_BackendHealth

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_BackendHealthOnDemand

enum_ApplicationGatewayProtocol := [ "Http", "Https", "Tcp", "Tls" ]

valid {
    input.Body.protocol == enum_ApplicationGatewayProtocol[_]
    input.Body.host == STRING
    input.Body.path == STRING
    input.Body.timeout == INTEGER
    input.Body.pickHostNameFromBackendHttpSettings == BOOLEAN
    input.Body.match.body == STRING
    input.Body.match.statusCodes[_] == STRING
    input.Body.backendAddressPool.id == STRING
    input.Body.backendHttpSettings.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_CreateOrUpdate

enum_ApplicationGatewayBackendHttpSettingsPropertiesFormatCookieBasedAffinity := [ "Enabled", "Disabled" ]
enum_ApplicationGatewayClientAuthConfigurationVerifyClientRevocation := [ "None", "OCSP" ]
enum_ApplicationGatewayCustomErrorStatusCode := [ "HttpStatus400", "HttpStatus403", "HttpStatus404", "HttpStatus405", "HttpStatus408", "HttpStatus500", "HttpStatus502", "HttpStatus503", "HttpStatus504" ]
enum_ApplicationGatewayLoadDistributionAlgorithmEnum := [ "RoundRobin", "LeastConnections", "IpHash" ]
enum_ApplicationGatewayProtocol := [ "Http", "Https", "Tcp", "Tls" ]
enum_ApplicationGatewayRequestRoutingRulePropertiesFormatRuleType := [ "Basic", "PathBasedRouting" ]
enum_ApplicationGatewayRoutingRulePropertiesFormatRuleType := [ "Basic", "PathBasedRouting" ]
enum_ApplicationGatewaySkuName := [ "Standard_Small", "Standard_Medium", "Standard_Large", "WAF_Medium", "WAF_Large", "Standard_v2", "WAF_v2", "Basic" ]
enum_ApplicationGatewaySkuTier := [ "Standard", "WAF", "Standard_v2", "WAF_v2", "Basic" ]
enum_ApplicationGatewaySslPolicyPolicyType := [ "Predefined", "Custom", "CustomV2" ]
enum_ApplicationGatewayWebApplicationFirewallConfigurationFirewallMode := [ "Detection", "Prevention" ]
enum_CipherSuitesEnum := [ "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_AES_256_GCM_SHA384", "TLS_RSA_WITH_AES_128_GCM_SHA256", "TLS_RSA_WITH_AES_256_CBC_SHA256", "TLS_RSA_WITH_AES_128_CBC_SHA256", "TLS_RSA_WITH_AES_256_CBC_SHA", "TLS_RSA_WITH_AES_128_CBC_SHA", "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", "TLS_RSA_WITH_3DES_EDE_CBC_SHA", "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" ]
enum_IPAllocationMethod := [ "Static", "Dynamic" ]
enum_ManagedServiceIdentityType := [ "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned", "None" ]
enum_PolicyNameEnum := [ "AppGwSslPolicy20150501", "AppGwSslPolicy20170401", "AppGwSslPolicy20170401S", "AppGwSslPolicy20220101", "AppGwSslPolicy20220101S" ]
enum_ProtocolsEnum := [ "TLSv1_0", "TLSv1_1", "TLSv1_2", "TLSv1_3" ]
enum_RedirectTypeEnum := [ "Permanent", "Found", "SeeOther", "Temporary" ]

valid {
    input.Body.properties.sku.name == enum_ApplicationGatewaySkuName[_]
    input.Body.properties.sku.tier == enum_ApplicationGatewaySkuTier[_]
    input.Body.properties.sku.capacity == INTEGER
    input.Body.properties.sslPolicy.disabledSslProtocols[_] == enum_ProtocolsEnum[_]
    input.Body.properties.sslPolicy.policyType == enum_ApplicationGatewaySslPolicyPolicyType[_]
    input.Body.properties.sslPolicy.policyName == enum_PolicyNameEnum[_]
    input.Body.properties.sslPolicy.cipherSuites[_] == enum_CipherSuitesEnum[_]
    input.Body.properties.sslPolicy.minProtocolVersion == enum_ProtocolsEnum[_]
    input.Body.properties.gatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.gatewayIPConfigurations[_].name == STRING
    input.Body.properties.gatewayIPConfigurations[_].id == STRING
    input.Body.properties.authenticationCertificates[_].properties.data == STRING
    input.Body.properties.authenticationCertificates[_].name == STRING
    input.Body.properties.authenticationCertificates[_].id == STRING
    input.Body.properties.trustedRootCertificates[_].properties.data == STRING
    input.Body.properties.trustedRootCertificates[_].properties.keyVaultSecretId == STRING
    input.Body.properties.trustedRootCertificates[_].name == STRING
    input.Body.properties.trustedRootCertificates[_].id == STRING
    input.Body.properties.trustedClientCertificates[_].properties.data == STRING
    input.Body.properties.trustedClientCertificates[_].name == STRING
    input.Body.properties.trustedClientCertificates[_].id == STRING
    input.Body.properties.sslCertificates[_].properties.data == STRING
    input.Body.properties.sslCertificates[_].properties.password == STRING
    input.Body.properties.sslCertificates[_].properties.keyVaultSecretId == STRING
    input.Body.properties.sslCertificates[_].name == STRING
    input.Body.properties.sslCertificates[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.privateLinkConfiguration.id == STRING
    input.Body.properties.frontendIPConfigurations[_].name == STRING
    input.Body.properties.frontendIPConfigurations[_].id == STRING
    input.Body.properties.frontendPorts[_].properties.port == INTEGER
    input.Body.properties.frontendPorts[_].name == STRING
    input.Body.properties.frontendPorts[_].id == STRING
    input.Body.properties.probes[_].properties.protocol == enum_ApplicationGatewayProtocol[_]
    input.Body.properties.probes[_].properties.host == STRING
    input.Body.properties.probes[_].properties.path == STRING
    input.Body.properties.probes[_].properties.interval == INTEGER
    input.Body.properties.probes[_].properties.timeout == INTEGER
    input.Body.properties.probes[_].properties.unhealthyThreshold == INTEGER
    input.Body.properties.probes[_].properties.pickHostNameFromBackendHttpSettings == BOOLEAN
    input.Body.properties.probes[_].properties.pickHostNameFromBackendSettings == BOOLEAN
    input.Body.properties.probes[_].properties.minServers == INTEGER
    input.Body.properties.probes[_].properties.match.body == STRING
    input.Body.properties.probes[_].properties.match.statusCodes[_] == STRING
    input.Body.properties.probes[_].properties.port == INTEGER
    input.Body.properties.probes[_].name == STRING
    input.Body.properties.probes[_].id == STRING
    input.Body.properties.backendAddressPools[_].properties.backendAddresses[_].fqdn == STRING
    input.Body.properties.backendAddressPools[_].properties.backendAddresses[_].ipAddress == STRING
    input.Body.properties.backendAddressPools[_].name == STRING
    input.Body.properties.backendAddressPools[_].id == STRING
    input.Body.properties.backendHttpSettingsCollection[_].properties.port == INTEGER
    input.Body.properties.backendHttpSettingsCollection[_].properties.protocol == enum_ApplicationGatewayProtocol[_]
    input.Body.properties.backendHttpSettingsCollection[_].properties.cookieBasedAffinity == enum_ApplicationGatewayBackendHttpSettingsPropertiesFormatCookieBasedAffinity[_]
    input.Body.properties.backendHttpSettingsCollection[_].properties.requestTimeout == INTEGER
    input.Body.properties.backendHttpSettingsCollection[_].properties.probe.id == STRING
    input.Body.properties.backendHttpSettingsCollection[_].properties.authenticationCertificates[_].id == STRING
    input.Body.properties.backendHttpSettingsCollection[_].properties.trustedRootCertificates[_].id == STRING
    input.Body.properties.backendHttpSettingsCollection[_].properties.connectionDraining.enabled == BOOLEAN
    input.Body.properties.backendHttpSettingsCollection[_].properties.connectionDraining.drainTimeoutInSec == INTEGER
    input.Body.properties.backendHttpSettingsCollection[_].properties.hostName == STRING
    input.Body.properties.backendHttpSettingsCollection[_].properties.pickHostNameFromBackendAddress == BOOLEAN
    input.Body.properties.backendHttpSettingsCollection[_].properties.affinityCookieName == STRING
    input.Body.properties.backendHttpSettingsCollection[_].properties.probeEnabled == BOOLEAN
    input.Body.properties.backendHttpSettingsCollection[_].properties.path == STRING
    input.Body.properties.backendHttpSettingsCollection[_].name == STRING
    input.Body.properties.backendHttpSettingsCollection[_].id == STRING
    input.Body.properties.backendSettingsCollection[_].properties.port == INTEGER
    input.Body.properties.backendSettingsCollection[_].properties.protocol == enum_ApplicationGatewayProtocol[_]
    input.Body.properties.backendSettingsCollection[_].properties.timeout == INTEGER
    input.Body.properties.backendSettingsCollection[_].properties.probe.id == STRING
    input.Body.properties.backendSettingsCollection[_].properties.trustedRootCertificates[_].id == STRING
    input.Body.properties.backendSettingsCollection[_].properties.hostName == STRING
    input.Body.properties.backendSettingsCollection[_].properties.pickHostNameFromBackendAddress == BOOLEAN
    input.Body.properties.backendSettingsCollection[_].name == STRING
    input.Body.properties.backendSettingsCollection[_].id == STRING
    input.Body.properties.httpListeners[_].properties.frontendIPConfiguration.id == STRING
    input.Body.properties.httpListeners[_].properties.frontendPort.id == STRING
    input.Body.properties.httpListeners[_].properties.protocol == enum_ApplicationGatewayProtocol[_]
    input.Body.properties.httpListeners[_].properties.hostName == STRING
    input.Body.properties.httpListeners[_].properties.sslCertificate.id == STRING
    input.Body.properties.httpListeners[_].properties.sslProfile.id == STRING
    input.Body.properties.httpListeners[_].properties.requireServerNameIndication == BOOLEAN
    input.Body.properties.httpListeners[_].properties.customErrorConfigurations[_].statusCode == enum_ApplicationGatewayCustomErrorStatusCode[_]
    input.Body.properties.httpListeners[_].properties.customErrorConfigurations[_].customErrorPageUrl == STRING
    input.Body.properties.httpListeners[_].properties.firewallPolicy.id == STRING
    input.Body.properties.httpListeners[_].properties.hostNames[_] == STRING
    input.Body.properties.httpListeners[_].name == STRING
    input.Body.properties.httpListeners[_].id == STRING
    input.Body.properties.listeners[_].properties.frontendIPConfiguration.id == STRING
    input.Body.properties.listeners[_].properties.frontendPort.id == STRING
    input.Body.properties.listeners[_].properties.protocol == enum_ApplicationGatewayProtocol[_]
    input.Body.properties.listeners[_].properties.sslCertificate.id == STRING
    input.Body.properties.listeners[_].properties.sslProfile.id == STRING
    input.Body.properties.listeners[_].properties.hostNames[_] == STRING
    input.Body.properties.listeners[_].name == STRING
    input.Body.properties.listeners[_].id == STRING
    input.Body.properties.sslProfiles[_].properties.trustedClientCertificates[_].id == STRING
    input.Body.properties.sslProfiles[_].properties.sslPolicy.disabledSslProtocols[_] == enum_ProtocolsEnum[_]
    input.Body.properties.sslProfiles[_].properties.sslPolicy.policyType == enum_ApplicationGatewaySslPolicyPolicyType[_]
    input.Body.properties.sslProfiles[_].properties.sslPolicy.policyName == enum_PolicyNameEnum[_]
    input.Body.properties.sslProfiles[_].properties.sslPolicy.cipherSuites[_] == enum_CipherSuitesEnum[_]
    input.Body.properties.sslProfiles[_].properties.sslPolicy.minProtocolVersion == enum_ProtocolsEnum[_]
    input.Body.properties.sslProfiles[_].properties.clientAuthConfiguration.verifyClientCertIssuerDN == BOOLEAN
    input.Body.properties.sslProfiles[_].properties.clientAuthConfiguration.verifyClientRevocation == enum_ApplicationGatewayClientAuthConfigurationVerifyClientRevocation[_]
    input.Body.properties.sslProfiles[_].name == STRING
    input.Body.properties.sslProfiles[_].id == STRING
    input.Body.properties.urlPathMaps[_].properties.defaultBackendAddressPool.id == STRING
    input.Body.properties.urlPathMaps[_].properties.defaultBackendHttpSettings.id == STRING
    input.Body.properties.urlPathMaps[_].properties.defaultRewriteRuleSet.id == STRING
    input.Body.properties.urlPathMaps[_].properties.defaultRedirectConfiguration.id == STRING
    input.Body.properties.urlPathMaps[_].properties.defaultLoadDistributionPolicy.id == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].properties.paths[_] == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].properties.backendHttpSettings.id == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].properties.redirectConfiguration.id == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].properties.rewriteRuleSet.id == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].properties.loadDistributionPolicy.id == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].properties.firewallPolicy.id == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].name == STRING
    input.Body.properties.urlPathMaps[_].properties.pathRules[_].id == STRING
    input.Body.properties.urlPathMaps[_].name == STRING
    input.Body.properties.urlPathMaps[_].id == STRING
    input.Body.properties.requestRoutingRules[_].properties.ruleType == enum_ApplicationGatewayRequestRoutingRulePropertiesFormatRuleType[_]
    input.Body.properties.requestRoutingRules[_].properties.priority == INTEGER
    input.Body.properties.requestRoutingRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.requestRoutingRules[_].properties.backendHttpSettings.id == STRING
    input.Body.properties.requestRoutingRules[_].properties.httpListener.id == STRING
    input.Body.properties.requestRoutingRules[_].properties.urlPathMap.id == STRING
    input.Body.properties.requestRoutingRules[_].properties.rewriteRuleSet.id == STRING
    input.Body.properties.requestRoutingRules[_].properties.redirectConfiguration.id == STRING
    input.Body.properties.requestRoutingRules[_].properties.loadDistributionPolicy.id == STRING
    input.Body.properties.requestRoutingRules[_].name == STRING
    input.Body.properties.requestRoutingRules[_].id == STRING
    input.Body.properties.routingRules[_].properties.ruleType == enum_ApplicationGatewayRoutingRulePropertiesFormatRuleType[_]
    input.Body.properties.routingRules[_].properties.priority == INTEGER
    input.Body.properties.routingRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.routingRules[_].properties.backendSettings.id == STRING
    input.Body.properties.routingRules[_].properties.listener.id == STRING
    input.Body.properties.routingRules[_].name == STRING
    input.Body.properties.routingRules[_].id == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].name == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].ruleSequence == INTEGER
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].conditions[_].variable == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].conditions[_].pattern == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].conditions[_].ignoreCase == BOOLEAN
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].conditions[_].negate == BOOLEAN
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].actionSet.requestHeaderConfigurations[_].headerName == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].actionSet.requestHeaderConfigurations[_].headerValue == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].actionSet.responseHeaderConfigurations[_].headerName == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].actionSet.responseHeaderConfigurations[_].headerValue == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].actionSet.urlConfiguration.modifiedPath == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].actionSet.urlConfiguration.modifiedQueryString == STRING
    input.Body.properties.rewriteRuleSets[_].properties.rewriteRules[_].actionSet.urlConfiguration.reroute == BOOLEAN
    input.Body.properties.rewriteRuleSets[_].name == STRING
    input.Body.properties.rewriteRuleSets[_].id == STRING
    input.Body.properties.redirectConfigurations[_].properties.redirectType == enum_RedirectTypeEnum[_]
    input.Body.properties.redirectConfigurations[_].properties.targetListener.id == STRING
    input.Body.properties.redirectConfigurations[_].properties.targetUrl == STRING
    input.Body.properties.redirectConfigurations[_].properties.includePath == BOOLEAN
    input.Body.properties.redirectConfigurations[_].properties.includeQueryString == BOOLEAN
    input.Body.properties.redirectConfigurations[_].properties.requestRoutingRules[_].id == STRING
    input.Body.properties.redirectConfigurations[_].properties.urlPathMaps[_].id == STRING
    input.Body.properties.redirectConfigurations[_].properties.pathRules[_].id == STRING
    input.Body.properties.redirectConfigurations[_].name == STRING
    input.Body.properties.redirectConfigurations[_].id == STRING
    input.Body.properties.webApplicationFirewallConfiguration.enabled == BOOLEAN
    input.Body.properties.webApplicationFirewallConfiguration.firewallMode == enum_ApplicationGatewayWebApplicationFirewallConfigurationFirewallMode[_]
    input.Body.properties.webApplicationFirewallConfiguration.ruleSetType == STRING
    input.Body.properties.webApplicationFirewallConfiguration.ruleSetVersion == STRING
    input.Body.properties.webApplicationFirewallConfiguration.disabledRuleGroups[_].ruleGroupName == STRING
    input.Body.properties.webApplicationFirewallConfiguration.disabledRuleGroups[_].rules[_] == INTEGER
    input.Body.properties.webApplicationFirewallConfiguration.requestBodyCheck == BOOLEAN
    input.Body.properties.webApplicationFirewallConfiguration.maxRequestBodySize == INTEGER
    input.Body.properties.webApplicationFirewallConfiguration.maxRequestBodySizeInKb == INTEGER
    input.Body.properties.webApplicationFirewallConfiguration.fileUploadLimitInMb == INTEGER
    input.Body.properties.webApplicationFirewallConfiguration.exclusions[_].matchVariable == STRING
    input.Body.properties.webApplicationFirewallConfiguration.exclusions[_].selectorMatchOperator == STRING
    input.Body.properties.webApplicationFirewallConfiguration.exclusions[_].selector == STRING
    input.Body.properties.firewallPolicy.id == STRING
    input.Body.properties.enableHttp2 == BOOLEAN
    input.Body.properties.enableFips == BOOLEAN
    input.Body.properties.autoscaleConfiguration.minCapacity == INTEGER
    input.Body.properties.autoscaleConfiguration.maxCapacity == INTEGER
    input.Body.properties.privateLinkConfigurations[_].properties.ipConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.privateLinkConfigurations[_].properties.ipConfigurations[_].properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.privateLinkConfigurations[_].properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.privateLinkConfigurations[_].properties.ipConfigurations[_].properties.primary == BOOLEAN
    input.Body.properties.privateLinkConfigurations[_].properties.ipConfigurations[_].name == STRING
    input.Body.properties.privateLinkConfigurations[_].properties.ipConfigurations[_].id == STRING
    input.Body.properties.privateLinkConfigurations[_].name == STRING
    input.Body.properties.privateLinkConfigurations[_].id == STRING
    input.Body.properties.customErrorConfigurations[_].statusCode == enum_ApplicationGatewayCustomErrorStatusCode[_]
    input.Body.properties.customErrorConfigurations[_].customErrorPageUrl == STRING
    input.Body.properties.forceFirewallPolicyAssociation == BOOLEAN
    input.Body.properties.loadDistributionPolicies[_].properties.loadDistributionTargets[_].properties.weightPerServer == INTEGER
    input.Body.properties.loadDistributionPolicies[_].properties.loadDistributionTargets[_].properties.backendAddressPool.id == STRING
    input.Body.properties.loadDistributionPolicies[_].properties.loadDistributionTargets[_].name == STRING
    input.Body.properties.loadDistributionPolicies[_].properties.loadDistributionTargets[_].id == STRING
    input.Body.properties.loadDistributionPolicies[_].properties.loadDistributionAlgorithm == enum_ApplicationGatewayLoadDistributionAlgorithmEnum[_]
    input.Body.properties.loadDistributionPolicies[_].name == STRING
    input.Body.properties.loadDistributionPolicies[_].id == STRING
    input.Body.properties.globalConfiguration.enableRequestBuffering == BOOLEAN
    input.Body.properties.globalConfiguration.enableResponseBuffering == BOOLEAN
    input.Body.zones[_] == STRING
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_GetSslPredefinedPolicy

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.predefinedPolicyName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_ListAvailableRequestHeaders

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_ListAvailableResponseHeaders

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_ListAvailableServerVariables

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_ListAvailableSslOptions

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_ListAvailableSslPredefinedPolicies

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_ListAvailableWafRuleSets

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationGateways_Start

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_Stop

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationGateways_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationSecurityGroups_CreateOrUpdate

valid {
    input.Body.properties == {}
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationSecurityGroups_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationSecurityGroups_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationSecurityGroups_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ApplicationSecurityGroups_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ApplicationSecurityGroups_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.applicationSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AvailableDelegations_List

valid {
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

AvailableEndpointServices_List

valid {
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

AvailablePrivateEndpointTypes_List

valid {
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

AvailablePrivateEndpointTypes_ListByResourceGroup

valid {
    input.ReqMap.location == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AvailableResourceGroupDelegations_List

valid {
    input.ReqMap.location == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AvailableServiceAliases_List

valid {
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

AvailableServiceAliases_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AzureFirewallFqdnTags_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

AzureFirewalls_CreateOrUpdate

enum_AzureFirewallApplicationRuleProtocolType := [ "Http", "Https", "Mssql" ]
enum_AzureFirewallNatRCActionType := [ "Snat", "Dnat" ]
enum_AzureFirewallNetworkRuleProtocol := [ "TCP", "UDP", "Any", "ICMP" ]
enum_AzureFirewallRCActionType := [ "Allow", "Deny" ]
enum_AzureFirewallSkuName := [ "AZFW_VNet", "AZFW_Hub" ]
enum_AzureFirewallSkuTier := [ "Standard", "Premium", "Basic" ]
enum_AzureFirewallThreatIntelMode := [ "Alert", "Deny", "Off" ]

valid {
    input.Body.properties.applicationRuleCollections[_].properties.priority == INTEGER
    input.Body.properties.applicationRuleCollections[_].properties.action.type == enum_AzureFirewallRCActionType[_]
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].name == STRING
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].description == STRING
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].sourceAddresses[_] == STRING
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].protocols[_].protocolType == enum_AzureFirewallApplicationRuleProtocolType[_]
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].protocols[_].port == INTEGER
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].targetFqdns[_] == STRING
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].fqdnTags[_] == STRING
    input.Body.properties.applicationRuleCollections[_].properties.rules[_].sourceIpGroups[_] == STRING
    input.Body.properties.applicationRuleCollections[_].name == STRING
    input.Body.properties.applicationRuleCollections[_].id == STRING
    input.Body.properties.natRuleCollections[_].properties.priority == INTEGER
    input.Body.properties.natRuleCollections[_].properties.action.type == enum_AzureFirewallNatRCActionType[_]
    input.Body.properties.natRuleCollections[_].properties.rules[_].name == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].description == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].sourceAddresses[_] == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].destinationAddresses[_] == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].destinationPorts[_] == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].protocols[_] == enum_AzureFirewallNetworkRuleProtocol[_]
    input.Body.properties.natRuleCollections[_].properties.rules[_].translatedAddress == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].translatedPort == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].translatedFqdn == STRING
    input.Body.properties.natRuleCollections[_].properties.rules[_].sourceIpGroups[_] == STRING
    input.Body.properties.natRuleCollections[_].name == STRING
    input.Body.properties.natRuleCollections[_].id == STRING
    input.Body.properties.networkRuleCollections[_].properties.priority == INTEGER
    input.Body.properties.networkRuleCollections[_].properties.action.type == enum_AzureFirewallRCActionType[_]
    input.Body.properties.networkRuleCollections[_].properties.rules[_].name == STRING
    input.Body.properties.networkRuleCollections[_].properties.rules[_].description == STRING
    input.Body.properties.networkRuleCollections[_].properties.rules[_].protocols[_] == enum_AzureFirewallNetworkRuleProtocol[_]
    input.Body.properties.networkRuleCollections[_].properties.rules[_].sourceAddresses[_] == STRING
    input.Body.properties.networkRuleCollections[_].properties.rules[_].destinationAddresses[_] == STRING
    input.Body.properties.networkRuleCollections[_].properties.rules[_].destinationPorts[_] == STRING
    input.Body.properties.networkRuleCollections[_].properties.rules[_].destinationFqdns[_] == STRING
    input.Body.properties.networkRuleCollections[_].properties.rules[_].sourceIpGroups[_] == STRING
    input.Body.properties.networkRuleCollections[_].properties.rules[_].destinationIpGroups[_] == STRING
    input.Body.properties.networkRuleCollections[_].name == STRING
    input.Body.properties.networkRuleCollections[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.id == STRING
    input.Body.properties.ipConfigurations[_].name == STRING
    input.Body.properties.ipConfigurations[_].id == STRING
    input.Body.properties.managementIpConfiguration.properties.subnet.id == STRING
    input.Body.properties.managementIpConfiguration.properties.publicIPAddress.id == STRING
    input.Body.properties.managementIpConfiguration.name == STRING
    input.Body.properties.threatIntelMode == enum_AzureFirewallThreatIntelMode[_]
    input.Body.properties.virtualHub.id == STRING
    input.Body.properties.firewallPolicy.id == STRING
    input.Body.properties.hubIPAddresses.publicIPs.addresses[_].address == STRING
    input.Body.properties.hubIPAddresses.publicIPs.count == INTEGER
    input.Body.properties.hubIPAddresses.privateIPAddress == STRING
    input.Body.properties.sku.name == enum_AzureFirewallSkuName[_]
    input.Body.properties.sku.tier == enum_AzureFirewallSkuTier[_]
    input.Body.properties.additionalProperties.STRING == STRING
    input.Body.zones[_] == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.azureFirewallName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AzureFirewalls_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.azureFirewallName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AzureFirewalls_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.azureFirewallName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AzureFirewalls_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AzureFirewalls_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

AzureFirewalls_ListLearnedPrefixes

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.azureFirewallName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AzureFirewalls_PacketCapture

enum_AzureFirewallNetworkRuleProtocol := [ "TCP", "UDP", "Any", "ICMP" ]
enum_AzureFirewallPacketCaptureFlagsType := [ "fin", "syn", "rst", "push", "ack", "urg" ]

valid {
    input.Body.properties.durationInSeconds == INTEGER
    input.Body.properties.numberOfPacketsToCapture == INTEGER
    input.Body.properties.sasUrl == STRING
    input.Body.properties.fileName == STRING
    input.Body.properties.protocol == enum_AzureFirewallNetworkRuleProtocol[_]
    input.Body.properties.flags[_].type == enum_AzureFirewallPacketCaptureFlagsType[_]
    input.Body.properties.filters[_].sources[_] == STRING
    input.Body.properties.filters[_].destinations[_] == STRING
    input.Body.properties.filters[_].destinationPorts[_] == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.azureFirewallName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

AzureFirewalls_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.azureFirewallName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

BastionHosts_CreateOrUpdate

enum_IPAllocationMethod := [ "Static", "Dynamic" ]
enum_SkuName := [ "Basic", "Standard", "Developer" ]

valid {
    input.Body.properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.id == STRING
    input.Body.properties.ipConfigurations[_].properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.ipConfigurations[_].name == STRING
    input.Body.properties.ipConfigurations[_].id == STRING
    input.Body.properties.dnsName == STRING
    input.Body.properties.virtualNetwork.id == STRING
    input.Body.properties.networkAcls.ipRules[_].addressPrefix == STRING
    input.Body.properties.scaleUnits == INTEGER
    input.Body.properties.disableCopyPaste == BOOLEAN
    input.Body.properties.enableFileCopy == BOOLEAN
    input.Body.properties.enableIpConnect == BOOLEAN
    input.Body.properties.enableShareableLink == BOOLEAN
    input.Body.properties.enableTunneling == BOOLEAN
    input.Body.properties.enableKerberos == BOOLEAN
    input.Body.zones[_] == STRING
    input.Body.sku.name == enum_SkuName[_]
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

BastionHosts_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

BastionHosts_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

BastionHosts_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

BastionHosts_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

BastionHosts_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

BgpServiceCommunities_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

CheckDnsNameAvailability

valid {
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.domainNameLabel == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ConfigurationPolicyGroups_CreateOrUpdate

enum_VpnServerConfigurationPolicyGroupMemberAttributeType := [ "CertificateGroupId", "AADGroupId", "RadiusAzureGroupId" ]

valid {
    input.Body.properties.isDefault == BOOLEAN
    input.Body.properties.priority == INTEGER
    input.Body.properties.policyMembers[_].name == STRING
    input.Body.properties.policyMembers[_].attributeType == enum_VpnServerConfigurationPolicyGroupMemberAttributeType[_]
    input.Body.properties.policyMembers[_].attributeValue == STRING
    input.Body.name == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.vpnServerConfigurationName == STRING
    input.ReqMap.configurationPolicyGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConfigurationPolicyGroups_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.vpnServerConfigurationName == STRING
    input.ReqMap.configurationPolicyGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConfigurationPolicyGroups_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.vpnServerConfigurationName == STRING
    input.ReqMap.configurationPolicyGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_CreateOrUpdate

enum_ConnectionMonitorEndpointCoverageLevel := [ "Default", "Low", "BelowAverage", "Average", "AboveAverage", "Full" ]
enum_ConnectionMonitorEndpointFilterItemType := [ "AgentAddress" ]
enum_ConnectionMonitorEndpointFilterType := [ "Include" ]
enum_ConnectionMonitorEndpointType := [ "AzureVM", "AzureVNet", "AzureSubnet", "ExternalAddress", "MMAWorkspaceMachine", "MMAWorkspaceNetwork", "AzureArcVM", "AzureVMSS" ]
enum_ConnectionMonitorHttpConfigurationMethod := [ "Get", "Post" ]
enum_ConnectionMonitorOutputType := [ "Workspace" ]
enum_ConnectionMonitorTcpConfigurationDestinationPortBehavior := [ "None", "ListenIfAvailable" ]
enum_ConnectionMonitorTestConfigurationPreferredIPVersion := [ "IPv4", "IPv6" ]
enum_ConnectionMonitorTestConfigurationProtocol := [ "Tcp", "Http", "Icmp" ]

valid {
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.Body.properties.source.resourceId == STRING
    input.Body.properties.source.port == INTEGER
    input.Body.properties.destination.resourceId == STRING
    input.Body.properties.destination.address == STRING
    input.Body.properties.destination.port == INTEGER
    input.Body.properties.autoStart == BOOLEAN
    input.Body.properties.monitoringIntervalInSeconds == INTEGER
    input.Body.properties.endpoints[_].name == STRING
    input.Body.properties.endpoints[_].type == enum_ConnectionMonitorEndpointType[_]
    input.Body.properties.endpoints[_].resourceId == STRING
    input.Body.properties.endpoints[_].address == STRING
    input.Body.properties.endpoints[_].filter.type == enum_ConnectionMonitorEndpointFilterType[_]
    input.Body.properties.endpoints[_].filter.items[_].type == enum_ConnectionMonitorEndpointFilterItemType[_]
    input.Body.properties.endpoints[_].filter.items[_].address == STRING
    input.Body.properties.endpoints[_].scope.include[_].address == STRING
    input.Body.properties.endpoints[_].scope.exclude[_].address == STRING
    input.Body.properties.endpoints[_].coverageLevel == enum_ConnectionMonitorEndpointCoverageLevel[_]
    input.Body.properties.testConfigurations[_].name == STRING
    input.Body.properties.testConfigurations[_].testFrequencySec == INTEGER
    input.Body.properties.testConfigurations[_].protocol == enum_ConnectionMonitorTestConfigurationProtocol[_]
    input.Body.properties.testConfigurations[_].preferredIPVersion == enum_ConnectionMonitorTestConfigurationPreferredIPVersion[_]
    input.Body.properties.testConfigurations[_].httpConfiguration.port == INTEGER
    input.Body.properties.testConfigurations[_].httpConfiguration.method == enum_ConnectionMonitorHttpConfigurationMethod[_]
    input.Body.properties.testConfigurations[_].httpConfiguration.path == STRING
    input.Body.properties.testConfigurations[_].httpConfiguration.requestHeaders[_].name == STRING
    input.Body.properties.testConfigurations[_].httpConfiguration.requestHeaders[_].value == STRING
    input.Body.properties.testConfigurations[_].httpConfiguration.validStatusCodeRanges[_] == STRING
    input.Body.properties.testConfigurations[_].httpConfiguration.preferHTTPS == BOOLEAN
    input.Body.properties.testConfigurations[_].tcpConfiguration.port == INTEGER
    input.Body.properties.testConfigurations[_].tcpConfiguration.disableTraceRoute == BOOLEAN
    input.Body.properties.testConfigurations[_].tcpConfiguration.destinationPortBehavior == enum_ConnectionMonitorTcpConfigurationDestinationPortBehavior[_]
    input.Body.properties.testConfigurations[_].icmpConfiguration.disableTraceRoute == BOOLEAN
    input.Body.properties.testConfigurations[_].successThreshold.checksFailedPercent == INTEGER
    input.Body.properties.testConfigurations[_].successThreshold.roundTripTimeMs == NUMBER
    input.Body.properties.testGroups[_].name == STRING
    input.Body.properties.testGroups[_].disable == BOOLEAN
    input.Body.properties.testGroups[_].testConfigurations[_] == STRING
    input.Body.properties.testGroups[_].sources[_] == STRING
    input.Body.properties.testGroups[_].destinations[_] == STRING
    input.Body.properties.outputs[_].type == enum_ConnectionMonitorOutputType[_]
    input.Body.properties.outputs[_].workspaceSettings.workspaceResourceId == STRING
    input.Body.properties.notes == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.connectionMonitorName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.migrate == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.connectionMonitorName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.connectionMonitorName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_Query

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.connectionMonitorName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_Start

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.connectionMonitorName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_Stop

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.connectionMonitorName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectionMonitors_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.connectionMonitorName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ConnectivityConfigurations_CreateOrUpdate

enum_ConnectivityConfigurationPropertiesConnectivityTopology := [ "HubAndSpoke", "Mesh" ]
enum_ConnectivityConfigurationPropertiesDeleteExistingPeering := [ "False", "True" ]
enum_ConnectivityConfigurationPropertiesIsGlobal := [ "False", "True" ]
enum_connectivityGroupItemGroupConnectivity := [ "None", "DirectlyConnected" ]
enum_connectivityGroupItemIsGlobal := [ "False", "True" ]
enum_connectivityGroupItemUseHubGateway := [ "False", "True" ]

valid {
    input.Body.properties.description == STRING
    input.Body.properties.connectivityTopology == enum_ConnectivityConfigurationPropertiesConnectivityTopology[_]
    input.Body.properties.hubs[_].resourceId == STRING
    input.Body.properties.hubs[_].resourceType == STRING
    input.Body.properties.isGlobal == enum_ConnectivityConfigurationPropertiesIsGlobal[_]
    input.Body.properties.appliesToGroups[_].networkGroupId == STRING
    input.Body.properties.appliesToGroups[_].useHubGateway == enum_connectivityGroupItemUseHubGateway[_]
    input.Body.properties.appliesToGroups[_].isGlobal == enum_connectivityGroupItemIsGlobal[_]
    input.Body.properties.appliesToGroups[_].groupConnectivity == enum_connectivityGroupItemGroupConnectivity[_]
    input.Body.properties.deleteExistingPeering == enum_ConnectivityConfigurationPropertiesDeleteExistingPeering[_]
    input.ProviderMetadata.Region == STRING
}

ConnectivityConfigurations_Delete

valid {
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

ConnectivityConfigurations_Get

valid {
    input.ProviderMetadata.Region == STRING
}

ConnectivityConfigurations_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkManagerName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

CustomIPPrefixes_CreateOrUpdate

enum_CustomIpPrefixPropertiesFormatCommissionedState := [ "Provisioning", "Provisioned", "Commissioning", "CommissionedNoInternetAdvertise", "Commissioned", "Decommissioning", "Deprovisioning", "Deprovisioned" ]
enum_CustomIpPrefixPropertiesFormatGeo := [ "GLOBAL", "AFRI", "APAC", "EURO", "LATAM", "NAM", "ME", "OCEANIA", "AQ" ]
enum_CustomIpPrefixPropertiesFormatPrefixType := [ "Singular", "Parent", "Child" ]
enum_ExtendedLocationType := [ "EdgeZone" ]

valid {
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.asn == STRING
    input.Body.properties.cidr == STRING
    input.Body.properties.signedMessage == STRING
    input.Body.properties.authorizationMessage == STRING
    input.Body.properties.customIpPrefixParent.id == STRING
    input.Body.properties.commissionedState == enum_CustomIpPrefixPropertiesFormatCommissionedState[_]
    input.Body.properties.expressRouteAdvertise == BOOLEAN
    input.Body.properties.geo == enum_CustomIpPrefixPropertiesFormatGeo[_]
    input.Body.properties.noInternetAdvertise == BOOLEAN
    input.Body.properties.prefixType == enum_CustomIpPrefixPropertiesFormatPrefixType[_]
    input.Body.zones[_] == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.customIpPrefixName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

CustomIPPrefixes_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.customIpPrefixName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

CustomIPPrefixes_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.customIpPrefixName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

CustomIPPrefixes_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

CustomIPPrefixes_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

CustomIPPrefixes_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.customIpPrefixName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosCustomPolicies_CreateOrUpdate

valid {
    input.Body.properties == {}
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosCustomPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosCustomPolicies_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosCustomPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosCustomPolicies_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosCustomPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosCustomPolicies_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosCustomPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosProtectionPlans_CreateOrUpdate

valid {
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.Body.properties == {}
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosProtectionPlanName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosProtectionPlans_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosProtectionPlanName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosProtectionPlans_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosProtectionPlanName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosProtectionPlans_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

DdosProtectionPlans_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DdosProtectionPlans_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ddosProtectionPlanName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DefaultSecurityRules_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkSecurityGroupName == STRING
    input.ReqMap.defaultSecurityRuleName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DefaultSecurityRules_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DeleteBastionShareableLink

valid {
    input.Body.vms[_].vm == {}
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DeleteBastionShareableLinkByToken

valid {
    input.Body.tokens[_] == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DisconnectActiveSessions

valid {
    input.Body.sessionIds[_] == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsForwardingRulesets_CreateOrUpdate

valid {
    input.Body.properties.dnsResolverOutboundEndpoints[_].id == STRING
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsForwardingRulesets_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsForwardingRulesets_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsForwardingRulesets_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

DnsForwardingRulesets_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsForwardingRulesets_ListByVirtualNetwork

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualNetworkName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsForwardingRulesets_Update

valid {
    input.Body.dnsResolverOutboundEndpoints[_].id == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsResolvers_CreateOrUpdate

valid {
    input.Body.properties.virtualNetwork.id == STRING
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsResolvers_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsResolvers_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsResolvers_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

DnsResolvers_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsResolvers_ListByVirtualNetwork

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualNetworkName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsResolvers_Update

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnsResourceReference_GetByTargetResources

valid {
    input.Body.properties.targetResources[_].id == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

DnssecConfigs_CreateOrUpdate

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.zoneName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnssecConfigs_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.zoneName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnssecConfigs_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.zoneName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DnssecConfigs_ListByDnsZone

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.zoneName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DscpConfiguration_CreateOrUpdate

enum_DscpConfigurationPropertiesFormatProtocol := [ "DoNotUse", "Icmp", "Tcp", "Udp", "Gre", "Esp", "Ah", "Vxlan", "All" ]
enum_QosDefinitionProtocol := [ "DoNotUse", "Icmp", "Tcp", "Udp", "Gre", "Esp", "Ah", "Vxlan", "All" ]

valid {
    input.Body.properties.markings[_] == INTEGER
    input.Body.properties.sourceIpRanges[_].startIP == STRING
    input.Body.properties.sourceIpRanges[_].endIP == STRING
    input.Body.properties.destinationIpRanges[_].startIP == STRING
    input.Body.properties.destinationIpRanges[_].endIP == STRING
    input.Body.properties.sourcePortRanges[_].start == INTEGER
    input.Body.properties.sourcePortRanges[_].end == INTEGER
    input.Body.properties.destinationPortRanges[_].start == INTEGER
    input.Body.properties.destinationPortRanges[_].end == INTEGER
    input.Body.properties.protocol == enum_DscpConfigurationPropertiesFormatProtocol[_]
    input.Body.properties.qosDefinitionCollection[_].markings[_] == INTEGER
    input.Body.properties.qosDefinitionCollection[_].sourceIpRanges[_].startIP == STRING
    input.Body.properties.qosDefinitionCollection[_].sourceIpRanges[_].endIP == STRING
    input.Body.properties.qosDefinitionCollection[_].destinationIpRanges[_].startIP == STRING
    input.Body.properties.qosDefinitionCollection[_].destinationIpRanges[_].endIP == STRING
    input.Body.properties.qosDefinitionCollection[_].sourcePortRanges[_].start == INTEGER
    input.Body.properties.qosDefinitionCollection[_].sourcePortRanges[_].end == INTEGER
    input.Body.properties.qosDefinitionCollection[_].destinationPortRanges[_].start == INTEGER
    input.Body.properties.qosDefinitionCollection[_].destinationPortRanges[_].end == INTEGER
    input.Body.properties.qosDefinitionCollection[_].protocol == enum_QosDefinitionProtocol[_]
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dscpConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DscpConfiguration_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dscpConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DscpConfiguration_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dscpConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DscpConfiguration_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DscpConfiguration_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

EffectiveVirtualNetworks_ListByNetworkManager

valid {
    input.Body.conditionalMembers == STRING
    input.Body.skipToken == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkManagerName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Endpoints_CreateOrUpdate

enum_EndpointPropertiesAlwaysServe := [ "Enabled", "Disabled" ]
enum_EndpointPropertiesEndpointMonitorStatus := [ "CheckingEndpoint", "Online", "Degraded", "Disabled", "Inactive", "Stopped", "Unmonitored" ]
enum_EndpointPropertiesEndpointStatus := [ "Enabled", "Disabled" ]
enum_EndpointTypeParameter := [ "AzureEndpoints", "ExternalEndpoints", "NestedEndpoints" ]

valid {
    input.Body.properties.targetResourceId == STRING
    input.Body.properties.target == STRING
    input.Body.properties.endpointStatus == enum_EndpointPropertiesEndpointStatus[_]
    input.Body.properties.weight == INTEGER
    input.Body.properties.priority == INTEGER
    input.Body.properties.endpointLocation == STRING
    input.Body.properties.endpointMonitorStatus == enum_EndpointPropertiesEndpointMonitorStatus[_]
    input.Body.properties.minChildEndpoints == INTEGER
    input.Body.properties.minChildEndpointsIPv4 == INTEGER
    input.Body.properties.minChildEndpointsIPv6 == INTEGER
    input.Body.properties.geoMapping[_] == STRING
    input.Body.properties.subnets[_].first == STRING
    input.Body.properties.subnets[_].last == STRING
    input.Body.properties.subnets[_].scope == INTEGER
    input.Body.properties.customHeaders[_].name == STRING
    input.Body.properties.customHeaders[_].value == STRING
    input.Body.properties.alwaysServe == enum_EndpointPropertiesAlwaysServe[_]
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.endpointType == enum_EndpointTypeParameter[_]
    input.ReqMap.endpointName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Endpoints_Delete

enum_EndpointTypeParameter := [ "AzureEndpoints", "ExternalEndpoints", "NestedEndpoints" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.endpointType == enum_EndpointTypeParameter[_]
    input.ReqMap.endpointName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Endpoints_Get

enum_EndpointTypeParameter := [ "AzureEndpoints", "ExternalEndpoints", "NestedEndpoints" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.endpointType == enum_EndpointTypeParameter[_]
    input.ReqMap.endpointName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Endpoints_PurgeContent

valid {
    input.Body.contentPaths[_] == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Endpoints_Update

enum_EndpointPropertiesAlwaysServe := [ "Enabled", "Disabled" ]
enum_EndpointPropertiesEndpointMonitorStatus := [ "CheckingEndpoint", "Online", "Degraded", "Disabled", "Inactive", "Stopped", "Unmonitored" ]
enum_EndpointPropertiesEndpointStatus := [ "Enabled", "Disabled" ]
enum_EndpointTypeParameter := [ "AzureEndpoints", "ExternalEndpoints", "NestedEndpoints" ]

valid {
    input.Body.properties.targetResourceId == STRING
    input.Body.properties.target == STRING
    input.Body.properties.endpointStatus == enum_EndpointPropertiesEndpointStatus[_]
    input.Body.properties.weight == INTEGER
    input.Body.properties.priority == INTEGER
    input.Body.properties.endpointLocation == STRING
    input.Body.properties.endpointMonitorStatus == enum_EndpointPropertiesEndpointMonitorStatus[_]
    input.Body.properties.minChildEndpoints == INTEGER
    input.Body.properties.minChildEndpointsIPv4 == INTEGER
    input.Body.properties.minChildEndpointsIPv6 == INTEGER
    input.Body.properties.geoMapping[_] == STRING
    input.Body.properties.subnets[_].first == STRING
    input.Body.properties.subnets[_].last == STRING
    input.Body.properties.subnets[_].scope == INTEGER
    input.Body.properties.customHeaders[_].name == STRING
    input.Body.properties.customHeaders[_].value == STRING
    input.Body.properties.alwaysServe == enum_EndpointPropertiesAlwaysServe[_]
    input.Body.id == STRING
    input.Body.name == STRING
    input.Body.type == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.endpointType == enum_EndpointTypeParameter[_]
    input.ReqMap.endpointName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Experiments_CreateOrUpdate

enum_ExperimentPropertiesEnabledState := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.description == STRING
    input.Body.properties.endpointA.name == STRING
    input.Body.properties.endpointA.endpoint == STRING
    input.Body.properties.endpointB.name == STRING
    input.Body.properties.endpointB.endpoint == STRING
    input.Body.properties.enabledState == enum_ExperimentPropertiesEnabledState[_]
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.experimentName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Experiments_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.experimentName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Experiments_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.experimentName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Experiments_ListByProfile

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Experiments_Update

enum_ExperimentUpdatePropertiesEnabledState := [ "Enabled", "Disabled" ]

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.description == STRING
    input.Body.properties.enabledState == enum_ExperimentUpdatePropertiesEnabledState[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.experimentName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitAuthorizations_CreateOrUpdate

enum_AuthorizationPropertiesFormatAuthorizationUseStatus := [ "Available", "InUse" ]

valid {
    input.Body.properties.authorizationKey == STRING
    input.Body.properties.authorizationUseStatus == enum_AuthorizationPropertiesFormatAuthorizationUseStatus[_]
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.authorizationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitAuthorizations_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.authorizationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitAuthorizations_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.authorizationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitAuthorizations_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitConnections_CreateOrUpdate

valid {
    input.Body.properties.expressRouteCircuitPeering.id == STRING
    input.Body.properties.peerExpressRouteCircuitPeering.id == STRING
    input.Body.properties.addressPrefix == STRING
    input.Body.properties.authorizationKey == STRING
    input.Body.properties.ipv6CircuitConnectionConfig.addressPrefix == STRING
    input.Body.name == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitConnections_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitConnections_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitConnections_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitPeerings_CreateOrUpdate

enum_ExpressRoutePeeringState := [ "Disabled", "Enabled" ]
enum_ExpressRoutePeeringType := [ "AzurePublicPeering", "AzurePrivatePeering", "MicrosoftPeering" ]
enum_Ipv6ExpressRouteCircuitPeeringConfigState := [ "Disabled", "Enabled" ]

valid {
    input.Body.properties.peeringType == enum_ExpressRoutePeeringType[_]
    input.Body.properties.state == enum_ExpressRoutePeeringState[_]
    input.Body.properties.azureASN == INTEGER
    input.Body.properties.peerASN == INTEGER
    input.Body.properties.primaryPeerAddressPrefix == STRING
    input.Body.properties.secondaryPeerAddressPrefix == STRING
    input.Body.properties.primaryAzurePort == STRING
    input.Body.properties.secondaryAzurePort == STRING
    input.Body.properties.sharedKey == STRING
    input.Body.properties.vlanId == INTEGER
    input.Body.properties.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.stats.primarybytesIn == INTEGER
    input.Body.properties.stats.primarybytesOut == INTEGER
    input.Body.properties.stats.secondarybytesIn == INTEGER
    input.Body.properties.stats.secondarybytesOut == INTEGER
    input.Body.properties.gatewayManagerEtag == STRING
    input.Body.properties.routeFilter.id == STRING
    input.Body.properties.ipv6PeeringConfig.primaryPeerAddressPrefix == STRING
    input.Body.properties.ipv6PeeringConfig.secondaryPeerAddressPrefix == STRING
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.ipv6PeeringConfig.routeFilter.id == STRING
    input.Body.properties.ipv6PeeringConfig.state == enum_Ipv6ExpressRouteCircuitPeeringConfigState[_]
    input.Body.properties.expressRouteConnection == {}
    input.Body.properties.connections[_].properties.expressRouteCircuitPeering.id == STRING
    input.Body.properties.connections[_].properties.peerExpressRouteCircuitPeering.id == STRING
    input.Body.properties.connections[_].properties.addressPrefix == STRING
    input.Body.properties.connections[_].properties.authorizationKey == STRING
    input.Body.properties.connections[_].properties.ipv6CircuitConnectionConfig.addressPrefix == STRING
    input.Body.properties.connections[_].name == STRING
    input.Body.properties.connections[_].id == STRING
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitPeerings_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitPeerings_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuitPeerings_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_CreateOrUpdate

enum_AuthorizationPropertiesFormatAuthorizationUseStatus := [ "Available", "InUse" ]
enum_ExpressRouteCircuitSkuFamily := [ "UnlimitedData", "MeteredData" ]
enum_ExpressRouteCircuitSkuTier := [ "Standard", "Premium", "Basic", "Local" ]
enum_ExpressRoutePeeringState := [ "Disabled", "Enabled" ]
enum_ExpressRoutePeeringType := [ "AzurePublicPeering", "AzurePrivatePeering", "MicrosoftPeering" ]
enum_Ipv6ExpressRouteCircuitPeeringConfigState := [ "Disabled", "Enabled" ]
enum_ServiceProviderProvisioningState := [ "NotProvisioned", "Provisioning", "Provisioned", "Deprovisioning" ]

valid {
    input.Body.sku.name == STRING
    input.Body.sku.tier == enum_ExpressRouteCircuitSkuTier[_]
    input.Body.sku.family == enum_ExpressRouteCircuitSkuFamily[_]
    input.Body.properties.allowClassicOperations == BOOLEAN
    input.Body.properties.circuitProvisioningState == STRING
    input.Body.properties.serviceProviderProvisioningState == enum_ServiceProviderProvisioningState[_]
    input.Body.properties.authorizations[_].properties.authorizationKey == STRING
    input.Body.properties.authorizations[_].properties.authorizationUseStatus == enum_AuthorizationPropertiesFormatAuthorizationUseStatus[_]
    input.Body.properties.authorizations[_].name == STRING
    input.Body.properties.peerings[_].properties.peeringType == enum_ExpressRoutePeeringType[_]
    input.Body.properties.peerings[_].properties.state == enum_ExpressRoutePeeringState[_]
    input.Body.properties.peerings[_].properties.azureASN == INTEGER
    input.Body.properties.peerings[_].properties.peerASN == INTEGER
    input.Body.properties.peerings[_].properties.primaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.secondaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.primaryAzurePort == STRING
    input.Body.properties.peerings[_].properties.secondaryAzurePort == STRING
    input.Body.properties.peerings[_].properties.sharedKey == STRING
    input.Body.properties.peerings[_].properties.vlanId == INTEGER
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.peerings[_].properties.stats.primarybytesIn == INTEGER
    input.Body.properties.peerings[_].properties.stats.primarybytesOut == INTEGER
    input.Body.properties.peerings[_].properties.stats.secondarybytesIn == INTEGER
    input.Body.properties.peerings[_].properties.stats.secondarybytesOut == INTEGER
    input.Body.properties.peerings[_].properties.gatewayManagerEtag == STRING
    input.Body.properties.peerings[_].properties.routeFilter.id == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.primaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.secondaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.routeFilter.id == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.state == enum_Ipv6ExpressRouteCircuitPeeringConfigState[_]
    input.Body.properties.peerings[_].properties.expressRouteConnection == {}
    input.Body.properties.peerings[_].properties.connections[_].properties.expressRouteCircuitPeering.id == STRING
    input.Body.properties.peerings[_].properties.connections[_].properties.peerExpressRouteCircuitPeering.id == STRING
    input.Body.properties.peerings[_].properties.connections[_].properties.addressPrefix == STRING
    input.Body.properties.peerings[_].properties.connections[_].properties.authorizationKey == STRING
    input.Body.properties.peerings[_].properties.connections[_].properties.ipv6CircuitConnectionConfig.addressPrefix == STRING
    input.Body.properties.peerings[_].properties.connections[_].name == STRING
    input.Body.properties.peerings[_].name == STRING
    input.Body.properties.serviceKey == STRING
    input.Body.properties.serviceProviderNotes == STRING
    input.Body.properties.serviceProviderProperties.serviceProviderName == STRING
    input.Body.properties.serviceProviderProperties.peeringLocation == STRING
    input.Body.properties.serviceProviderProperties.bandwidthInMbps == INTEGER
    input.Body.properties.expressRoutePort.id == STRING
    input.Body.properties.bandwidthInGbps == NUMBER
    input.Body.properties.gatewayManagerEtag == STRING
    input.Body.properties.globalReachEnabled == BOOLEAN
    input.Body.properties.authorizationKey == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_GetPeeringStats

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_GetStats

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRouteCircuits_ListArpTable

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.devicePath == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_ListRoutesTable

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.devicePath == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_ListRoutesTableSummary

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.devicePath == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_ListStats

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCircuits_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.circuitName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteConnections_CreateOrUpdate

enum_VnetLocalRouteOverrideCriteria := [ "Contains", "Equal" ]

valid {
    input.Body.properties.expressRouteCircuitPeering.id == STRING
    input.Body.properties.authorizationKey == STRING
    input.Body.properties.routingWeight == INTEGER
    input.Body.properties.enableInternetSecurity == BOOLEAN
    input.Body.properties.expressRouteGatewayBypass == BOOLEAN
    input.Body.properties.enablePrivateLinkFastPath == BOOLEAN
    input.Body.properties.routingConfiguration.associatedRouteTable.id == STRING
    input.Body.properties.routingConfiguration.propagatedRouteTables.labels[_] == STRING
    input.Body.properties.routingConfiguration.propagatedRouteTables.ids[_].id == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutesConfig.vnetLocalRouteOverrideCriteria == enum_VnetLocalRouteOverrideCriteria[_]
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].name == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].addressPrefixes[_] == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].nextHopIpAddress == STRING
    input.Body.properties.routingConfiguration.inboundRouteMap.id == STRING
    input.Body.properties.routingConfiguration.outboundRouteMap.id == STRING
    input.Body.name == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteConnections_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteConnections_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.ReqMap.connectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteConnections_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnectionPeerings_CreateOrUpdate

enum_ExpressRoutePeeringState := [ "Disabled", "Enabled" ]
enum_ExpressRoutePeeringType := [ "AzurePublicPeering", "AzurePrivatePeering", "MicrosoftPeering" ]
enum_Ipv6ExpressRouteCircuitPeeringConfigState := [ "Disabled", "Enabled" ]

valid {
    input.Body.properties.peeringType == enum_ExpressRoutePeeringType[_]
    input.Body.properties.state == enum_ExpressRoutePeeringState[_]
    input.Body.properties.peerASN == INTEGER
    input.Body.properties.primaryPeerAddressPrefix == STRING
    input.Body.properties.secondaryPeerAddressPrefix == STRING
    input.Body.properties.sharedKey == STRING
    input.Body.properties.vlanId == INTEGER
    input.Body.properties.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.gatewayManagerEtag == STRING
    input.Body.properties.ipv6PeeringConfig.primaryPeerAddressPrefix == STRING
    input.Body.properties.ipv6PeeringConfig.secondaryPeerAddressPrefix == STRING
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.ipv6PeeringConfig.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.ipv6PeeringConfig.routeFilter.id == STRING
    input.Body.properties.ipv6PeeringConfig.state == enum_Ipv6ExpressRouteCircuitPeeringConfigState[_]
    input.Body.name == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnectionPeerings_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnectionPeerings_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnectionPeerings_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnections_CreateOrUpdate

enum_ExpressRoutePeeringState := [ "Disabled", "Enabled" ]
enum_ExpressRoutePeeringType := [ "AzurePublicPeering", "AzurePrivatePeering", "MicrosoftPeering" ]
enum_Ipv6ExpressRouteCircuitPeeringConfigState := [ "Disabled", "Enabled" ]
enum_ServiceProviderProvisioningState := [ "NotProvisioned", "Provisioning", "Provisioned", "Deprovisioning" ]

valid {
    input.Body.properties.expressRouteCircuit.id == STRING
    input.Body.properties.serviceProviderProvisioningState == enum_ServiceProviderProvisioningState[_]
    input.Body.properties.serviceProviderNotes == STRING
    input.Body.properties.peerings[_].properties.peeringType == enum_ExpressRoutePeeringType[_]
    input.Body.properties.peerings[_].properties.state == enum_ExpressRoutePeeringState[_]
    input.Body.properties.peerings[_].properties.peerASN == INTEGER
    input.Body.properties.peerings[_].properties.primaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.secondaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.sharedKey == STRING
    input.Body.properties.peerings[_].properties.vlanId == INTEGER
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.peerings[_].properties.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.peerings[_].properties.gatewayManagerEtag == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.primaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.secondaryPeerAddressPrefix == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedPublicPrefixes[_] == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.advertisedCommunities[_] == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.legacyMode == INTEGER
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.customerASN == INTEGER
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.microsoftPeeringConfig.routingRegistryName == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.routeFilter.id == STRING
    input.Body.properties.peerings[_].properties.ipv6PeeringConfig.state == enum_Ipv6ExpressRouteCircuitPeeringConfigState[_]
    input.Body.properties.peerings[_].name == STRING
    input.Body.properties.peerings[_].id == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnections_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnections_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRouteCrossConnections_ListArpTable

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.devicePath == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnections_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnections_ListRoutesTable

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.devicePath == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnections_ListRoutesTableSummary

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.peeringName == STRING
    input.ReqMap.devicePath == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteCrossConnections_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.crossConnectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteGateways_CreateOrUpdate

enum_VnetLocalRouteOverrideCriteria := [ "Contains", "Equal" ]

valid {
    input.Body.properties.autoScaleConfiguration.bounds.min == INTEGER
    input.Body.properties.autoScaleConfiguration.bounds.max == INTEGER
    input.Body.properties.expressRouteConnections[_].properties.expressRouteCircuitPeering.id == STRING
    input.Body.properties.expressRouteConnections[_].properties.authorizationKey == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingWeight == INTEGER
    input.Body.properties.expressRouteConnections[_].properties.enableInternetSecurity == BOOLEAN
    input.Body.properties.expressRouteConnections[_].properties.expressRouteGatewayBypass == BOOLEAN
    input.Body.properties.expressRouteConnections[_].properties.enablePrivateLinkFastPath == BOOLEAN
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.associatedRouteTable.id == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.propagatedRouteTables.labels[_] == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.propagatedRouteTables.ids[_].id == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.vnetRoutes.staticRoutesConfig.vnetLocalRouteOverrideCriteria == enum_VnetLocalRouteOverrideCriteria[_]
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.vnetRoutes.staticRoutes[_].name == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.vnetRoutes.staticRoutes[_].addressPrefixes[_] == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.vnetRoutes.staticRoutes[_].nextHopIpAddress == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.inboundRouteMap.id == STRING
    input.Body.properties.expressRouteConnections[_].properties.routingConfiguration.outboundRouteMap.id == STRING
    input.Body.properties.expressRouteConnections[_].name == STRING
    input.Body.properties.expressRouteConnections[_].id == STRING
    input.Body.properties.virtualHub.id == STRING
    input.Body.properties.allowNonVirtualWanTraffic == BOOLEAN
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteGateways_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteGateways_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteGateways_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteGateways_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRouteGateways_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRouteGatewayName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteLinks_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.ReqMap.linkName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteLinks_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePortAuthorizations_CreateOrUpdate

valid {
    input.Body.properties == {}
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.ReqMap.authorizationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePortAuthorizations_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.ReqMap.authorizationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePortAuthorizations_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.ReqMap.authorizationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePortAuthorizations_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePortsLocations_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.locationName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRoutePortsLocations_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRoutePorts_CreateOrUpdate

enum_ExpressRouteLinkMacSecConfigCipher := [ "GcmAes256", "GcmAes128", "GcmAesXpn128", "GcmAesXpn256" ]
enum_ExpressRouteLinkMacSecConfigSciState := [ "Disabled", "Enabled" ]
enum_ExpressRouteLinkPropertiesFormatAdminState := [ "Enabled", "Disabled" ]
enum_ExpressRoutePortPropertiesFormatBillingType := [ "MeteredData", "UnlimitedData" ]
enum_ExpressRoutePortPropertiesFormatEncapsulation := [ "Dot1Q", "QinQ" ]
enum_ManagedServiceIdentityType := [ "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned", "None" ]

valid {
    input.Body.properties.peeringLocation == STRING
    input.Body.properties.bandwidthInGbps == INTEGER
    input.Body.properties.encapsulation == enum_ExpressRoutePortPropertiesFormatEncapsulation[_]
    input.Body.properties.links[_].properties.adminState == enum_ExpressRouteLinkPropertiesFormatAdminState[_]
    input.Body.properties.links[_].properties.macSecConfig.cknSecretIdentifier == STRING
    input.Body.properties.links[_].properties.macSecConfig.cakSecretIdentifier == STRING
    input.Body.properties.links[_].properties.macSecConfig.cipher == enum_ExpressRouteLinkMacSecConfigCipher[_]
    input.Body.properties.links[_].properties.macSecConfig.sciState == enum_ExpressRouteLinkMacSecConfigSciState[_]
    input.Body.properties.links[_].name == STRING
    input.Body.properties.links[_].id == STRING
    input.Body.properties.billingType == enum_ExpressRoutePortPropertiesFormatBillingType[_]
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePorts_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePorts_GenerateLOA

valid {
    input.Body.customerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePorts_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePorts_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRoutePorts_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRoutePorts_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.expressRoutePortName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExpressRouteProviderPort

valid {
    input.ReqMap.providerport == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRouteProviderPortsLocation_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$filter == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExpressRouteServiceProviders_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

FirewallPolicies_CreateOrUpdate

enum_AzureFirewallThreatIntelMode := [ "Alert", "Deny", "Off" ]
enum_FirewallPolicyIntrusionDetectionBypassTrafficProtocol := [ "TCP", "UDP", "ICMP", "ANY" ]
enum_FirewallPolicyIntrusionDetectionProfileOptions := [ "Basic", "Standard", "Advanced", "Extended" ]
enum_FirewallPolicyIntrusionDetectionStateOptions := [ "Off", "Alert", "Deny" ]
enum_FirewallPolicySNATAutoLearnPrivateRanges := [ "Enabled", "Disabled" ]
enum_FirewallPolicySkuTier := [ "Standard", "Premium", "Basic" ]
enum_ManagedServiceIdentityType := [ "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned", "None" ]

valid {
    input.Body.properties.basePolicy.id == STRING
    input.Body.properties.threatIntelMode == enum_AzureFirewallThreatIntelMode[_]
    input.Body.properties.threatIntelWhitelist.ipAddresses[_] == STRING
    input.Body.properties.threatIntelWhitelist.fqdns[_] == STRING
    input.Body.properties.insights.isEnabled == BOOLEAN
    input.Body.properties.insights.retentionDays == INTEGER
    input.Body.properties.insights.logAnalyticsResources.workspaces[_].region == STRING
    input.Body.properties.insights.logAnalyticsResources.workspaces[_].workspaceId.id == STRING
    input.Body.properties.insights.logAnalyticsResources.defaultWorkspaceId.id == STRING
    input.Body.properties.snat.privateRanges[_] == STRING
    input.Body.properties.snat.autoLearnPrivateRanges == enum_FirewallPolicySNATAutoLearnPrivateRanges[_]
    input.Body.properties.sql.allowSqlRedirect == BOOLEAN
    input.Body.properties.dnsSettings.servers[_] == STRING
    input.Body.properties.dnsSettings.enableProxy == BOOLEAN
    input.Body.properties.dnsSettings.requireProxyForNetworkRules == BOOLEAN
    input.Body.properties.explicitProxy.enableExplicitProxy == BOOLEAN
    input.Body.properties.explicitProxy.httpPort == INTEGER
    input.Body.properties.explicitProxy.httpsPort == INTEGER
    input.Body.properties.explicitProxy.enablePacFile == BOOLEAN
    input.Body.properties.explicitProxy.pacFilePort == INTEGER
    input.Body.properties.explicitProxy.pacFile == STRING
    input.Body.properties.intrusionDetection.mode == enum_FirewallPolicyIntrusionDetectionStateOptions[_]
    input.Body.properties.intrusionDetection.profile == enum_FirewallPolicyIntrusionDetectionProfileOptions[_]
    input.Body.properties.intrusionDetection.configuration.signatureOverrides[_].id == STRING
    input.Body.properties.intrusionDetection.configuration.signatureOverrides[_].mode == enum_FirewallPolicyIntrusionDetectionStateOptions[_]
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].name == STRING
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].description == STRING
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].protocol == enum_FirewallPolicyIntrusionDetectionBypassTrafficProtocol[_]
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].sourceAddresses[_] == STRING
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].destinationAddresses[_] == STRING
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].destinationPorts[_] == STRING
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].sourceIpGroups[_] == STRING
    input.Body.properties.intrusionDetection.configuration.bypassTrafficSettings[_].destinationIpGroups[_] == STRING
    input.Body.properties.intrusionDetection.configuration.privateRanges[_] == STRING
    input.Body.properties.transportSecurity.certificateAuthority.keyVaultSecretId == STRING
    input.Body.properties.transportSecurity.certificateAuthority.name == STRING
    input.Body.properties.sku.tier == enum_FirewallPolicySkuTier[_]
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicies_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicies_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicies_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicies_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

FirewallPolicies_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyIdpsSignaturesFilterValues_List

valid {
    input.Body.filterName == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyIdpsSignaturesOverrides_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyIdpsSignaturesOverrides_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyIdpsSignaturesOverrides_Patch

valid {
    input.Body.name == STRING
    input.Body.id == STRING
    input.Body.type == STRING
    input.Body.properties.signatures.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyIdpsSignaturesOverrides_Put

valid {
    input.Body.name == STRING
    input.Body.id == STRING
    input.Body.type == STRING
    input.Body.properties.signatures.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyIdpsSignatures_List

enum_OrderByOrder := [ "Ascending", "Descending" ]

valid {
    input.Body.filters[_].field == STRING
    input.Body.filters[_].values[_] == STRING
    input.Body.search == STRING
    input.Body.orderBy.field == STRING
    input.Body.orderBy.order == enum_OrderByOrder[_]
    input.Body.resultsPerPage == INTEGER
    input.Body.skip == INTEGER
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleCollectionGroups_CreateOrUpdate

enum_FirewallPolicyRuleCollectionRuleCollectionType := [ "FirewallPolicyNatRuleCollection", "FirewallPolicyFilterRuleCollection" ]

valid {
    input.Body.properties.priority == INTEGER
    input.Body.properties.ruleCollections[_].ruleCollectionType == enum_FirewallPolicyRuleCollectionRuleCollectionType[_]
    input.Body.properties.ruleCollections[_].name == STRING
    input.Body.properties.ruleCollections[_].priority == INTEGER
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.ruleCollectionGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleCollectionGroups_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.ruleCollectionGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleCollectionGroups_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.ruleCollectionGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleCollectionGroups_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleGroups_CreateOrUpdate

enum_FirewallPolicyRuleRuleType := [ "FirewallPolicyNatRule", "FirewallPolicyFilterRule" ]

valid {
    input.Body.properties.priority == INTEGER
    input.Body.properties.rules[_].ruleType == enum_FirewallPolicyRuleRuleType[_]
    input.Body.properties.rules[_].name == STRING
    input.Body.properties.rules[_].priority == INTEGER
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.ruleGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleGroups_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.ruleGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleGroups_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.ruleGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FirewallPolicyRuleGroups_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.firewallPolicyName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FlowLogs_CreateOrUpdate

enum_FlowLogFormatParametersType := [ "JSON" ]

valid {
    input.Body.properties.targetResourceId == STRING
    input.Body.properties.storageId == STRING
    input.Body.properties.enabled == BOOLEAN
    input.Body.properties.retentionPolicy.days == INTEGER
    input.Body.properties.retentionPolicy.enabled == BOOLEAN
    input.Body.properties.format.type == enum_FlowLogFormatParametersType[_]
    input.Body.properties.format.version == INTEGER
    input.Body.properties.flowAnalyticsConfiguration.networkWatcherFlowAnalyticsConfiguration.enabled == BOOLEAN
    input.Body.properties.flowAnalyticsConfiguration.networkWatcherFlowAnalyticsConfiguration.workspaceId == STRING
    input.Body.properties.flowAnalyticsConfiguration.networkWatcherFlowAnalyticsConfiguration.workspaceRegion == STRING
    input.Body.properties.flowAnalyticsConfiguration.networkWatcherFlowAnalyticsConfiguration.workspaceResourceId == STRING
    input.Body.properties.flowAnalyticsConfiguration.networkWatcherFlowAnalyticsConfiguration.trafficAnalyticsInterval == INTEGER
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.flowLogName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FlowLogs_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.flowLogName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FlowLogs_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.flowLogName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FlowLogs_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FlowLogs_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.flowLogName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ForwardingRules_CreateOrUpdate

enum_ForwardingRulePropertiesForwardingRuleState := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.domainName == STRING
    input.Body.properties.targetDnsServers[_].ipAddress == STRING
    input.Body.properties.targetDnsServers[_].port == INTEGER
    input.Body.properties.metadata.STRING == STRING
    input.Body.properties.forwardingRuleState == enum_ForwardingRulePropertiesForwardingRuleState[_]
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.ReqMap.forwardingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ForwardingRules_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.ReqMap.forwardingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ForwardingRules_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.ReqMap.forwardingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ForwardingRules_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ForwardingRules_Update

enum_ForwardingRulePatchPropertiesForwardingRuleState := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.targetDnsServers[_].ipAddress == STRING
    input.Body.properties.targetDnsServers[_].port == INTEGER
    input.Body.properties.metadata.STRING == STRING
    input.Body.properties.forwardingRuleState == enum_ForwardingRulePatchPropertiesForwardingRuleState[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsForwardingRulesetName == STRING
    input.ReqMap.forwardingRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontDoorNameAvailabilityWithSubscription_Check

enum_ResourceType := [ "Microsoft.Network/frontDoors", "Microsoft.Network/frontDoors/frontendEndpoints" ]

valid {
    input.Body.name == STRING
    input.Body.type == enum_ResourceType[_]
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

FrontDoorNameAvailability_Check

enum_ResourceType := [ "Microsoft.Network/frontDoors", "Microsoft.Network/frontDoors/frontendEndpoints" ]

valid {
    input.Body.name == STRING
    input.Body.type == enum_ResourceType[_]
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

FrontDoors_CreateOrUpdate

enum_BackendEnabledState := [ "Enabled", "Disabled" ]
enum_BackendPoolsSettingsEnforceCertificateNameCheck := [ "Enabled", "Disabled" ]
enum_FrontDoorUpdateParametersEnabledState := [ "Enabled", "Disabled" ]
enum_FrontendEndpointUpdateParametersSessionAffinityEnabledState := [ "Enabled", "Disabled" ]
enum_HealthProbeSettingsUpdateParametersEnabledState := [ "Enabled", "Disabled" ]
enum_HealthProbeSettingsUpdateParametersHealthProbeMethod := [ "GET", "HEAD" ]
enum_HealthProbeSettingsUpdateParametersProtocol := [ "Http", "Https" ]
enum_RoutingRuleUpdateParametersAcceptedProtocols := [ "Http", "Https" ]
enum_RoutingRuleUpdateParametersEnabledState := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.friendlyName == STRING
    input.Body.properties.routingRules[_].properties.frontendEndpoints[_].id == STRING
    input.Body.properties.routingRules[_].properties.acceptedProtocols[_] == enum_RoutingRuleUpdateParametersAcceptedProtocols[_]
    input.Body.properties.routingRules[_].properties.patternsToMatch[_] == STRING
    input.Body.properties.routingRules[_].properties.enabledState == enum_RoutingRuleUpdateParametersEnabledState[_]
    input.Body.properties.routingRules[_][email protected] == STRING
    input.Body.properties.routingRules[_].properties.rulesEngine.id == STRING
    input.Body.properties.routingRules[_].properties.webApplicationFirewallPolicyLink.id == STRING
    input.Body.properties.routingRules[_].name == STRING
    input.Body.properties.routingRules[_].id == STRING
    input.Body.properties.loadBalancingSettings[_].properties.sampleSize == INTEGER
    input.Body.properties.loadBalancingSettings[_].properties.successfulSamplesRequired == INTEGER
    input.Body.properties.loadBalancingSettings[_].properties.additionalLatencyMilliseconds == INTEGER
    input.Body.properties.loadBalancingSettings[_].name == STRING
    input.Body.properties.loadBalancingSettings[_].id == STRING
    input.Body.properties.healthProbeSettings[_].properties.path == STRING
    input.Body.properties.healthProbeSettings[_].properties.protocol == enum_HealthProbeSettingsUpdateParametersProtocol[_]
    input.Body.properties.healthProbeSettings[_].properties.intervalInSeconds == INTEGER
    input.Body.properties.healthProbeSettings[_].properties.healthProbeMethod == enum_HealthProbeSettingsUpdateParametersHealthProbeMethod[_]
    input.Body.properties.healthProbeSettings[_].properties.enabledState == enum_HealthProbeSettingsUpdateParametersEnabledState[_]
    input.Body.properties.healthProbeSettings[_].name == STRING
    input.Body.properties.healthProbeSettings[_].id == STRING
    input.Body.properties.backendPools[_].properties.backends[_].address == STRING
    input.Body.properties.backendPools[_].properties.backends[_].privateLinkAlias == STRING
    input.Body.properties.backendPools[_].properties.backends[_].privateLinkResourceId == STRING
    input.Body.properties.backendPools[_].properties.backends[_].privateLinkLocation == STRING
    input.Body.properties.backendPools[_].properties.backends[_].privateLinkApprovalMessage == STRING
    input.Body.properties.backendPools[_].properties.backends[_].httpPort == INTEGER
    input.Body.properties.backendPools[_].properties.backends[_].httpsPort == INTEGER
    input.Body.properties.backendPools[_].properties.backends[_].enabledState == enum_BackendEnabledState[_]
    input.Body.properties.backendPools[_].properties.backends[_].priority == INTEGER
    input.Body.properties.backendPools[_].properties.backends[_].weight == INTEGER
    input.Body.properties.backendPools[_].properties.backends[_].backendHostHeader == STRING
    input.Body.properties.backendPools[_].properties.loadBalancingSettings.id == STRING
    input.Body.properties.backendPools[_].properties.healthProbeSettings.id == STRING
    input.Body.properties.backendPools[_].name == STRING
    input.Body.properties.backendPools[_].id == STRING
    input.Body.properties.frontendEndpoints[_].properties.hostName == STRING
    input.Body.properties.frontendEndpoints[_].properties.sessionAffinityEnabledState == enum_FrontendEndpointUpdateParametersSessionAffinityEnabledState[_]
    input.Body.properties.frontendEndpoints[_].properties.sessionAffinityTtlSeconds == INTEGER
    input.Body.properties.frontendEndpoints[_].properties.webApplicationFirewallPolicyLink.id == STRING
    input.Body.properties.frontendEndpoints[_].name == STRING
    input.Body.properties.frontendEndpoints[_].id == STRING
    input.Body.properties.backendPoolsSettings.enforceCertificateNameCheck == enum_BackendPoolsSettingsEnforceCertificateNameCheck[_]
    input.Body.properties.backendPoolsSettings.sendRecvTimeoutSeconds == INTEGER
    input.Body.properties.enabledState == enum_FrontDoorUpdateParametersEnabledState[_]
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontDoors_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontDoors_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontDoors_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

FrontDoors_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontDoors_ValidateCustomDomain

valid {
    input.Body.hostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontendEndpoints_DisableHttps

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.ReqMap.frontendEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontendEndpoints_EnableHttps

enum_CustomHttpsConfigurationCertificateSource := [ "AzureKeyVault", "FrontDoor" ]
enum_CustomHttpsConfigurationMinimumTlsVersion := [ "1.0", "1.2" ]
enum_CustomHttpsConfigurationProtocolType := [ "ServerNameIndication" ]
enum_FrontDoorCertificateSourceParametersCertificateType := [ "Dedicated" ]

valid {
    input.Body.certificateSource == enum_CustomHttpsConfigurationCertificateSource[_]
    input.Body.protocolType == enum_CustomHttpsConfigurationProtocolType[_]
    input.Body.minimumTlsVersion == enum_CustomHttpsConfigurationMinimumTlsVersion[_]
    input.Body.keyVaultCertificateSourceParameters.vault.id == STRING
    input.Body.keyVaultCertificateSourceParameters.secretName == STRING
    input.Body.keyVaultCertificateSourceParameters.secretVersion == STRING
    input.Body.frontDoorCertificateSourceParameters.certificateType == enum_FrontDoorCertificateSourceParametersCertificateType[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.ReqMap.frontendEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontendEndpoints_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.ReqMap.frontendEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FrontendEndpoints_ListByFrontDoor

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.frontDoorName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

GeographicHierarchies_GetDefault

valid {
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

GetActiveSessions

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

GetBastionShareableLink

valid {
    input.Body.vms[_].vm == {}
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.bastionHostName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HeatMap_Get

enum_HeatMapTypeParameter := [ "default" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.heatMapType == enum_HeatMapTypeParameter[_]
    input.Qs.topLeft == ARRAY
    input.Qs.botRight == ARRAY
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubRouteTables_CreateOrUpdate

valid {
    input.Body.properties.routes[_].name == STRING
    input.Body.properties.routes[_].destinationType == STRING
    input.Body.properties.routes[_].destinations[_] == STRING
    input.Body.properties.routes[_].nextHopType == STRING
    input.Body.properties.routes[_].nextHop == STRING
    input.Body.properties.labels[_] == STRING
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.ReqMap.routeTableName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubRouteTables_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.ReqMap.routeTableName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubRouteTables_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.ReqMap.routeTableName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubRouteTables_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubVirtualNetworkConnections_CreateOrUpdate

enum_VnetLocalRouteOverrideCriteria := [ "Contains", "Equal" ]

valid {
    input.Body.properties.remoteVirtualNetwork.id == STRING
    input.Body.properties.allowHubToRemoteVnetTransit == BOOLEAN
    input.Body.properties.allowRemoteVnetToUseHubVnetGateways == BOOLEAN
    input.Body.properties.enableInternetSecurity == BOOLEAN
    input.Body.properties.routingConfiguration.associatedRouteTable.id == STRING
    input.Body.properties.routingConfiguration.propagatedRouteTables.labels[_] == STRING
    input.Body.properties.routingConfiguration.propagatedRouteTables.ids[_].id == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutesConfig.vnetLocalRouteOverrideCriteria == enum_VnetLocalRouteOverrideCriteria[_]
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].name == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].addressPrefixes[_] == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].nextHopIpAddress == STRING
    input.Body.properties.routingConfiguration.inboundRouteMap.id == STRING
    input.Body.properties.routingConfiguration.outboundRouteMap.id == STRING
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.ReqMap.connectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubVirtualNetworkConnections_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.ReqMap.connectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubVirtualNetworkConnections_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.ReqMap.connectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HubVirtualNetworkConnections_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHubName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundEndpoints_CreateOrUpdate

enum_IpConfigurationPrivateIpAllocationMethod := [ "Static", "Dynamic" ]

valid {
    input.Body.properties.ipConfigurations[_].subnet.id == STRING
    input.Body.properties.ipConfigurations[_].privateIpAddress == STRING
    input.Body.properties.ipConfigurations[_].privateIpAllocationMethod == enum_IpConfigurationPrivateIpAllocationMethod[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.ReqMap.inboundEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundEndpoints_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.ReqMap.inboundEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundEndpoints_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.ReqMap.inboundEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundEndpoints_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundEndpoints_Update

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.dnsResolverName == STRING
    input.ReqMap.inboundEndpointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundNatRules_CreateOrUpdate

enum_TransportProtocol := [ "Udp", "Tcp", "All" ]

valid {
    input.Body.properties.frontendIPConfiguration.id == STRING
    input.Body.properties.protocol == enum_TransportProtocol[_]
    input.Body.properties.frontendPort == INTEGER
    input.Body.properties.backendPort == INTEGER
    input.Body.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.enableFloatingIP == BOOLEAN
    input.Body.properties.enableTcpReset == BOOLEAN
    input.Body.properties.frontendPortRangeStart == INTEGER
    input.Body.properties.frontendPortRangeEnd == INTEGER
    input.Body.properties.backendAddressPool.id == STRING
    input.Body.name == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.inboundNatRuleName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundNatRules_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.inboundNatRuleName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundNatRules_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.inboundNatRuleName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundNatRules_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InboundSecurityRule_CreateOrUpdate

enum_InboundSecurityRulesProtocol := [ "TCP", "UDP" ]

valid {
    input.Body.properties.rules[_].protocol == enum_InboundSecurityRulesProtocol[_]
    input.Body.properties.rules[_].sourceAddressPrefix == STRING
    input.Body.properties.rules[_].destinationPortRange == INTEGER
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.ReqMap.ruleCollectionName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InterfaceEndpoints_CreateOrUpdate

enum_RouteNextHopType := [ "VirtualNetworkGateway", "VnetLocal", "Internet", "VirtualAppliance", "None" ]
enum_SecurityRuleAccess := [ "Allow", "Deny" ]
enum_SecurityRuleDirection := [ "Inbound", "Outbound" ]
enum_SecurityRulePropertiesFormatProtocol := [ "Tcp", "Udp", "Icmp", "Esp", "*" ]

valid {
    input.Body.properties.fqdn == STRING
    input.Body.properties.endpointService.id == STRING
    input.Body.properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.provisioningState == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].etag == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.description == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.priority == INTEGER
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].properties.provisioningState == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].name == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.defaultSecurityRules[_].etag == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.resourceGuid == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.properties.provisioningState == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.etag == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.subnet.properties.routeTable.properties.routes[_].properties.provisioningState == STRING
    input.Body.properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.subnet.properties.routeTable.properties.routes[_].etag == STRING
    input.Body.properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.subnet.properties.routeTable.properties.provisioningState == STRING
    input.Body.properties.subnet.properties.routeTable.etag == STRING
    input.Body.properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.subnet.properties.serviceEndpoints[_].provisioningState == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].etag == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].etag == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.subnet.properties.resourceNavigationLinks[_].properties.linkedResourceType == STRING
    input.Body.properties.subnet.properties.resourceNavigationLinks[_].properties.link == STRING
    input.Body.properties.subnet.properties.resourceNavigationLinks[_].name == STRING
    input.Body.properties.subnet.properties.resourceNavigationLinks[_].id == STRING
    input.Body.properties.subnet.properties.serviceAssociationLinks[_].properties.linkedResourceType == STRING
    input.Body.properties.subnet.properties.serviceAssociationLinks[_].properties.link == STRING
    input.Body.properties.subnet.properties.serviceAssociationLinks[_].name == STRING
    input.Body.properties.subnet.properties.serviceAssociationLinks[_].id == STRING
    input.Body.properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.subnet.properties.delegations[_].properties.actions[_] == STRING
    input.Body.properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.subnet.properties.delegations[_].etag == STRING
    input.Body.properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.subnet.properties.provisioningState == STRING
    input.Body.properties.subnet.name == STRING
    input.Body.properties.subnet.etag == STRING
    input.Body.properties.subnet.id == STRING
    input.Body.etag == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.interfaceEndpointName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InterfaceEndpoints_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.interfaceEndpointName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InterfaceEndpoints_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.interfaceEndpointName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InterfaceEndpoints_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

InterfaceEndpoints_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

IpAllocations_CreateOrUpdate

enum_IPVersion := [ "IPv4", "IPv6" ]
enum_IpAllocationType := [ "Undefined", "Hypernet" ]

valid {
    input.Body.properties.type == enum_IpAllocationType[_]
    input.Body.properties.prefix == STRING
    input.Body.properties.prefixLength == INTEGER
    input.Body.properties.prefixType == enum_IPVersion[_]
    input.Body.properties.ipamAllocationId == STRING
    input.Body.properties.allocationTags.STRING == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipAllocationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpAllocations_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipAllocationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpAllocations_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipAllocationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpAllocations_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

IpAllocations_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpAllocations_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipAllocationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpGroups_CreateOrUpdate

valid {
    input.Body.properties.ipAddresses[_] == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipGroupsName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpGroups_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipGroupsName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpGroups_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipGroupsName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpGroups_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

IpGroups_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

IpGroups_UpdateGroups

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.ipGroupsName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ListActiveConnectivityConfigurations

valid {
    input.Body.regions[_] == STRING
    input.Body.skipToken == STRING
    input.ProviderMetadata.Region == STRING
}

ListActiveSecurityAdminRules

valid {
    input.Body.regions[_] == STRING
    input.Body.skipToken == STRING
    input.ProviderMetadata.Region == STRING
}

ListActiveSecurityUserRules

valid {
    input.Body.regions[_] == STRING
    input.Body.skipToken == STRING
    input.ProviderMetadata.Region == STRING
}

ListEffectiveVirtualNetworks_ByNetworkGroup

valid {
    input.Body.skipToken == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkManagerName == STRING
    input.ReqMap.networkGroupName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ListNetworkGroupMemberships

valid {
    input.ProviderMetadata.Region == STRING
}

ListNetworkManagerEffectiveConnectivityConfigurations

valid {
    input.Body.skipToken == STRING
    input.ProviderMetadata.Region == STRING
}

ListNetworkManagerEffectiveSecurityAdminRules

valid {
    input.Body.skipToken == STRING
    input.ProviderMetadata.Region == STRING
}

LoadBalancerBackendAddressPools_CreateOrUpdate

enum_BackendAddressPoolPropertiesFormatSyncMode := [ "Automatic", "Manual" ]
enum_GatewayLoadBalancerTunnelInterfaceProtocol := [ "None", "Native", "VXLAN" ]
enum_GatewayLoadBalancerTunnelInterfaceType := [ "None", "Internal", "External" ]
enum_LoadBalancerBackendAddressPropertiesFormatAdminState := [ "None", "Up", "Down" ]

valid {
    input.Body.properties.location == STRING
    input.Body.properties.tunnelInterfaces[_].port == INTEGER
    input.Body.properties.tunnelInterfaces[_].identifier == INTEGER
    input.Body.properties.tunnelInterfaces[_].protocol == enum_GatewayLoadBalancerTunnelInterfaceProtocol[_]
    input.Body.properties.tunnelInterfaces[_].type == enum_GatewayLoadBalancerTunnelInterfaceType[_]
    input.Body.properties.loadBalancerBackendAddresses[_].properties.virtualNetwork.id == STRING
    input.Body.properties.loadBalancerBackendAddresses[_].properties.subnet.id == STRING
    input.Body.properties.loadBalancerBackendAddresses[_].properties.ipAddress == STRING
    input.Body.properties.loadBalancerBackendAddresses[_].properties.loadBalancerFrontendIPConfiguration.id == STRING
    input.Body.properties.loadBalancerBackendAddresses[_].properties.adminState == enum_LoadBalancerBackendAddressPropertiesFormatAdminState[_]
    input.Body.properties.loadBalancerBackendAddresses[_].name == STRING
    input.Body.properties.drainPeriodInSeconds == INTEGER
    input.Body.properties.virtualNetwork.id == STRING
    input.Body.properties.syncMode == enum_BackendAddressPoolPropertiesFormatSyncMode[_]
    input.Body.name == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.backendAddressPoolName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerBackendAddressPools_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.backendAddressPoolName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerBackendAddressPools_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.backendAddressPoolName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerBackendAddressPools_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerFrontendIPConfigurations_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.frontendIPConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerFrontendIPConfigurations_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerLoadBalancingRules_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.loadBalancingRuleName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerLoadBalancingRules_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerNetworkInterfaces_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerOutboundRules_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.outboundRuleName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerOutboundRules_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerProbes_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.probeName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancerProbes_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancers_CreateOrUpdate

enum_BackendAddressPoolPropertiesFormatSyncMode := [ "Automatic", "Manual" ]
enum_DdosSettingsProtectionMode := [ "VirtualNetworkInherited", "Enabled", "Disabled" ]
enum_ExtendedLocationType := [ "EdgeZone" ]
enum_GatewayLoadBalancerTunnelInterfaceProtocol := [ "None", "Native", "VXLAN" ]
enum_GatewayLoadBalancerTunnelInterfaceType := [ "None", "Internal", "External" ]
enum_IPAllocationMethod := [ "Static", "Dynamic" ]
enum_IPVersion := [ "IPv4", "IPv6" ]
enum_LoadBalancerBackendAddressPropertiesFormatAdminState := [ "None", "Up", "Down" ]
enum_LoadBalancerSkuName := [ "Basic", "Standard", "Gateway" ]
enum_LoadBalancerSkuTier := [ "Regional", "Global" ]
enum_LoadBalancingRulePropertiesFormatLoadDistribution := [ "Default", "SourceIP", "SourceIPProtocol" ]
enum_NatGatewaySkuName := [ "Standard" ]
enum_OutboundRulePropertiesFormatProtocol := [ "Tcp", "Udp", "All" ]
enum_ProbePropertiesFormatProtocol := [ "Http", "Tcp", "Https" ]
enum_PublicIPAddressDnsSettingsDomainNameLabelScope := [ "TenantReuse", "SubscriptionReuse", "ResourceGroupReuse", "NoReuse" ]
enum_PublicIPAddressPropertiesFormatDeleteOption := [ "Delete", "Detach" ]
enum_PublicIPAddressPropertiesFormatMigrationPhase := [ "None", "Prepare", "Commit", "Abort", "Committed" ]
enum_PublicIPAddressSkuName := [ "Basic", "Standard" ]
enum_PublicIPAddressSkuTier := [ "Regional", "Global" ]
enum_RouteNextHopType := [ "VirtualNetworkGateway", "VnetLocal", "Internet", "VirtualAppliance", "None" ]
enum_SecurityRuleAccess := [ "Allow", "Deny" ]
enum_SecurityRuleDirection := [ "Inbound", "Outbound" ]
enum_SecurityRulePropertiesFormatProtocol := [ "Tcp", "Udp", "Icmp", "Esp", "*", "Ah" ]
enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies := [ "Enabled", "Disabled", "NetworkSecurityGroupEnabled", "RouteTableEnabled" ]
enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies := [ "Enabled", "Disabled" ]
enum_TransportProtocol := [ "Udp", "Tcp", "All" ]

valid {
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.sku.name == enum_LoadBalancerSkuName[_]
    input.Body.sku.tier == enum_LoadBalancerSkuTier[_]
    input.Body.properties.frontendIPConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.frontendIPConfigurations[_].properties.privateIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.type == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.extendedLocation.name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.publicIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.publicIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.dnsSettings.domainNameLabel == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.dnsSettings.domainNameLabelScope == enum_PublicIPAddressDnsSettingsDomainNameLabelScope[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.dnsSettings.fqdn == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.dnsSettings.reverseFqdn == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.ddosSettings.protectionMode == enum_DdosSettingsProtectionMode[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.ddosSettings.ddosProtectionPlan.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.ipTags[_].ipTagType == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.ipTags[_].tag == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.ipAddress == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.publicIPPrefix.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.properties == NESTED
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.zones[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.sku.name == enum_NatGatewaySkuName[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.publicIpAddresses[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.publicIpPrefixes[_].id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.zones[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.location == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.natGateway.tags.STRING == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.migrationPhase == enum_PublicIPAddressPropertiesFormatMigrationPhase[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.properties == NESTED
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.zones[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.properties.deleteOption == enum_PublicIPAddressPropertiesFormatDeleteOption[_]
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.zones[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.location == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPAddress.tags.STRING == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.publicIPPrefix.id == STRING
    input.Body.properties.frontendIPConfigurations[_].properties.gatewayLoadBalancer.id == STRING
    input.Body.properties.frontendIPConfigurations[_].name == STRING
    input.Body.properties.frontendIPConfigurations[_].zones[_] == STRING
    input.Body.properties.frontendIPConfigurations[_].id == STRING
    input.Body.properties.backendAddressPools[_].properties.location == STRING
    input.Body.properties.backendAddressPools[_].properties.tunnelInterfaces[_].port == INTEGER
    input.Body.properties.backendAddressPools[_].properties.tunnelInterfaces[_].identifier == INTEGER
    input.Body.properties.backendAddressPools[_].properties.tunnelInterfaces[_].protocol == enum_GatewayLoadBalancerTunnelInterfaceProtocol[_]
    input.Body.properties.backendAddressPools[_].properties.tunnelInterfaces[_].type == enum_GatewayLoadBalancerTunnelInterfaceType[_]
    input.Body.properties.backendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.virtualNetwork.id == STRING
    input.Body.properties.backendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.subnet.id == STRING
    input.Body.properties.backendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.ipAddress == STRING
    input.Body.properties.backendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.loadBalancerFrontendIPConfiguration.id == STRING
    input.Body.properties.backendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.adminState == enum_LoadBalancerBackendAddressPropertiesFormatAdminState[_]
    input.Body.properties.backendAddressPools[_].properties.loadBalancerBackendAddresses[_].name == STRING
    input.Body.properties.backendAddressPools[_].properties.drainPeriodInSeconds == INTEGER
    input.Body.properties.backendAddressPools[_].properties.virtualNetwork.id == STRING
    input.Body.properties.backendAddressPools[_].properties.syncMode == enum_BackendAddressPoolPropertiesFormatSyncMode[_]
    input.Body.properties.backendAddressPools[_].name == STRING
    input.Body.properties.backendAddressPools[_].id == STRING
    input.Body.properties.loadBalancingRules[_].properties.frontendIPConfiguration.id == STRING
    input.Body.properties.loadBalancingRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.loadBalancingRules[_].properties.backendAddressPools[_].id == STRING
    input.Body.properties.loadBalancingRules[_].properties.probe.id == STRING
    input.Body.properties.loadBalancingRules[_].properties.protocol == enum_TransportProtocol[_]
    input.Body.properties.loadBalancingRules[_].properties.loadDistribution == enum_LoadBalancingRulePropertiesFormatLoadDistribution[_]
    input.Body.properties.loadBalancingRules[_].properties.frontendPort == INTEGER
    input.Body.properties.loadBalancingRules[_].properties.backendPort == INTEGER
    input.Body.properties.loadBalancingRules[_].properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.loadBalancingRules[_].properties.enableFloatingIP == BOOLEAN
    input.Body.properties.loadBalancingRules[_].properties.enableTcpReset == BOOLEAN
    input.Body.properties.loadBalancingRules[_].properties.disableOutboundSnat == BOOLEAN
    input.Body.properties.loadBalancingRules[_].name == STRING
    input.Body.properties.loadBalancingRules[_].id == STRING
    input.Body.properties.probes[_].properties.protocol == enum_ProbePropertiesFormatProtocol[_]
    input.Body.properties.probes[_].properties.port == INTEGER
    input.Body.properties.probes[_].properties.intervalInSeconds == INTEGER
    input.Body.properties.probes[_].properties.numberOfProbes == INTEGER
    input.Body.properties.probes[_].properties.probeThreshold == INTEGER
    input.Body.properties.probes[_].properties.requestPath == STRING
    input.Body.properties.probes[_].name == STRING
    input.Body.properties.probes[_].id == STRING
    input.Body.properties.inboundNatRules[_].properties.frontendIPConfiguration.id == STRING
    input.Body.properties.inboundNatRules[_].properties.protocol == enum_TransportProtocol[_]
    input.Body.properties.inboundNatRules[_].properties.frontendPort == INTEGER
    input.Body.properties.inboundNatRules[_].properties.backendPort == INTEGER
    input.Body.properties.inboundNatRules[_].properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.inboundNatRules[_].properties.enableFloatingIP == BOOLEAN
    input.Body.properties.inboundNatRules[_].properties.enableTcpReset == BOOLEAN
    input.Body.properties.inboundNatRules[_].properties.frontendPortRangeStart == INTEGER
    input.Body.properties.inboundNatRules[_].properties.frontendPortRangeEnd == INTEGER
    input.Body.properties.inboundNatRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.inboundNatRules[_].name == STRING
    input.Body.properties.inboundNatRules[_].id == STRING
    input.Body.properties.inboundNatPools[_].properties.frontendIPConfiguration.id == STRING
    input.Body.properties.inboundNatPools[_].properties.protocol == enum_TransportProtocol[_]
    input.Body.properties.inboundNatPools[_].properties.frontendPortRangeStart == INTEGER
    input.Body.properties.inboundNatPools[_].properties.frontendPortRangeEnd == INTEGER
    input.Body.properties.inboundNatPools[_].properties.backendPort == INTEGER
    input.Body.properties.inboundNatPools[_].properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.inboundNatPools[_].properties.enableFloatingIP == BOOLEAN
    input.Body.properties.inboundNatPools[_].properties.enableTcpReset == BOOLEAN
    input.Body.properties.inboundNatPools[_].name == STRING
    input.Body.properties.inboundNatPools[_].id == STRING
    input.Body.properties.outboundRules[_].properties.allocatedOutboundPorts == INTEGER
    input.Body.properties.outboundRules[_].properties.frontendIPConfigurations[_].id == STRING
    input.Body.properties.outboundRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.outboundRules[_].properties.protocol == enum_OutboundRulePropertiesFormatProtocol[_]
    input.Body.properties.outboundRules[_].properties.enableTcpReset == BOOLEAN
    input.Body.properties.outboundRules[_].properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.outboundRules[_].name == STRING
    input.Body.properties.outboundRules[_].id == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancers_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancers_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancers_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LoadBalancers_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

LoadBalancers_ListInboundNatRulePortMappings

valid {
    input.Body.ipConfiguration.id == STRING
    input.Body.ipAddress == STRING
    input.ReqMap.groupName == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.backendPoolName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

LoadBalancers_MigrateToIpBased

valid {
    input.Body.pools[_] == STRING
    input.ReqMap.groupName == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

LoadBalancers_SwapPublicIpAddresses

valid {
    input.Body.frontendIPConfigurations[_].id == STRING
    input.Body.frontendIPConfigurations[_].properties.publicIPAddress.id == STRING
    input.ReqMap.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

LoadBalancers_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.loadBalancerName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LocalNetworkGateways_CreateOrUpdate

valid {
    input.Body.properties.localNetworkAddressSpace.addressPrefixes[_] == STRING
    input.Body.properties.gatewayIpAddress == STRING
    input.Body.properties.fqdn == STRING
    input.Body.properties.bgpSettings.asn == INTEGER
    input.Body.properties.bgpSettings.bgpPeeringAddress == STRING
    input.Body.properties.bgpSettings.peerWeight == INTEGER
    input.Body.properties.bgpSettings.bgpPeeringAddresses[_].ipconfigurationId == STRING
    input.Body.properties.bgpSettings.bgpPeeringAddresses[_].customBgpIpAddresses[_] == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.localNetworkGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LocalNetworkGateways_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.localNetworkGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LocalNetworkGateways_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.localNetworkGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LocalNetworkGateways_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LocalNetworkGateways_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.localNetworkGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ManagedRuleSets_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ManagementGroupNetworkManagerConnections_CreateOrUpdate

valid {
    input.Body.properties.networkManagerId == STRING
    input.Body.properties.description == STRING
    input.ProviderMetadata.Region == STRING
}

ManagementGroupNetworkManagerConnections_Delete

valid {
    input.ProviderMetadata.Region == STRING
}

ManagementGroupNetworkManagerConnections_Get

valid {
    input.ProviderMetadata.Region == STRING
}

ManagementGroupNetworkManagerConnections_List

valid {
    input.ReqMap.managementGroupId == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
}

NatGateways_CreateOrUpdate

enum_NatGatewaySkuName := [ "Standard" ]

valid {
    input.Body.sku.name == enum_NatGatewaySkuName[_]
    input.Body.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.publicIpAddresses[_].id == STRING
    input.Body.properties.publicIpPrefixes[_].id == STRING
    input.Body.zones[_] == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.natGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatGateways_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.natGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatGateways_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.natGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatGateways_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatGateways_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NatGateways_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.natGatewayName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatRules_CreateOrUpdate

enum_VpnGatewayNatRulePropertiesMode := [ "EgressSnat", "IngressSnat" ]
enum_VpnGatewayNatRulePropertiesType := [ "Static", "Dynamic" ]

valid {
    input.Body.properties.type == enum_VpnGatewayNatRulePropertiesType[_]
    input.Body.properties.mode == enum_VpnGatewayNatRulePropertiesMode[_]
    input.Body.properties.internalMappings[_].addressSpace == STRING
    input.Body.properties.internalMappings[_].portRange == STRING
    input.Body.properties.externalMappings[_].addressSpace == STRING
    input.Body.properties.externalMappings[_].portRange == STRING
    input.Body.properties.ipConfigurationId == STRING
    input.Body.name == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.gatewayName == STRING
    input.ReqMap.natRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatRules_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.gatewayName == STRING
    input.ReqMap.natRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatRules_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.gatewayName == STRING
    input.ReqMap.natRuleName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NatRules_ListByVpnGateway

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.gatewayName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkExperimentProfiles_CreateOrUpdate

enum_ProfilePropertiesEnabledState := [ "Enabled", "Disabled" ]

valid {
    input.Body.name == STRING
    input.Body.properties.enabledState == enum_ProfilePropertiesEnabledState[_]
    input.Body.etag == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.profileName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkExperimentProfiles_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkExperimentProfiles_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkExperimentProfiles_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkExperimentProfiles_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkExperimentProfiles_Update

enum_ProfileUpdatePropertiesEnabledState := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.enabledState == enum_ProfileUpdatePropertiesEnabledState[_]
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.profileName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkGroups_CreateOrUpdate

valid {
    input.Body.properties.description == STRING
    input.ProviderMetadata.Region == STRING
}

NetworkGroups_Delete

valid {
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

NetworkGroups_Get

valid {
    input.ProviderMetadata.Region == STRING
}

NetworkGroups_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkManagerName == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaceIPConfigurations_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.ipConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaceIPConfigurations_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaceLoadBalancers_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaceTapConfigurations_CreateOrUpdate

enum_BackendAddressPoolPropertiesFormatSyncMode := [ "Automatic", "Manual" ]
enum_DdosSettingsProtectionMode := [ "VirtualNetworkInherited", "Enabled", "Disabled" ]
enum_ExtendedLocationType := [ "EdgeZone" ]
enum_GatewayLoadBalancerTunnelInterfaceProtocol := [ "None", "Native", "VXLAN" ]
enum_GatewayLoadBalancerTunnelInterfaceType := [ "None", "Internal", "External" ]
enum_IPAllocationMethod := [ "Static", "Dynamic" ]
enum_IPVersion := [ "IPv4", "IPv6" ]
enum_LoadBalancerBackendAddressPropertiesFormatAdminState := [ "None", "Up", "Down" ]
enum_NatGatewaySkuName := [ "Standard" ]
enum_PublicIPAddressDnsSettingsDomainNameLabelScope := [ "TenantReuse", "SubscriptionReuse", "ResourceGroupReuse", "NoReuse" ]
enum_PublicIPAddressPropertiesFormatDeleteOption := [ "Delete", "Detach" ]
enum_PublicIPAddressPropertiesFormatMigrationPhase := [ "None", "Prepare", "Commit", "Abort", "Committed" ]
enum_PublicIPAddressSkuName := [ "Basic", "Standard" ]
enum_PublicIPAddressSkuTier := [ "Regional", "Global" ]
enum_RouteNextHopType := [ "VirtualNetworkGateway", "VnetLocal", "Internet", "VirtualAppliance", "None" ]
enum_SecurityRuleAccess := [ "Allow", "Deny" ]
enum_SecurityRuleDirection := [ "Inbound", "Outbound" ]
enum_SecurityRulePropertiesFormatProtocol := [ "Tcp", "Udp", "Icmp", "Esp", "*", "Ah" ]
enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies := [ "Enabled", "Disabled", "NetworkSecurityGroupEnabled", "RouteTableEnabled" ]
enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies := [ "Enabled", "Disabled" ]
enum_TransportProtocol := [ "Udp", "Tcp", "All" ]

valid {
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.gatewayLoadBalancer.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.virtualNetworkTaps[_] == NESTED
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationGatewayBackendAddressPools[_].properties.backendAddresses[_].fqdn == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationGatewayBackendAddressPools[_].properties.backendAddresses[_].ipAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationGatewayBackendAddressPools[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationGatewayBackendAddressPools[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].port == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].identifier == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].protocol == enum_GatewayLoadBalancerTunnelInterfaceProtocol[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].type == enum_GatewayLoadBalancerTunnelInterfaceType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.virtualNetwork.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.subnet.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.ipAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.loadBalancerFrontendIPConfiguration.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.adminState == enum_LoadBalancerBackendAddressPropertiesFormatAdminState[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.drainPeriodInSeconds == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.virtualNetwork.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].properties.syncMode == enum_BackendAddressPoolPropertiesFormatSyncMode[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerBackendAddressPools[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.frontendIPConfiguration.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.protocol == enum_TransportProtocol[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.frontendPort == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.backendPort == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.enableFloatingIP == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.enableTcpReset == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.frontendPortRangeStart == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.frontendPortRangeEnd == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.loadBalancerInboundNatRules[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.privateIPAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.privateIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.subnet.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.primary == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.extendedLocation.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.publicIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.publicIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.dnsSettings.domainNameLabel == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.dnsSettings.domainNameLabelScope == enum_PublicIPAddressDnsSettingsDomainNameLabelScope[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.dnsSettings.fqdn == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.dnsSettings.reverseFqdn == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.ddosSettings.protectionMode == enum_DdosSettingsProtectionMode[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.ddosSettings.ddosProtectionPlan.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.ipTags[_].ipTagType == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.ipTags[_].tag == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.ipAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.publicIPPrefix.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.properties == NESTED
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.sku.name == enum_NatGatewaySkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.publicIpAddresses[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.publicIpPrefixes[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.natGateway.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.migrationPhase == enum_PublicIPAddressPropertiesFormatMigrationPhase[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.properties == NESTED
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.properties.deleteOption == enum_PublicIPAddressPropertiesFormatDeleteOption[_]
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.publicIPAddress.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationSecurityGroups[_].properties == {}
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationSecurityGroups[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationSecurityGroups[_].location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.properties.applicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationNetworkInterfaceIPConfiguration.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.privateIPAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.privateIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.type == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.extendedLocation.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.publicIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.publicIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.domainNameLabel == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.domainNameLabelScope == enum_PublicIPAddressDnsSettingsDomainNameLabelScope[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.fqdn == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.reverseFqdn == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ddosSettings.protectionMode == enum_DdosSettingsProtectionMode[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ddosSettings.ddosProtectionPlan.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ipTags[_].ipTagType == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ipTags[_].tag == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ipAddress == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.publicIPPrefix.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.properties == NESTED
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.sku.name == enum_NatGatewaySkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.publicIpAddresses[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.publicIpPrefixes[_].id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.migrationPhase == enum_PublicIPAddressPropertiesFormatMigrationPhase[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.properties == NESTED
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.deleteOption == enum_PublicIPAddressPropertiesFormatDeleteOption[_]
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.location == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.tags.STRING == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPPrefix.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.properties.gatewayLoadBalancer.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.name == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.zones[_] == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationLoadBalancerFrontEndIPConfiguration.id == STRING
    input.Body.properties.virtualNetworkTap.properties.destinationPort == INTEGER
    input.Body.properties.virtualNetworkTap.id == STRING
    input.Body.properties.virtualNetworkTap.location == STRING
    input.Body.properties.virtualNetworkTap.tags.STRING == STRING
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.tapConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaceTapConfigurations_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.tapConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaceTapConfigurations_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.tapConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaceTapConfigurations_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_CreateOrUpdate

enum_BackendAddressPoolPropertiesFormatSyncMode := [ "Automatic", "Manual" ]
enum_DdosSettingsProtectionMode := [ "VirtualNetworkInherited", "Enabled", "Disabled" ]
enum_ExtendedLocationType := [ "EdgeZone" ]
enum_GatewayLoadBalancerTunnelInterfaceProtocol := [ "None", "Native", "VXLAN" ]
enum_GatewayLoadBalancerTunnelInterfaceType := [ "None", "Internal", "External" ]
enum_IPAllocationMethod := [ "Static", "Dynamic" ]
enum_IPVersion := [ "IPv4", "IPv6" ]
enum_LoadBalancerBackendAddressPropertiesFormatAdminState := [ "None", "Up", "Down" ]
enum_NatGatewaySkuName := [ "Standard" ]
enum_NetworkInterfacePropertiesFormatAuxiliaryMode := [ "None", "MaxConnections", "Floating", "AcceleratedConnections" ]
enum_NetworkInterfacePropertiesFormatAuxiliarySku := [ "None", "A1", "A2", "A4", "A8" ]
enum_NetworkInterfacePropertiesFormatMigrationPhase := [ "None", "Prepare", "Commit", "Abort", "Committed" ]
enum_NetworkInterfacePropertiesFormatNicType := [ "Standard", "Elastic" ]
enum_PublicIPAddressDnsSettingsDomainNameLabelScope := [ "TenantReuse", "SubscriptionReuse", "ResourceGroupReuse", "NoReuse" ]
enum_PublicIPAddressPropertiesFormatDeleteOption := [ "Delete", "Detach" ]
enum_PublicIPAddressPropertiesFormatMigrationPhase := [ "None", "Prepare", "Commit", "Abort", "Committed" ]
enum_PublicIPAddressSkuName := [ "Basic", "Standard" ]
enum_PublicIPAddressSkuTier := [ "Regional", "Global" ]
enum_RouteNextHopType := [ "VirtualNetworkGateway", "VnetLocal", "Internet", "VirtualAppliance", "None" ]
enum_SecurityRuleAccess := [ "Allow", "Deny" ]
enum_SecurityRuleDirection := [ "Inbound", "Outbound" ]
enum_SecurityRulePropertiesFormatProtocol := [ "Tcp", "Udp", "Icmp", "Esp", "*", "Ah" ]
enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies := [ "Enabled", "Disabled", "NetworkSecurityGroupEnabled", "RouteTableEnabled" ]
enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies := [ "Enabled", "Disabled" ]
enum_TransportProtocol := [ "Udp", "Tcp", "All" ]

valid {
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.networkSecurityGroup.id == STRING
    input.Body.properties.networkSecurityGroup.location == STRING
    input.Body.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.gatewayLoadBalancer.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationNetworkInterfaceIPConfiguration.properties == NESTED
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationNetworkInterfaceIPConfiguration.name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationNetworkInterfaceIPConfiguration.type == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationNetworkInterfaceIPConfiguration.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.privateIPAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.privateIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.type == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.subnet.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.extendedLocation.name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.publicIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.publicIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.domainNameLabel == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.domainNameLabelScope == enum_PublicIPAddressDnsSettingsDomainNameLabelScope[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.fqdn == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.dnsSettings.reverseFqdn == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ddosSettings.protectionMode == enum_DdosSettingsProtectionMode[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ddosSettings.ddosProtectionPlan.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ipTags[_].ipTagType == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ipTags[_].tag == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.ipAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.publicIPPrefix.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.properties == NESTED
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.servicePublicIPAddress.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.sku.name == enum_NatGatewaySkuName[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.publicIpAddresses[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.properties.publicIpPrefixes[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.natGateway.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.migrationPhase == enum_PublicIPAddressPropertiesFormatMigrationPhase[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.properties == NESTED
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.linkedPublicIPAddress.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.properties.deleteOption == enum_PublicIPAddressPropertiesFormatDeleteOption[_]
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPAddress.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.publicIPPrefix.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.properties.gatewayLoadBalancer.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.name == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationLoadBalancerFrontEndIPConfiguration.id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].properties.destinationPort == INTEGER
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.virtualNetworkTaps[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.applicationGatewayBackendAddressPools[_].properties.backendAddresses[_].fqdn == STRING
    input.Body.properties.ipConfigurations[_].properties.applicationGatewayBackendAddressPools[_].properties.backendAddresses[_].ipAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.applicationGatewayBackendAddressPools[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.applicationGatewayBackendAddressPools[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.location == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].port == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].identifier == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].protocol == enum_GatewayLoadBalancerTunnelInterfaceProtocol[_]
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.tunnelInterfaces[_].type == enum_GatewayLoadBalancerTunnelInterfaceType[_]
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.virtualNetwork.id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.subnet.id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.ipAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.loadBalancerFrontendIPConfiguration.id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].properties.adminState == enum_LoadBalancerBackendAddressPropertiesFormatAdminState[_]
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.loadBalancerBackendAddresses[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.drainPeriodInSeconds == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.virtualNetwork.id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].properties.syncMode == enum_BackendAddressPoolPropertiesFormatSyncMode[_]
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerBackendAddressPools[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.frontendIPConfiguration.id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.protocol == enum_TransportProtocol[_]
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.frontendPort == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.backendPort == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.enableFloatingIP == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.enableTcpReset == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.frontendPortRangeStart == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.frontendPortRangeEnd == INTEGER
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].properties.backendAddressPool.id == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.loadBalancerInboundNatRules[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.ipConfigurations[_].properties.privateIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.subnet.name == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.type == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.ipConfigurations[_].properties.primary == BOOLEAN
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.extendedLocation.name == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.publicIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.publicIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.dnsSettings.domainNameLabel == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.dnsSettings.domainNameLabelScope == enum_PublicIPAddressDnsSettingsDomainNameLabelScope[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.dnsSettings.fqdn == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.dnsSettings.reverseFqdn == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.ddosSettings.protectionMode == enum_DdosSettingsProtectionMode[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.ddosSettings.ddosProtectionPlan.id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.ipTags[_].ipTagType == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.ipTags[_].tag == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.ipAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.publicIPPrefix.id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.properties == NESTED
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.sku.name == enum_NatGatewaySkuName[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.publicIpAddresses[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.publicIpPrefixes[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.location == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.natGateway.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.migrationPhase == enum_PublicIPAddressPropertiesFormatMigrationPhase[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.properties == NESTED
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.properties.deleteOption == enum_PublicIPAddressPropertiesFormatDeleteOption[_]
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.zones[_] == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.id == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.location == STRING
    input.Body.properties.ipConfigurations[_].properties.publicIPAddress.tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].properties.applicationSecurityGroups[_].properties == {}
    input.Body.properties.ipConfigurations[_].properties.applicationSecurityGroups[_].id == STRING
    input.Body.properties.ipConfigurations[_].properties.applicationSecurityGroups[_].location == STRING
    input.Body.properties.ipConfigurations[_].properties.applicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.ipConfigurations[_].name == STRING
    input.Body.properties.ipConfigurations[_].type == STRING
    input.Body.properties.ipConfigurations[_].id == STRING
    input.Body.properties.dnsSettings.dnsServers[_] == STRING
    input.Body.properties.dnsSettings.internalDnsNameLabel == STRING
    input.Body.properties.enableAcceleratedNetworking == BOOLEAN
    input.Body.properties.disableTcpStateTracking == BOOLEAN
    input.Body.properties.enableIPForwarding == BOOLEAN
    input.Body.properties.workloadType == STRING
    input.Body.properties.nicType == enum_NetworkInterfacePropertiesFormatNicType[_]
    input.Body.properties.privateLinkService.extendedLocation.name == STRING
    input.Body.properties.privateLinkService.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.privateIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.type == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.extendedLocation.name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.publicIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.publicIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.dnsSettings.domainNameLabel == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.dnsSettings.domainNameLabelScope == enum_PublicIPAddressDnsSettingsDomainNameLabelScope[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.dnsSettings.fqdn == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.dnsSettings.reverseFqdn == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.ddosSettings.protectionMode == enum_DdosSettingsProtectionMode[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.ddosSettings.ddosProtectionPlan.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.ipTags[_].ipTagType == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.ipTags[_].tag == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.ipAddress == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.publicIPPrefix.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.properties == NESTED
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.servicePublicIPAddress.zones[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.sku.name == enum_NatGatewaySkuName[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.idleTimeoutInMinutes == INTEGER
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.publicIpAddresses[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.properties.publicIpPrefixes[_].id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.zones[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.location == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.natGateway.tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.migrationPhase == enum_PublicIPAddressPropertiesFormatMigrationPhase[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.sku.name == enum_PublicIPAddressSkuName[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.sku.tier == enum_PublicIPAddressSkuTier[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.properties == NESTED
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.linkedPublicIPAddress.zones[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.properties.deleteOption == enum_PublicIPAddressPropertiesFormatDeleteOption[_]
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.zones[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.location == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPAddress.tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.publicIPPrefix.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].properties.gatewayLoadBalancer.id == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].name == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].zones[_] == STRING
    input.Body.properties.privateLinkService.properties.loadBalancerFrontendIpConfigurations[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.privateIPAllocationMethod == enum_IPAllocationMethod[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.name == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.type == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.primary == BOOLEAN
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].properties.privateIPAddressVersion == enum_IPVersion[_]
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].name == STRING
    input.Body.properties.privateLinkService.properties.ipConfigurations[_].id == STRING
    input.Body.properties.privateLinkService.properties.visibility.subscriptions[_] == STRING
    input.Body.properties.privateLinkService.properties.autoApproval.subscriptions[_] == STRING
    input.Body.properties.privateLinkService.properties.fqdns[_] == STRING
    input.Body.properties.privateLinkService.properties.enableProxyProtocol == BOOLEAN
    input.Body.properties.privateLinkService.id == STRING
    input.Body.properties.privateLinkService.location == STRING
    input.Body.properties.privateLinkService.tags.STRING == STRING
    input.Body.properties.migrationPhase == enum_NetworkInterfacePropertiesFormatMigrationPhase[_]
    input.Body.properties.auxiliaryMode == enum_NetworkInterfacePropertiesFormatAuxiliaryMode[_]
    input.Body.properties.auxiliarySku == enum_NetworkInterfacePropertiesFormatAuxiliarySku[_]
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_GetCloudServiceNetworkInterface

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.cloudServiceName == STRING
    input.ReqMap.roleInstanceName == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_GetEffectiveRouteTable

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineScaleSetName == STRING
    input.ReqMap.virtualmachineIndex == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.ipConfigurationName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineScaleSetName == STRING
    input.ReqMap.virtualmachineIndex == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkInterfaces_ListCloudServiceNetworkInterfaces

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.cloudServiceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_ListCloudServiceRoleInstanceNetworkInterfaces

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.cloudServiceName == STRING
    input.ReqMap.roleInstanceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_ListEffectiveNetworkSecurityGroups

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineScaleSetName == STRING
    input.ReqMap.virtualmachineIndex == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineScaleSetName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces

enum_ApiVersionVmssParameter := [ "2017-03-30" ]

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineScaleSetName == STRING
    input.ReqMap.virtualmachineIndex == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == enum_ApiVersionVmssParameter[_]
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkManagerCommits_Post

enum_ConfigurationType := [ "SecurityAdmin", "Connectivity" ]

valid {
    input.Body.targetLocations[_] == STRING
    input.Body.configurationIds[_] == STRING
    input.Body.commitType == enum_ConfigurationType[_]
    input.ProviderMetadata.Region == STRING
}

NetworkManagerDeploymentStatus_List

enum_ConfigurationType := [ "SecurityAdmin", "Connectivity" ]

valid {
    input.Body.regions[_] == STRING
    input.Body.deploymentTypes[_] == enum_ConfigurationType[_]
    input.Body.skipToken == STRING
    input.ProviderMetadata.Region == STRING
}

NetworkManagers_CreateOrUpdate

enum_ConfigurationType := [ "SecurityAdmin", "Connectivity" ]

valid {
    input.Body.properties.description == STRING
    input.Body.properties.networkManagerScopes.managementGroups[_] == STRING
    input.Body.properties.networkManagerScopes.subscriptions[_] == STRING
    input.Body.properties.networkManagerScopeAccesses[_] == enum_ConfigurationType[_]
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Region == STRING
}

NetworkManagers_Delete

valid {
    input.Qs.force == BOOLEAN
    input.ProviderMetadata.Region == STRING
}

NetworkManagers_Get

valid {
    input.ProviderMetadata.Region == STRING
}

NetworkManagers_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkManagers_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkManagers_Patch

valid {
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Region == STRING
}

NetworkProfiles_CreateOrUpdate

enum_RouteNextHopType := [ "VirtualNetworkGateway", "VnetLocal", "Internet", "VirtualAppliance", "None" ]
enum_SecurityRuleAccess := [ "Allow", "Deny" ]
enum_SecurityRuleDirection := [ "Inbound", "Outbound" ]
enum_SecurityRulePropertiesFormatProtocol := [ "Tcp", "Udp", "Icmp", "Esp", "*", "Ah" ]
enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies := [ "Enabled", "Disabled", "NetworkSecurityGroupEnabled", "RouteTableEnabled" ]
enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.addressPrefix == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.addressPrefixes[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.flushConnection == BOOLEAN
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.description == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].type == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.properties.securityRules[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.location == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.networkSecurityGroup.tags.STRING == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopType == enum_RouteNextHopType[_]
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].properties.hasBgpOverride == BOOLEAN
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].type == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.routes[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.properties.disableBgpRoutePropagation == BOOLEAN
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.location == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.routeTable.tags.STRING == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.natGateway.id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpoints[_].service == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpoints[_].locations[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.description == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.service == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].properties.serviceResources[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].type == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceEndpointPolicyDefinitions[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.serviceAlias == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].properties.contextualServiceEndpointPolicies[_] == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].location == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.serviceEndpointPolicies[_].tags.STRING == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.ipAllocations[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.delegations[_].properties.serviceName == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.delegations[_].name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.delegations[_].type == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.delegations[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.privateEndpointNetworkPolicies == enum_SubnetPropertiesFormatPrivateEndpointNetworkPolicies[_]
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.privateLinkServiceNetworkPolicies == enum_SubnetPropertiesFormatPrivateLinkServiceNetworkPolicies[_]
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.applicationGatewayIPConfigurations[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.properties.defaultOutboundAccess == BOOLEAN
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.type == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.ipConfigurations[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].properties.containerNetworkInterfaces[_].id == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].name == STRING
    input.Body.properties.containerNetworkInterfaceConfigurations[_].id == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkProfileName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkProfiles_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkProfileName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkProfiles_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkProfileName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkProfiles_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkProfiles_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkProfiles_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkProfileName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkSecurityGroups_CreateOrUpdate

enum_SecurityRuleAccess := [ "Allow", "Deny" ]
enum_SecurityRuleDirection := [ "Inbound", "Outbound" ]
enum_SecurityRulePropertiesFormatProtocol := [ "Tcp", "Udp", "Icmp", "Esp", "*", "Ah" ]

valid {
    input.Body.properties.flushConnection == BOOLEAN
    input.Body.properties.securityRules[_].properties.description == STRING
    input.Body.properties.securityRules[_].properties.protocol == enum_SecurityRulePropertiesFormatProtocol[_]
    input.Body.properties.securityRules[_].properties.sourcePortRange == STRING
    input.Body.properties.securityRules[_].properties.destinationPortRange == STRING
    input.Body.properties.securityRules[_].properties.sourceAddressPrefix == STRING
    input.Body.properties.securityRules[_].properties.sourceAddressPrefixes[_] == STRING
    input.Body.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].properties == {}
    input.Body.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].id == STRING
    input.Body.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].location == STRING
    input.Body.properties.securityRules[_].properties.sourceApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.securityRules[_].properties.destinationAddressPrefix == STRING
    input.Body.properties.securityRules[_].properties.destinationAddressPrefixes[_] == STRING
    input.Body.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].properties == {}
    input.Body.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].id == STRING
    input.Body.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].location == STRING
    input.Body.properties.securityRules[_].properties.destinationApplicationSecurityGroups[_].tags.STRING == STRING
    input.Body.properties.securityRules[_].properties.sourcePortRanges[_] == STRING
    input.Body.properties.securityRules[_].properties.destinationPortRanges[_] == STRING
    input.Body.properties.securityRules[_].properties.access == enum_SecurityRuleAccess[_]
    input.Body.properties.securityRules[_].properties.priority == INTEGER
    input.Body.properties.securityRules[_].properties.direction == enum_SecurityRuleDirection[_]
    input.Body.properties.securityRules[_].name == STRING
    input.Body.properties.securityRules[_].type == STRING
    input.Body.properties.securityRules[_].id == STRING
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkSecurityGroups_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkSecurityGroups_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkSecurityGroups_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkSecurityGroups_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkSecurityGroups_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkSecurityGroupName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkSecurityPerimeters_CreateOrUpdate

valid {
    input.Body.properties == {}
    input.Body.location == STRING
    input.Body.name == STRING
    input.Body.id == STRING
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Region == STRING
}

NetworkSecurityPerimeters_Delete

valid {
    input.ProviderMetadata.Region == STRING
}

NetworkSecurityPerimeters_Get

valid {
    input.ProviderMetadata.Region == STRING
}

NetworkSecurityPerimeters_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkSecurityPerimeters_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$top == INTEGER
    input.Qs.$skipToken == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkSecurityPerimeters_Patch

valid {
    input.Body.tags.STRING == STRING
    input.ProviderMetadata.Region == STRING
}

NetworkVirtualApplianceConnections_CreateOrUpdate

enum_VnetLocalRouteOverrideCriteria := [ "Contains", "Equal" ]

valid {
    input.Body.properties.name == STRING
    input.Body.properties.asn == INTEGER
    input.Body.properties.tunnelIdentifier == INTEGER
    input.Body.properties.bgpPeerAddress[_] == STRING
    input.Body.properties.enableInternetSecurity == BOOLEAN
    input.Body.properties.routingConfiguration.associatedRouteTable.id == STRING
    input.Body.properties.routingConfiguration.propagatedRouteTables.labels[_] == STRING
    input.Body.properties.routingConfiguration.propagatedRouteTables.ids[_].id == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutesConfig.vnetLocalRouteOverrideCriteria == enum_VnetLocalRouteOverrideCriteria[_]
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].name == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].addressPrefixes[_] == STRING
    input.Body.properties.routingConfiguration.vnetRoutes.staticRoutes[_].nextHopIpAddress == STRING
    input.Body.properties.routingConfiguration.inboundRouteMap.id == STRING
    input.Body.properties.routingConfiguration.outboundRouteMap.id == STRING
    input.Body.name == STRING
    input.Body.id == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.ReqMap.connectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualApplianceConnections_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.ReqMap.connectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualApplianceConnections_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.ReqMap.connectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualApplianceConnections_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualAppliances_CreateOrUpdate

enum_ManagedServiceIdentityType := [ "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned", "None" ]

valid {
    input.Body.properties.nvaSku.vendor == STRING
    input.Body.properties.nvaSku.bundledScaleUnit == STRING
    input.Body.properties.nvaSku.marketPlaceVersion == STRING
    input.Body.properties.bootStrapConfigurationBlobs[_] == STRING
    input.Body.properties.virtualHub.id == STRING
    input.Body.properties.cloudInitConfigurationBlobs[_] == STRING
    input.Body.properties.cloudInitConfiguration == STRING
    input.Body.properties.virtualApplianceAsn == INTEGER
    input.Body.properties.sshPublicKey == STRING
    input.Body.properties.additionalNics[_].name == STRING
    input.Body.properties.additionalNics[_].hasPublicIp == BOOLEAN
    input.Body.properties.internetIngressPublicIps[_].id == STRING
    input.Body.properties.delegation.serviceName == STRING
    input.Body.properties.partnerManagedResource == {}
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualAppliances_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualAppliances_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualAppliances_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkVirtualAppliances_ListByResourceGroup

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkVirtualAppliances_UpdateTags

valid {
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkVirtualApplianceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_CheckConnectivity

enum_ConnectivityParametersProtocol := [ "Tcp", "Http", "Https", "Icmp" ]
enum_HTTPConfigurationMethod := [ "Get" ]
enum_IPVersion := [ "IPv4", "IPv6" ]

valid {
    input.Body.source.resourceId == STRING
    input.Body.source.port == INTEGER
    input.Body.destination.resourceId == STRING
    input.Body.destination.address == STRING
    input.Body.destination.port == INTEGER
    input.Body.protocol == enum_ConnectivityParametersProtocol[_]
    input.Body.protocolConfiguration.HTTPConfiguration.method == enum_HTTPConfigurationMethod[_]
    input.Body.protocolConfiguration.HTTPConfiguration.headers[_].name == STRING
    input.Body.protocolConfiguration.HTTPConfiguration.headers[_].value == STRING
    input.Body.protocolConfiguration.HTTPConfiguration.validStatusCodes[_] == INTEGER
    input.Body.preferredIPVersion == enum_IPVersion[_]
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_CreateOrUpdate

valid {
    input.Body.properties == {}
    input.Body.id == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_Delete

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_Get

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetAzureReachabilityReport

valid {
    input.Body.providerLocation.country == STRING
    input.Body.providerLocation.state == STRING
    input.Body.providerLocation.city == STRING
    input.Body.providers[_] == STRING
    input.Body.azureLocations[_] == STRING
    input.Body.startTime == STRING
    input.Body.endTime == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetFlowLogStatus

valid {
    input.Body.targetResourceId == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetNetworkConfigurationDiagnostic

enum_Direction := [ "Inbound", "Outbound" ]
enum_NetworkConfigurationDiagnosticParametersVerbosityLevel := [ "Normal", "Minimum", "Full" ]

valid {
    input.Body.targetResourceId == STRING
    input.Body.verbosityLevel == enum_NetworkConfigurationDiagnosticParametersVerbosityLevel[_]
    input.Body.profiles[_].direction == enum_Direction[_]
    input.Body.profiles[_].protocol == STRING
    input.Body.profiles[_].source == STRING
    input.Body.profiles[_].destination == STRING
    input.Body.profiles[_].destinationPort == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetNextHop

valid {
    input.Body.targetResourceId == STRING
    input.Body.sourceIPAddress == STRING
    input.Body.destinationIPAddress == STRING
    input.Body.targetNicResourceId == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetTopology

valid {
    input.Body.targetResourceGroupName == STRING
    input.Body.targetVirtualNetwork.id == STRING
    input.Body.targetSubnet.id == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetTroubleshooting

valid {
    input.Body.targetResourceId == STRING
    input.Body.properties.storageId == STRING
    input.Body.properties.storagePath == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetTroubleshootingResult

valid {
    input.Body.targetResourceId == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_GetVMSecurityRules

valid {
    input.Body.targetResourceId == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_List

valid {
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_ListAll

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

NetworkWatchers_ListAvailableProviders

valid {
    input.Body.azureLocations[_] == STRING
    input.Body.country == STRING
    input.Body.state == STRING
    input.Body.city == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkWatcherName == STRING
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkWatchers_SetFlowLogConfiguration