MICROSOFT.AZURESTACKHCI

ArcSettings_ConsentAndInstallDefaultExtensions

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

ArcSettings_Create

valid {
    input.Body.properties.arcInstanceResourceGroup == STRING
    input.Body.properties.arcApplicationClientId == STRING
    input.Body.properties.arcApplicationTenantId == STRING
    input.Body.properties.arcServicePrincipalObjectId == STRING
    input.Body.properties.arcApplicationObjectId == STRING
    input.Body.properties.connectivityProperties.STRING == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.arcSettingName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ArcSettings_CreateIdentity

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

ArcSettings_Delete

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

ArcSettings_GeneratePassword

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

ArcSettings_Get

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

ArcSettings_InitializeDisableProcess

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

ArcSettings_ListByCluster

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

ArcSettings_Update

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.connectivityProperties.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.arcSettingName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Clusters_ConfigureRemoteSupport

enum_RemoteSupportRequestPropertiesAccessLevel := [ "None", "Diagnostics", "DiagnosticsAndRepair" ]
enum_RemoteSupportRequestPropertiesRemoteSupportType := [ "Enable", "Revoke" ]

valid {
    input.Body.properties.accessLevel == enum_RemoteSupportRequestPropertiesAccessLevel[_]
    input.Body.properties.expirationTimeStamp == STRING
    input.Body.properties.remoteSupportType == enum_RemoteSupportRequestPropertiesRemoteSupportType[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Clusters_Create

enum_ClusterDesiredPropertiesDiagnosticLevel := [ "Off", "Basic", "Enhanced" ]
enum_ClusterDesiredPropertiesWindowsServerSubscription := [ "Disabled", "Enabled" ]
enum_ManagedServiceIdentityType := [ "None", "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned" ]
enum_SoftwareAssurancePropertiesSoftwareAssuranceIntent := [ "Enable", "Disable" ]

valid {
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.Body.properties.cloudManagementEndpoint == STRING
    input.Body.properties.aadClientId == STRING
    input.Body.properties.aadTenantId == STRING
    input.Body.properties.aadApplicationObjectId == STRING
    input.Body.properties.aadServicePrincipalObjectId == STRING
    input.Body.properties.softwareAssuranceProperties.softwareAssuranceIntent == enum_SoftwareAssurancePropertiesSoftwareAssuranceIntent[_]
    input.Body.properties.logCollectionProperties == {}
    input.Body.properties.remoteSupportProperties == {}
    input.Body.properties.desiredProperties.windowsServerSubscription == enum_ClusterDesiredPropertiesWindowsServerSubscription[_]
    input.Body.properties.desiredProperties.diagnosticLevel == enum_ClusterDesiredPropertiesDiagnosticLevel[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Clusters_CreateIdentity

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

Clusters_Delete

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

Clusters_ExtendSoftwareAssuranceBenefit

enum_SoftwareAssuranceChangeRequestPropertiesSoftwareAssuranceIntent := [ "Enable", "Disable" ]

valid {
    input.Body.properties.softwareAssuranceIntent == enum_SoftwareAssuranceChangeRequestPropertiesSoftwareAssuranceIntent[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Clusters_Get

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

Clusters_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
}

Clusters_ListBySubscription

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

Clusters_TriggerLogCollection

valid {
    input.Body.properties.fromDate == STRING
    input.Body.properties.toDate == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Clusters_Update

enum_ClusterDesiredPropertiesDiagnosticLevel := [ "Off", "Basic", "Enhanced" ]
enum_ClusterDesiredPropertiesWindowsServerSubscription := [ "Disabled", "Enabled" ]
enum_ManagedServiceIdentityType := [ "None", "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned" ]

valid {
    input.Body.tags.STRING == STRING
    input.Body.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.identity.userAssignedIdentities.STRING == {}
    input.Body.properties.cloudManagementEndpoint == STRING
    input.Body.properties.aadClientId == STRING
    input.Body.properties.aadTenantId == STRING
    input.Body.properties.desiredProperties.windowsServerSubscription == enum_ClusterDesiredPropertiesWindowsServerSubscription[_]
    input.Body.properties.desiredProperties.diagnosticLevel == enum_ClusterDesiredPropertiesDiagnosticLevel[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Clusters_UploadCertificate

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

DeploymentSettings_CreateOrUpdate

enum_DeploymentMode := [ "Validate", "Deploy" ]
enum_EceSecrets := [ "AzureStackLCMUserCredential", "DefaultARBApplication", "LocalAdminCredential", "WitnessStorageKey" ]

valid {
    input.Body.properties.arcNodeResourceIds[_] == STRING
    input.Body.properties.deploymentMode == enum_DeploymentMode[_]
    input.Body.properties.deploymentConfiguration.version == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.hvciProtection == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.drtmProtection == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.driftControlEnforced == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.credentialGuardEnforced == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.smbSigningEnforced == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.smbClusterEncryption == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.sideChannelMitigationEnforced == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.bitlockerBootVolume == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.bitlockerDataVolumes == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.securitySettings.wdacEnforced == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.observability.streamingDataClient == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.observability.euLocation == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.observability.episodicDataUpload == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.cluster.name == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.cluster.witnessType == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.cluster.witnessPath == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.cluster.cloudAccountName == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.cluster.azureServiceEndpoint == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.storage.configurationMode == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.namingPrefix == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.domainFqdn == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.infrastructureNetwork[_].subnetMask == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.infrastructureNetwork[_].gateway == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.infrastructureNetwork[_].ipPools[_].startingAddress == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.infrastructureNetwork[_].ipPools[_].endingAddress == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.infrastructureNetwork[_].dnsServers[_] == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.infrastructureNetwork[_].useDhcp == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.physicalNodes[_].name == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.physicalNodes[_].ipv4Address == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].name == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].trafficType[_] == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].adapter[_] == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].overrideVirtualSwitchConfiguration == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].virtualSwitchConfigurationOverrides.enableIov == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].virtualSwitchConfigurationOverrides.loadBalancingAlgorithm == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].overrideQosPolicy == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].qosPolicyOverrides.priorityValue8021Action_Cluster == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].qosPolicyOverrides.priorityValue8021Action_SMB == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].qosPolicyOverrides.bandwidthPercentage_SMB == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].overrideAdapterProperty == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].adapterPropertyOverrides.jumboPacket == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].adapterPropertyOverrides.networkDirect == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.intents[_].adapterPropertyOverrides.networkDirectTechnology == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.storageNetworks[_].name == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.storageNetworks[_].networkAdapterName == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.storageNetworks[_].vlanId == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.storageNetworks[_].storageAdapterIPInfo[_].physicalNode == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.storageNetworks[_].storageAdapterIPInfo[_].ipv4Address == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.storageNetworks[_].storageAdapterIPInfo[_].subnetMask == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.storageConnectivitySwitchless == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.hostNetwork.enableStorageAutoIp == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.sdnIntegration.networkController.macAddressPoolStart == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.sdnIntegration.networkController.macAddressPoolStop == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.sdnIntegration.networkController.networkVirtualizationEnabled == BOOLEAN
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.adouPath == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.secretsLocation == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.secrets[_].secretName == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.secrets[_].eceSecretName == enum_EceSecrets[_]
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.secrets[_].secretLocation == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].deploymentData.optionalServices.customLocation == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.sbeDeploymentInfo.version == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.sbeDeploymentInfo.family == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.sbeDeploymentInfo.publisher == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.sbeDeploymentInfo.sbeManifestSource == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.sbeDeploymentInfo.sbeManifestCreationDate == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.partnerProperties[_].name == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.partnerProperties[_].value == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.credentialList[_].secretName == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.credentialList[_].eceSecretName == STRING
    input.Body.properties.deploymentConfiguration.scaleUnits[_].sbePartnerInfo.credentialList[_].secretLocation == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.deploymentSettingsName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DeploymentSettings_Delete

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

DeploymentSettings_Get

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

DeploymentSettings_ListByClusters

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

EdgeDevices_CreateOrUpdate

enum_DeviceKind := [ "HCI" ]

valid {
    input.Body.kind == enum_DeviceKind[_]
    input.Body.STRING == STRING
    input.ReqMap.resourceUri == STRING
    input.ReqMap.edgeDeviceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

EdgeDevices_Delete

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

EdgeDevices_Get

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

EdgeDevices_List

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

EdgeDevices_Validate

valid {
    input.Body.edgeDeviceIds[_] == STRING
    input.Body.additionalInfo == STRING
    input.ReqMap.resourceUri == STRING
    input.ReqMap.edgeDeviceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Extensions_Create

valid {
    input.Body.properties.extensionParameters.forceUpdateTag == STRING
    input.Body.properties.extensionParameters.publisher == STRING
    input.Body.properties.extensionParameters.type == STRING
    input.Body.properties.extensionParameters.typeHandlerVersion == STRING
    input.Body.properties.extensionParameters.autoUpgradeMinorVersion == BOOLEAN
    input.Body.properties.extensionParameters.settings.STRING == STRING
    input.Body.properties.extensionParameters.protectedSettings.STRING == STRING
    input.Body.properties.extensionParameters.enableAutomaticUpgrade == BOOLEAN
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.arcSettingName == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Extensions_Delete

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

Extensions_Get

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

Extensions_ListByArcSetting

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

Extensions_Update

valid {
    input.Body.properties.extensionParameters.typeHandlerVersion == STRING
    input.Body.properties.extensionParameters.enableAutomaticUpgrade == BOOLEAN
    input.Body.properties.extensionParameters.settings.STRING == STRING
    input.Body.properties.extensionParameters.protectedSettings.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.arcSettingName == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Extensions_Upgrade

valid {
    input.Body.targetVersion == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.arcSettingName == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

GalleryImages_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_GalleryImagePropertiesCloudInitDataSource := [ "NoCloud", "Azure" ]
enum_GalleryImagePropertiesHyperVGeneration := [ "V1", "V2" ]
enum_GalleryImagePropertiesOsType := [ "Windows", "Linux" ]

valid {
    input.Body.properties.containerId == STRING
    input.Body.properties.imagePath == STRING
    input.Body.properties.osType == enum_GalleryImagePropertiesOsType[_]
    input.Body.properties.cloudInitDataSource == enum_GalleryImagePropertiesCloudInitDataSource[_]
    input.Body.properties.hyperVGeneration == enum_GalleryImagePropertiesHyperVGeneration[_]
    input.Body.properties.identifier.publisher == STRING
    input.Body.properties.identifier.offer == STRING
    input.Body.properties.identifier.sku == STRING
    input.Body.properties.version.name == STRING
    input.Body.properties.version.properties.storageProfile.osDiskImage == {}
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.galleryImageName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

GalleryImages_Delete

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

GalleryImages_Get

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

GalleryImages_List

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
}

GalleryImages_ListAll

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

GalleryImages_Update

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

GuestAgent_Create

enum_ProvisioningAction := [ "install", "uninstall", "repair" ]

valid {
    input.Body.properties.credentials.username == STRING
    input.Body.properties.credentials.password == STRING
    input.Body.properties.provisioningAction == enum_ProvisioningAction[_]
    input.Body.STRING == STRING
    input.ReqMap.resourceUri == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

GuestAgent_Delete

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

GuestAgent_Get

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

GuestAgents_List

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

GuestAgents_ListByVirtualMachines

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

HybridIdentityMetadata_Create

valid {
    input.Body.properties.resourceUid == STRING
    input.Body.properties.publicKey == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineName == STRING
    input.ReqMap.metadataName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

HybridIdentityMetadata_Delete

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

HybridIdentityMetadata_Get

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

HybridIdentityMetadata_List

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

HybridIdentityMetadata_ListByVirtualMachines

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

LogicalNetworks_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_IPPoolIpPoolType := [ "vm", "vippool" ]
enum_SubnetPropertiesFormatIpAllocationMethod := [ "Dynamic", "Static" ]

valid {
    input.Body.properties.dhcpOptions.dnsServers[_] == STRING
    input.Body.properties.subnets[_].properties.addressPrefix == STRING
    input.Body.properties.subnets[_].properties.addressPrefixes[_] == STRING
    input.Body.properties.subnets[_].properties.ipAllocationMethod == enum_SubnetPropertiesFormatIpAllocationMethod[_]
    input.Body.properties.subnets[_].properties.ipConfigurationReferences[_].ID == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.subnets[_].properties.ipPools[_].name == STRING
    input.Body.properties.subnets[_].properties.ipPools[_].ipPoolType == enum_IPPoolIpPoolType[_]
    input.Body.properties.subnets[_].properties.ipPools[_].start == STRING
    input.Body.properties.subnets[_].properties.ipPools[_].end == STRING
    input.Body.properties.subnets[_].properties.ipPools[_].info == {}
    input.Body.properties.subnets[_].properties.vlan == INTEGER
    input.Body.properties.subnets[_].name == STRING
    input.Body.properties.vmSwitchName == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.logicalNetworkName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

LogicalNetworks_Delete

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

LogicalNetworks_Get

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

LogicalNetworks_List

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
}

LogicalNetworks_ListAll

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

LogicalNetworks_Update

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

MachineExtensions_CreateOrUpdate

valid {
    input.Body.properties.forceUpdateTag == STRING
    input.Body.properties.publisher == STRING
    input.Body.properties.type == STRING
    input.Body.properties.typeHandlerVersion == STRING
    input.Body.properties.autoUpgradeMinorVersion == BOOLEAN
    input.Body.properties.settings.STRING == STRING
    input.Body.properties.protectedSettings.STRING == STRING
    input.Body.properties.instanceView.status == {}
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.name == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

MachineExtensions_Delete

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

MachineExtensions_Get

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

MachineExtensions_ListByVirtualMachines

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

MachineExtensions_Update

valid {
    input.Body.properties.forceUpdateTag == STRING
    input.Body.properties.publisher == STRING
    input.Body.properties.type == STRING
    input.Body.properties.typeHandlerVersion == STRING
    input.Body.properties.autoUpgradeMinorVersion == BOOLEAN
    input.Body.properties.settings.STRING == STRING
    input.Body.properties.protectedSettings.STRING == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.name == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

MarketplaceGalleryImages_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_MarketplaceGalleryImagePropertiesCloudInitDataSource := [ "NoCloud", "Azure" ]
enum_MarketplaceGalleryImagePropertiesHyperVGeneration := [ "V1", "V2" ]
enum_MarketplaceGalleryImagePropertiesOsType := [ "Windows", "Linux" ]

valid {
    input.Body.properties.containerId == STRING
    input.Body.properties.osType == enum_MarketplaceGalleryImagePropertiesOsType[_]
    input.Body.properties.cloudInitDataSource == enum_MarketplaceGalleryImagePropertiesCloudInitDataSource[_]
    input.Body.properties.hyperVGeneration == enum_MarketplaceGalleryImagePropertiesHyperVGeneration[_]
    input.Body.properties.identifier.publisher == STRING
    input.Body.properties.identifier.offer == STRING
    input.Body.properties.identifier.sku == STRING
    input.Body.properties.version.name == STRING
    input.Body.properties.version.properties.storageProfile.osDiskImage == {}
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.marketplaceGalleryImageName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

MarketplaceGalleryImages_Delete

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

MarketplaceGalleryImages_Get

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

MarketplaceGalleryImages_List

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
}

MarketplaceGalleryImages_ListAll

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

MarketplaceGalleryImages_Update

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

NetworkInterfaces_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]

valid {
    input.Body.properties.ipConfigurations[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.macAddress == STRING
    input.Body.properties.dnsSettings.dnsServers[_] == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkInterfaceName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

NetworkInterfaces_Delete

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

NetworkInterfaces_Get

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

NetworkInterfaces_List

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
}

NetworkInterfaces_ListAll

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

NetworkInterfaces_Update

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

Offers_Get

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

Offers_ListByCluster

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

Offers_ListByPublisher

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

Operations_List

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

Publishers_Get

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

Publishers_ListByCluster

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

SecuritySettings_CreateOrUpdate

enum_ComplianceAssignmentType := [ "Audit", "ApplyAndAutoCorrect" ]

valid {
    input.Body.properties.securedCoreComplianceAssignment == enum_ComplianceAssignmentType[_]
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.securitySettingsName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SecuritySettings_Delete

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

SecuritySettings_Get

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

SecuritySettings_ListByClusters

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

Skus_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.publisherName == STRING
    input.ReqMap.offerName == STRING
    input.ReqMap.skuName == STRING
    input.Qs.api-version == STRING
    input.Qs.$expand == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Skus_ListByOffer

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

StorageContainers_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]

valid {
    input.Body.properties.path == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.storageContainerName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

StorageContainers_Delete

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

StorageContainers_Get

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

StorageContainers_List

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
}

StorageContainers_ListAll

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

StorageContainers_Update

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

UpdateRuns_Delete

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

UpdateRuns_Get

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

UpdateRuns_List

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

UpdateRuns_Put

enum_UpdateRunPropertiesState := [ "Unknown", "Succeeded", "InProgress", "Failed" ]

valid {
    input.Body.location == STRING
    input.Body.properties.timeStarted == STRING
    input.Body.properties.lastUpdatedTime == STRING
    input.Body.properties.duration == STRING
    input.Body.properties.state == enum_UpdateRunPropertiesState[_]
    input.Body.properties.progress.name == STRING
    input.Body.properties.progress.description == STRING
    input.Body.properties.progress.errorMessage == STRING
    input.Body.properties.progress.status == STRING
    input.Body.properties.progress.startTimeUtc == STRING
    input.Body.properties.progress.endTimeUtc == STRING
    input.Body.properties.progress.lastUpdatedTimeUtc == STRING
    input.Body.properties.progress.steps[_] == NESTED
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.updateName == STRING
    input.ReqMap.updateRunName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

UpdateSummaries_Delete

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

UpdateSummaries_Get

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

UpdateSummaries_List

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

UpdateSummaries_Put

enum_HealthState := [ "Unknown", "Success", "Failure", "Warning", "Error", "InProgress" ]
enum_PrecheckResultSeverity := [ "Critical", "Warning", "Informational", "Hidden" ]
enum_PrecheckResultStatus := [ "Succeeded", "Failed", "InProgress" ]
enum_UpdateSummariesPropertiesState := [ "Unknown", "AppliedSuccessfully", "UpdateAvailable", "UpdateInProgress", "UpdateFailed", "NeedsAttention", "PreparationInProgress", "PreparationFailed" ]

valid {
    input.Body.location == STRING
    input.Body.properties.oemFamily == STRING
    input.Body.properties.hardwareModel == STRING
    input.Body.properties.packageVersions[_].packageType == STRING
    input.Body.properties.packageVersions[_].version == STRING
    input.Body.properties.packageVersions[_].lastUpdated == STRING
    input.Body.properties.currentVersion == STRING
    input.Body.properties.lastUpdated == STRING
    input.Body.properties.lastChecked == STRING
    input.Body.properties.healthState == enum_HealthState[_]
    input.Body.properties.healthCheckResult[_].name == STRING
    input.Body.properties.healthCheckResult[_].displayName == STRING
    input.Body.properties.healthCheckResult[_].tags.key == STRING
    input.Body.properties.healthCheckResult[_].tags.value == STRING
    input.Body.properties.healthCheckResult[_].title == STRING
    input.Body.properties.healthCheckResult[_].status == enum_PrecheckResultStatus[_]
    input.Body.properties.healthCheckResult[_].severity == enum_PrecheckResultSeverity[_]
    input.Body.properties.healthCheckResult[_].description == STRING
    input.Body.properties.healthCheckResult[_].remediation == STRING
    input.Body.properties.healthCheckResult[_].targetResourceID == STRING
    input.Body.properties.healthCheckResult[_].targetResourceName == STRING
    input.Body.properties.healthCheckResult[_].timestamp == STRING
    input.Body.properties.healthCheckResult[_].additionalData == STRING
    input.Body.properties.healthCheckResult[_].healthCheckSource == STRING
    input.Body.properties.healthCheckDate == STRING
    input.Body.properties.state == enum_UpdateSummariesPropertiesState[_]
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Updates_Delete

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

Updates_Get

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

Updates_List

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

Updates_Post

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

Updates_Put

enum_HealthState := [ "Unknown", "Success", "Failure", "Warning", "Error", "InProgress" ]
enum_PrecheckResultSeverity := [ "Critical", "Warning", "Informational", "Hidden" ]
enum_PrecheckResultStatus := [ "Succeeded", "Failed", "InProgress" ]
enum_RebootRequirement := [ "Unknown", "True", "False" ]
enum_UpdatePropertiesAvailabilityType := [ "Local", "Online", "Notify" ]
enum_UpdatePropertiesState := [ "HasPrerequisite", "Obsolete", "Ready", "NotApplicableBecauseAnotherUpdateIsInProgress", "Preparing", "Installing", "Installed", "PreparationFailed", "InstallationFailed", "Invalid", "Recalled", "Downloading", "DownloadFailed", "HealthChecking", "HealthCheckFailed", "ReadyToInstall", "ScanInProgress", "ScanFailed", "AdditionalContentRequired" ]

valid {
    input.Body.location == STRING
    input.Body.properties.installedDate == STRING
    input.Body.properties.description == STRING
    input.Body.properties.state == enum_UpdatePropertiesState[_]
    input.Body.properties.prerequisites[_].updateType == STRING
    input.Body.properties.prerequisites[_].version == STRING
    input.Body.properties.prerequisites[_].packageName == STRING
    input.Body.properties.componentVersions[_].packageType == STRING
    input.Body.properties.componentVersions[_].version == STRING
    input.Body.properties.componentVersions[_].lastUpdated == STRING
    input.Body.properties.rebootRequired == enum_RebootRequirement[_]
    input.Body.properties.healthState == enum_HealthState[_]
    input.Body.properties.healthCheckResult[_].name == STRING
    input.Body.properties.healthCheckResult[_].displayName == STRING
    input.Body.properties.healthCheckResult[_].tags.key == STRING
    input.Body.properties.healthCheckResult[_].tags.value == STRING
    input.Body.properties.healthCheckResult[_].title == STRING
    input.Body.properties.healthCheckResult[_].status == enum_PrecheckResultStatus[_]
    input.Body.properties.healthCheckResult[_].severity == enum_PrecheckResultSeverity[_]
    input.Body.properties.healthCheckResult[_].description == STRING
    input.Body.properties.healthCheckResult[_].remediation == STRING
    input.Body.properties.healthCheckResult[_].targetResourceID == STRING
    input.Body.properties.healthCheckResult[_].targetResourceName == STRING
    input.Body.properties.healthCheckResult[_].timestamp == STRING
    input.Body.properties.healthCheckResult[_].additionalData == STRING
    input.Body.properties.healthCheckResult[_].healthCheckSource == STRING
    input.Body.properties.healthCheckDate == STRING
    input.Body.properties.packagePath == STRING
    input.Body.properties.packageSizeInMb == NUMBER
    input.Body.properties.displayName == STRING
    input.Body.properties.version == STRING
    input.Body.properties.publisher == STRING
    input.Body.properties.releaseLink == STRING
    input.Body.properties.availabilityType == enum_UpdatePropertiesAvailabilityType[_]
    input.Body.properties.packageType == STRING
    input.Body.properties.additionalProperties == STRING
    input.Body.properties.updateStateProperties.progressPercentage == NUMBER
    input.Body.properties.updateStateProperties.notifyMessage == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.updateName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

VirtualHardDisks_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_VirtualHardDiskPropertiesDiskFileFormat := [ "vhdx", "vhd" ]
enum_VirtualHardDiskPropertiesHyperVGeneration := [ "V1", "V2" ]

valid {
    input.Body.properties.blockSizeBytes == INTEGER
    input.Body.properties.diskSizeGB == INTEGER
    input.Body.properties.dynamic == BOOLEAN
    input.Body.properties.logicalSectorBytes == INTEGER
    input.Body.properties.physicalSectorBytes == INTEGER
    input.Body.properties.hyperVGeneration == enum_VirtualHardDiskPropertiesHyperVGeneration[_]
    input.Body.properties.diskFileFormat == enum_VirtualHardDiskPropertiesDiskFileFormat[_]
    input.Body.properties.containerId == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualHardDiskName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

VirtualHardDisks_Delete

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

VirtualHardDisks_Get

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

VirtualHardDisks_List

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
}

VirtualHardDisks_ListAll

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

VirtualHardDisks_Update

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

VirtualMachineInstances_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_IdentityType := [ "SystemAssigned" ]
enum_VirtualMachineInstancePropertiesHardwareProfileVmSize := [ "Default", "Standard_A2_v2", "Standard_A4_v2", "Standard_D2s_v3", "Standard_D4s_v3", "Standard_D8s_v3", "Standard_D16s_v3", "Standard_D32s_v3", "Standard_DS2_v2", "Standard_DS3_v2", "Standard_DS4_v2", "Standard_DS5_v2", "Standard_DS13_v2", "Standard_K8S_v1", "Standard_K8S2_v1", "Standard_K8S3_v1", "Standard_K8S4_v1", "Standard_NK6", "Standard_NK12", "Standard_NV6", "Standard_NV12", "Standard_K8S5_v1", "Custom" ]
enum_VirtualMachineInstancePropertiesSecurityProfileSecurityType := [ "TrustedLaunch", "ConfidentialVM" ]
enum_VirtualMachineInstancePropertiesStorageProfileOsDiskOsType := [ "Linux", "Windows" ]

valid {
    input.Body.properties.hardwareProfile.vmSize == enum_VirtualMachineInstancePropertiesHardwareProfileVmSize[_]
    input.Body.properties.hardwareProfile.processors == INTEGER
    input.Body.properties.hardwareProfile.memoryMB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.maximumMemoryMB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.minimumMemoryMB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.targetMemoryBuffer == INTEGER
    input.Body.properties.networkProfile.networkInterfaces[_].id == STRING
    input.Body.properties.osProfile.adminPassword == STRING
    input.Body.properties.osProfile.adminUsername == STRING
    input.Body.properties.osProfile.computerName == STRING
    input.Body.properties.osProfile.linuxConfiguration.disablePasswordAuthentication == BOOLEAN
    input.Body.properties.osProfile.linuxConfiguration.ssh.publicKeys[_].path == STRING
    input.Body.properties.osProfile.linuxConfiguration.ssh.publicKeys[_].keyData == STRING
    input.Body.properties.osProfile.linuxConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.osProfile.linuxConfiguration.provisionVMConfigAgent == BOOLEAN
    input.Body.properties.osProfile.windowsConfiguration.enableAutomaticUpdates == BOOLEAN
    input.Body.properties.osProfile.windowsConfiguration.ssh.publicKeys[_].path == STRING
    input.Body.properties.osProfile.windowsConfiguration.ssh.publicKeys[_].keyData == STRING
    input.Body.properties.osProfile.windowsConfiguration.timeZone == STRING
    input.Body.properties.osProfile.windowsConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.osProfile.windowsConfiguration.provisionVMConfigAgent == BOOLEAN
    input.Body.properties.securityProfile.enableTPM == BOOLEAN
    input.Body.properties.securityProfile.uefiSettings.secureBootEnabled == BOOLEAN
    input.Body.properties.securityProfile.securityType == enum_VirtualMachineInstancePropertiesSecurityProfileSecurityType[_]
    input.Body.properties.storageProfile.dataDisks[_].id == STRING
    input.Body.properties.storageProfile.imageReference.id == STRING
    input.Body.properties.storageProfile.osDisk.id == STRING
    input.Body.properties.storageProfile.osDisk.osType == enum_VirtualMachineInstancePropertiesStorageProfileOsDiskOsType[_]
    input.Body.properties.storageProfile.vmConfigStoragePathId == STRING
    input.Body.properties.httpProxyConfig.httpProxy == STRING
    input.Body.properties.httpProxyConfig.httpsProxy == STRING
    input.Body.properties.httpProxyConfig.noProxy[_] == STRING
    input.Body.properties.httpProxyConfig.trustedCa == STRING
    input.Body.properties.guestAgentInstallStatus == {}
    input.Body.properties.resourceUid == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.identity.type == enum_IdentityType[_]
    input.Body.STRING == STRING
    input.ReqMap.resourceUri == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

VirtualMachineInstances_Delete

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

VirtualMachineInstances_Get

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

VirtualMachineInstances_List

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

VirtualMachineInstances_Restart

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

VirtualMachineInstances_Start

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

VirtualMachineInstances_Stop

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

VirtualMachineInstances_Update

enum_HardwareProfileUpdateVmSize := [ "Default", "Standard_A2_v2", "Standard_A4_v2", "Standard_D2s_v3", "Standard_D4s_v3", "Standard_D8s_v3", "Standard_D16s_v3", "Standard_D32s_v3", "Standard_DS2_v2", "Standard_DS3_v2", "Standard_DS4_v2", "Standard_DS5_v2", "Standard_DS13_v2", "Standard_K8S_v1", "Standard_K8S2_v1", "Standard_K8S3_v1", "Standard_K8S4_v1", "Standard_NK6", "Standard_NK12", "Standard_NV6", "Standard_NV12", "Standard_K8S5_v1", "Custom" ]
enum_IdentityType := [ "SystemAssigned" ]

valid {
    input.Body.properties.hardwareProfile.vmSize == enum_HardwareProfileUpdateVmSize[_]
    input.Body.properties.hardwareProfile.processors == INTEGER
    input.Body.properties.hardwareProfile.memoryMB == INTEGER
    input.Body.properties.storageProfile.dataDisks[_].id == STRING
    input.Body.properties.networkProfile.networkInterfaces[_].id == STRING
    input.Body.properties.osProfile.computerName == STRING
    input.Body.properties.osProfile.linuxConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.osProfile.linuxConfiguration.provisionVMConfigAgent == BOOLEAN
    input.Body.properties.osProfile.windowsConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.osProfile.windowsConfiguration.provisionVMConfigAgent == BOOLEAN
    input.Body.identity.type == enum_IdentityType[_]
    input.ReqMap.resourceUri == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

VirtualMachines_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_IdentityType := [ "SystemAssigned" ]
enum_VirtualMachinePropertiesHardwareProfileVmSize := [ "Default", "Standard_A2_v2", "Standard_A4_v2", "Standard_D2s_v3", "Standard_D4s_v3", "Standard_D8s_v3", "Standard_D16s_v3", "Standard_D32s_v3", "Standard_DS2_v2", "Standard_DS3_v2", "Standard_DS4_v2", "Standard_DS5_v2", "Standard_DS13_v2", "Standard_K8S_v1", "Standard_K8S2_v1", "Standard_K8S3_v1", "Standard_K8S4_v1", "Standard_NK6", "Standard_NK12", "Standard_NV6", "Standard_NV12", "Standard_K8S5_v1", "Custom" ]
enum_VirtualMachinePropertiesOsProfileOsType := [ "Linux", "Windows" ]

valid {
    input.Body.properties.hardwareProfile.vmSize == enum_VirtualMachinePropertiesHardwareProfileVmSize[_]
    input.Body.properties.hardwareProfile.processors == INTEGER
    input.Body.properties.hardwareProfile.memoryMB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.maximumMemoryMB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.minimumMemoryMB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.targetMemoryBuffer == INTEGER
    input.Body.properties.networkProfile.networkInterfaces[_].id == STRING
    input.Body.properties.osProfile.adminPassword == STRING
    input.Body.properties.osProfile.adminUsername == STRING
    input.Body.properties.osProfile.computerName == STRING
    input.Body.properties.osProfile.linuxConfiguration.disablePasswordAuthentication == BOOLEAN
    input.Body.properties.osProfile.linuxConfiguration.ssh.publicKeys[_].keyData == STRING
    input.Body.properties.osProfile.linuxConfiguration.ssh.publicKeys[_].path == STRING
    input.Body.properties.osProfile.linuxConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.osProfile.osType == enum_VirtualMachinePropertiesOsProfileOsType[_]
    input.Body.properties.osProfile.windowsConfiguration.enableAutomaticUpdates == BOOLEAN
    input.Body.properties.osProfile.windowsConfiguration.ssh.publicKeys[_].keyData == STRING
    input.Body.properties.osProfile.windowsConfiguration.ssh.publicKeys[_].path == STRING
    input.Body.properties.osProfile.windowsConfiguration.timeZone == STRING
    input.Body.properties.osProfile.windowsConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.securityProfile.enableTPM == BOOLEAN
    input.Body.properties.securityProfile.uefiSettings.secureBootEnabled == BOOLEAN
    input.Body.properties.storageProfile.dataDisks[_].id == STRING
    input.Body.properties.storageProfile.imageReference.id == STRING
    input.Body.properties.storageProfile.osDisk.id == STRING
    input.Body.properties.storageProfile.vmConfigStoragePathId == STRING
    input.Body.properties.guestAgentProfile == {}
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.identity.type == enum_IdentityType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

VirtualMachines_Delete

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

VirtualMachines_Get

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

VirtualMachines_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
}

VirtualMachines_ListBySubscription

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

VirtualMachines_Restart

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

VirtualMachines_Start

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

VirtualMachines_Stop

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

VirtualMachines_Update

enum_HardwareProfileUpdateVmSize := [ "Default", "Standard_A2_v2", "Standard_A4_v2", "Standard_D2s_v3", "Standard_D4s_v3", "Standard_D8s_v3", "Standard_D16s_v3", "Standard_D32s_v3", "Standard_DS2_v2", "Standard_DS3_v2", "Standard_DS4_v2", "Standard_DS5_v2", "Standard_DS13_v2", "Standard_K8S_v1", "Standard_K8S2_v1", "Standard_K8S3_v1", "Standard_K8S4_v1", "Standard_NK6", "Standard_NK12", "Standard_NV6", "Standard_NV12", "Standard_K8S5_v1", "Custom" ]

valid {
    input.Body.properties.hardwareProfile.vmSize == enum_HardwareProfileUpdateVmSize[_]
    input.Body.properties.hardwareProfile.processors == INTEGER
    input.Body.properties.hardwareProfile.memoryMB == INTEGER
    input.Body.properties.storageProfile.dataDisks[_].id == STRING
    input.Body.properties.networkProfile.networkInterfaces[_].id == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualMachineName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

VirtualNetworks_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_VirtualNetworkPropertiesNetworkType := [ "NAT", "Transparent", "L2Bridge", "L2Tunnel", "ICS", "Private", "Overlay", "Internal", "Mirrored" ]
enum_VirtualNetworkPropertiesSubnetsPropertiesIpAllocationMethod := [ "Dynamic", "Static" ]

valid {
    input.Body.properties.dhcpOptions.dnsServers[_] == STRING
    input.Body.properties.networkType == enum_VirtualNetworkPropertiesNetworkType[_]
    input.Body.properties.subnets[_].name == STRING
    input.Body.properties.subnets[_].properties.addressPrefix == STRING
    input.Body.properties.subnets[_].properties.addressPrefixes[_] == STRING
    input.Body.properties.subnets[_].properties.ipAllocationMethod == enum_VirtualNetworkPropertiesSubnetsPropertiesIpAllocationMethod[_]
    input.Body.properties.subnets[_].properties.ipConfigurationReferences[_].id == STRING
    input.Body.properties.subnets[_].properties.routeTable.id == STRING
    input.Body.properties.subnets[_].properties.routeTable.name == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.subnets[_].properties.routeTable.type == STRING
    input.Body.properties.subnets[_].properties.vlan == INTEGER
    input.Body.properties.vmSwitchName == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualNetworkName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

VirtualNetworks_Delete

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

VirtualNetworks_Get

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

VirtualNetworks_List

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
}

VirtualNetworks_ListAll

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

VirtualNetworks_Update

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

galleryimages_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_galleryimagesPropertiesCloudInitDataSource := [ "NoCloud", "Azure" ]
enum_galleryimagesPropertiesHyperVGeneration := [ "V1", "V2" ]
enum_galleryimagesPropertiesOsType := [ "Windows", "Linux" ]

valid {
    input.Body.properties.containerName == STRING
    input.Body.properties.imagePath == STRING
    input.Body.properties.osType == enum_galleryimagesPropertiesOsType[_]
    input.Body.properties.cloudInitDataSource == enum_galleryimagesPropertiesCloudInitDataSource[_]
    input.Body.properties.hyperVGeneration == enum_galleryimagesPropertiesHyperVGeneration[_]
    input.Body.properties.identifier.publisher == STRING
    input.Body.properties.identifier.offer == STRING
    input.Body.properties.identifier.sku == STRING
    input.Body.properties.version.name == STRING
    input.Body.properties.version.properties.storageProfile.osDiskImage == {}
    input.Body.properties.resourceName == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.galleryimagesName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

galleryimages_Delete

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

galleryimages_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
}

galleryimages_ListBySubscription

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

galleryimages_Retrieve

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

galleryimages_Update

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

marketplacegalleryimages_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_marketplacegalleryimagesPropertiesCloudInitDataSource := [ "NoCloud", "Azure" ]
enum_marketplacegalleryimagesPropertiesHyperVGeneration := [ "V1", "V2" ]
enum_marketplacegalleryimagesPropertiesOsType := [ "Windows", "Linux" ]

valid {
    input.Body.properties.containerName == STRING
    input.Body.properties.osType == enum_marketplacegalleryimagesPropertiesOsType[_]
    input.Body.properties.cloudInitDataSource == enum_marketplacegalleryimagesPropertiesCloudInitDataSource[_]
    input.Body.properties.hyperVGeneration == enum_marketplacegalleryimagesPropertiesHyperVGeneration[_]
    input.Body.properties.identifier.publisher == STRING
    input.Body.properties.identifier.offer == STRING
    input.Body.properties.identifier.sku == STRING
    input.Body.properties.version.name == STRING
    input.Body.properties.version.properties.storageProfile.osDiskImage == {}
    input.Body.properties.resourceName == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.marketplacegalleryimagesName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

marketplacegalleryimages_Delete

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

marketplacegalleryimages_Get

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

marketplacegalleryimages_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
}

marketplacegalleryimages_ListBySubscription

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

marketplacegalleryimages_Update

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

networkinterfaces_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_ipConfigurationPropertiesPrivateIPAllocationMethod := [ "Dynamic", "Static" ]

valid {
    input.Body.properties.ipConfigurations[_].name == STRING
    input.Body.properties.ipConfigurations[_].properties.gateway == STRING
    input.Body.properties.ipConfigurations[_].properties.prefixLength == STRING
    input.Body.properties.ipConfigurations[_].properties.privateIPAddress == STRING
    input.Body.properties.ipConfigurations[_].properties.privateIPAllocationMethod == enum_ipConfigurationPropertiesPrivateIPAllocationMethod[_]
    input.Body.properties.ipConfigurations[_].properties.subnet.id == STRING
    input.Body.properties.macAddress == STRING
    input.Body.properties.dnsSettings.dnsServers[_] == STRING
    input.Body.properties.resourceName == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.networkinterfacesName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

networkinterfaces_Delete

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

networkinterfaces_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
}

networkinterfaces_ListBySubscription

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

networkinterfaces_Retrieve

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

networkinterfaces_Update

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

storagecontainers_CreateOrUpdate

valid {
    input.Body.properties.path == STRING
    input.Body.properties.provisioningState == STRING
    input.Body.properties.resourceName == STRING
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.Body.extendedLocation.type == STRING
    input.Body.extendedLocation.name == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.storagecontainersName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

storagecontainers_Delete

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

storagecontainers_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
}

storagecontainers_ListBySubscription

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

storagecontainers_Retrieve

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

storagecontainers_Update

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

virtualharddisks_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_virtualharddisksPropertiesDiskFileFormat := [ "vhdx", "vhd" ]
enum_virtualharddisksPropertiesHyperVGeneration := [ "V1", "V2" ]

valid {
    input.Body.properties.blockSizeBytes == INTEGER
    input.Body.properties.diskSizeBytes == INTEGER
    input.Body.properties.dynamic == BOOLEAN
    input.Body.properties.logicalSectorBytes == INTEGER
    input.Body.properties.physicalSectorBytes == INTEGER
    input.Body.properties.hyperVGeneration == enum_virtualharddisksPropertiesHyperVGeneration[_]
    input.Body.properties.diskFileFormat == enum_virtualharddisksPropertiesDiskFileFormat[_]
    input.Body.properties.containerId == STRING
    input.Body.properties.resourceName == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualharddisksName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

virtualharddisks_Delete

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

virtualharddisks_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
}

virtualharddisks_ListBySubscription

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

virtualharddisks_Retrieve

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

virtualharddisks_Update

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

virtualmachines_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_IdentityType := [ "SystemAssigned" ]
enum_virtualmachinesPropertiesOsProfileOsType := [ "Linux", "Windows" ]

valid {
    input.Body.properties.hardwareProfile.vmSize == STRING
    input.Body.properties.hardwareProfile.processors == INTEGER
    input.Body.properties.hardwareProfile.memoryGB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.maximumMemoryGB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.minimumMemoryGB == INTEGER
    input.Body.properties.hardwareProfile.dynamicMemoryConfig.targetMemoryBuffer == INTEGER
    input.Body.properties.networkProfile.networkInterfaces[_].id == STRING
    input.Body.properties.osProfile.adminPassword == STRING
    input.Body.properties.osProfile.adminUsername == STRING
    input.Body.properties.osProfile.computerName == STRING
    input.Body.properties.osProfile.linuxConfiguration.disablePasswordAuthentication == BOOLEAN
    input.Body.properties.osProfile.linuxConfiguration.ssh.publicKeys[_].keyData == STRING
    input.Body.properties.osProfile.linuxConfiguration.ssh.publicKeys[_].path == STRING
    input.Body.properties.osProfile.linuxConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.osProfile.osType == enum_virtualmachinesPropertiesOsProfileOsType[_]
    input.Body.properties.osProfile.windowsConfiguration.enableAutomaticUpdates == BOOLEAN
    input.Body.properties.osProfile.windowsConfiguration.ssh.publicKeys[_].keyData == STRING
    input.Body.properties.osProfile.windowsConfiguration.ssh.publicKeys[_].path == STRING
    input.Body.properties.osProfile.windowsConfiguration.timeZone == STRING
    input.Body.properties.osProfile.windowsConfiguration.provisionVMAgent == BOOLEAN
    input.Body.properties.resourceName == STRING
    input.Body.properties.securityProfile.enableTPM == BOOLEAN
    input.Body.properties.securityProfile.uefiSettings.secureBootEnabled == BOOLEAN
    input.Body.properties.storageProfile.dataDisks[_].name == STRING
    input.Body.properties.storageProfile.imageReference.name == STRING
    input.Body.properties.storageProfile.osDisk.id == STRING
    input.Body.properties.storageProfile.vmConfigContainerName == STRING
    input.Body.properties.guestAgentProfile == {}
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.identity.type == enum_IdentityType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualmachinesName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

virtualmachines_Delete

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

virtualmachines_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
}

virtualmachines_ListBySubscription

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

virtualmachines_Restart

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

virtualmachines_Retrieve

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

virtualmachines_Start

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

virtualmachines_Stop

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

virtualmachines_Update

enum_hardwareProfileUpdateVmSize := [ "Default", "Standard_A2_v2", "Standard_A4_v2", "Standard_D2s_v3", "Standard_D4s_v3", "Standard_D8s_v3", "Standard_D16s_v3", "Standard_D32s_v3", "Standard_DS2_v2", "Standard_DS3_v2", "Standard_DS4_v2", "Standard_DS5_v2", "Standard_DS13_v2", "Standard_K8S_v1", "Standard_K8S2_v1", "Standard_K8S3_v1", "Standard_K8S4_v1", "Standard_NK6", "Standard_NK12", "Standard_NV6", "Standard_NV12", "Standard_K8S5_v1", "Custom" ]

valid {
    input.Body.properties.hardwareProfile.vmSize == enum_hardwareProfileUpdateVmSize[_]
    input.Body.properties.hardwareProfile.processors == INTEGER
    input.Body.properties.hardwareProfile.memoryGB == INTEGER
    input.Body.properties.storageProfile.dataDisks[_].name == STRING
    input.Body.properties.networkProfile.networkInterfaces[_].id == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualmachinesName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

virtualnetworks_CreateOrUpdate

enum_ExtendedLocationType := [ "CustomLocation" ]
enum_IPPoolIpPoolType := [ "vm", "vippool" ]
enum_virtualnetworksPropertiesNetworkType := [ "NAT", "Transparent", "L2Bridge", "L2Tunnel", "ICS", "Private", "Overlay", "Internal", "Mirrored" ]
enum_virtualnetworksPropertiesSubnetsPropertiesIpAllocationMethod := [ "Dynamic", "Static" ]

valid {
    input.Body.properties.networkType == enum_virtualnetworksPropertiesNetworkType[_]
    input.Body.properties.subnets[_].name == STRING
    input.Body.properties.subnets[_].properties.addressPrefix == STRING
    input.Body.properties.subnets[_].properties.addressPrefixes[_] == STRING
    input.Body.properties.subnets[_].properties.ipAllocationMethod == enum_virtualnetworksPropertiesSubnetsPropertiesIpAllocationMethod[_]
    input.Body.properties.subnets[_].properties.ipConfigurationReferences[_].ID == STRING
    input.Body.properties.subnets[_].properties.routeTable.id == STRING
    input.Body.properties.subnets[_].properties.routeTable.name == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].name == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].properties.addressPrefix == STRING
    input.Body.properties.subnets[_].properties.routeTable.properties.routes[_].properties.nextHopIpAddress == STRING
    input.Body.properties.subnets[_].properties.routeTable.type == STRING
    input.Body.properties.subnets[_].properties.ipPools[_].ipPoolType == enum_IPPoolIpPoolType[_]
    input.Body.properties.subnets[_].properties.ipPools[_].start == STRING
    input.Body.properties.subnets[_].properties.ipPools[_].end == STRING
    input.Body.properties.subnets[_].properties.ipPools[_].info == {}
    input.Body.properties.subnets[_].properties.vlan == INTEGER
    input.Body.properties.resourceName == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.virtualnetworksName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

virtualnetworks_Delete

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

virtualnetworks_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
}

virtualnetworks_ListBySubscription

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

virtualnetworks_Retrieve

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

virtualnetworks_Update

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