DiskAccesses_CreateOrUpdate

enum_ExtendedLocationType := [ "EdgeZone" ]

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

DiskAccesses_Delete

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

DiskAccesses_DeleteAPrivateEndpointConnection

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

DiskAccesses_Get

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

DiskAccesses_GetAPrivateEndpointConnection

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

DiskAccesses_GetPrivateLinkResources

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

DiskAccesses_List

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

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

DiskAccesses_ListPrivateEndpointConnections

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

DiskAccesses_Update

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

DiskAccesses_UpdateAPrivateEndpointConnection

enum_PrivateEndpointServiceConnectionStatus := [ "Pending", "Approved", "Rejected" ]

valid {
    input.Body.properties.privateLinkServiceConnectionState.status == enum_PrivateEndpointServiceConnectionStatus[_]
    input.Body.properties.privateLinkServiceConnectionState.description == STRING
    input.Body.properties.privateLinkServiceConnectionState.actionsRequired == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.diskAccessName == STRING
    input.ReqMap.privateEndpointConnectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DiskEncryptionSets_CreateOrUpdate

enum_DiskEncryptionSetType := [ "EncryptionAtRestWithCustomerKey", "EncryptionAtRestWithPlatformAndCustomerKeys", "ConfidentialVmEncryptedWithCustomerKey" ]
enum_EncryptionSetIdentityType := [ "SystemAssigned", "None" ]

valid {
    input.Body.identity.type == enum_EncryptionSetIdentityType[_]
    input.Body.properties.encryptionType == enum_DiskEncryptionSetType[_]
    input.Body.properties.activeKey.sourceVault.id == STRING
    input.Body.properties.activeKey.keyUrl == STRING
    input.Body.properties.rotationToLatestKeyVersionEnabled == BOOLEAN
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.diskEncryptionSetName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DiskEncryptionSets_Delete

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

DiskEncryptionSets_Get

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

DiskEncryptionSets_List

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

DiskEncryptionSets_ListAssociatedResources

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

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

DiskEncryptionSets_Update

enum_DiskEncryptionSetType := [ "EncryptionAtRestWithCustomerKey", "EncryptionAtRestWithPlatformAndCustomerKeys", "ConfidentialVmEncryptedWithCustomerKey" ]
enum_EncryptionSetIdentityType := [ "SystemAssigned", "None" ]

valid {
    input.Body.properties.encryptionType == enum_DiskEncryptionSetType[_]
    input.Body.properties.activeKey.sourceVault.id == STRING
    input.Body.properties.activeKey.keyUrl == STRING
    input.Body.properties.rotationToLatestKeyVersionEnabled == BOOLEAN
    input.Body.tags.STRING == STRING
    input.Body.identity.type == enum_EncryptionSetIdentityType[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.diskEncryptionSetName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DiskRestorePoint_Get

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

DiskRestorePoint_GrantAccess

enum_GrantAccessDataAccess := [ "None", "Read", "Write" ]

valid {
    input.Body.access == enum_GrantAccessDataAccess[_]
    input.Body.durationInSeconds == INTEGER
    input.Body.getSecureVMGuestStateSAS == BOOLEAN
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.restorePointCollectionName == STRING
    input.ReqMap.vmRestorePointName == STRING
    input.ReqMap.diskRestorePointName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

DiskRestorePoint_ListByRestorePoint

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

DiskRestorePoint_RevokeAccess

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

Disks_CreateOrUpdate

enum_CreationDataCreateOption := [ "Empty", "Attach", "FromImage", "Import", "Copy", "Restore", "Upload", "CopyStart", "ImportSecure", "UploadPreparedSecure" ]
enum_DiskPropertiesHyperVGeneration := [ "V1", "V2" ]
enum_DiskPropertiesOsType := [ "Windows", "Linux" ]
enum_DiskSecurityType := [ "TrustedLaunch", "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", "ConfidentialVM_DiskEncryptedWithPlatformKey", "ConfidentialVM_DiskEncryptedWithCustomerKey" ]
enum_DiskSkuName := [ "Standard_LRS", "Premium_LRS", "StandardSSD_LRS", "UltraSSD_LRS", "Premium_ZRS", "StandardSSD_ZRS" ]
enum_EncryptionType := [ "EncryptionAtRestWithPlatformKey", "EncryptionAtRestWithCustomerKey", "EncryptionAtRestWithPlatformAndCustomerKeys" ]
enum_ExtendedLocationType := [ "EdgeZone" ]
enum_NetworkAccessPolicy := [ "AllowAll", "AllowPrivate", "DenyAll" ]
enum_PublicNetworkAccess := [ "Enabled", "Disabled" ]

valid {
    input.Body.sku.name == enum_DiskSkuName[_]
    input.Body.zones[_] == STRING
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.osType == enum_DiskPropertiesOsType[_]
    input.Body.properties.hyperVGeneration == enum_DiskPropertiesHyperVGeneration[_]
    input.Body.properties.purchasePlan.name == STRING
    input.Body.properties.purchasePlan.publisher == STRING
    input.Body.properties.purchasePlan.product == STRING
    input.Body.properties.purchasePlan.promotionCode == STRING
    input.Body.properties.supportedCapabilities.acceleratedNetwork == BOOLEAN
    input.Body.properties.creationData.createOption == enum_CreationDataCreateOption[_]
    input.Body.properties.creationData.storageAccountId == STRING
    input.Body.properties.creationData.imageReference.id == STRING
    input.Body.properties.creationData.imageReference.lun == INTEGER
    input.Body.properties.creationData.galleryImageReference.id == STRING
    input.Body.properties.creationData.galleryImageReference.lun == INTEGER
    input.Body.properties.creationData.sourceUri == STRING
    input.Body.properties.creationData.sourceResourceId == STRING
    input.Body.properties.creationData.uploadSizeBytes == INTEGER
    input.Body.properties.creationData.logicalSectorSize == INTEGER
    input.Body.properties.creationData.securityDataUri == STRING
    input.Body.properties.diskSizeGB == INTEGER
    input.Body.properties.encryptionSettingsCollection.enabled == BOOLEAN
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.secretUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.keyUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettingsVersion == STRING
    input.Body.properties.diskIOPSReadWrite == INTEGER
    input.Body.properties.diskMBpsReadWrite == INTEGER
    input.Body.properties.diskIOPSReadOnly == INTEGER
    input.Body.properties.diskMBpsReadOnly == INTEGER
    input.Body.properties.encryption.diskEncryptionSetId == STRING
    input.Body.properties.encryption.type == enum_EncryptionType[_]
    input.Body.properties.maxShares == INTEGER
    input.Body.properties.networkAccessPolicy == enum_NetworkAccessPolicy[_]
    input.Body.properties.diskAccessId == STRING
    input.Body.properties.tier == STRING
    input.Body.properties.burstingEnabled == BOOLEAN
    input.Body.properties.supportsHibernation == BOOLEAN
    input.Body.properties.securityProfile.securityType == enum_DiskSecurityType[_]
    input.Body.properties.securityProfile.secureVMDiskEncryptionSetId == STRING
    input.Body.properties.completionPercent == NUMBER
    input.Body.properties.publicNetworkAccess == enum_PublicNetworkAccess[_]
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.diskName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Disks_Delete

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

Disks_Get

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

Disks_GrantAccess

enum_GrantAccessDataAccess := [ "None", "Read", "Write" ]

valid {
    input.Body.access == enum_GrantAccessDataAccess[_]
    input.Body.durationInSeconds == INTEGER
    input.Body.getSecureVMGuestStateSAS == BOOLEAN
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.diskName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Disks_List

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

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

Disks_RevokeAccess

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

Disks_Update

enum_DiskSkuName := [ "Standard_LRS", "Premium_LRS", "StandardSSD_LRS", "UltraSSD_LRS", "Premium_ZRS", "StandardSSD_ZRS" ]
enum_DiskUpdatePropertiesOsType := [ "Windows", "Linux" ]
enum_EncryptionType := [ "EncryptionAtRestWithPlatformKey", "EncryptionAtRestWithCustomerKey", "EncryptionAtRestWithPlatformAndCustomerKeys" ]
enum_NetworkAccessPolicy := [ "AllowAll", "AllowPrivate", "DenyAll" ]
enum_PublicNetworkAccess := [ "Enabled", "Disabled" ]

valid {
    input.Body.properties.osType == enum_DiskUpdatePropertiesOsType[_]
    input.Body.properties.diskSizeGB == INTEGER
    input.Body.properties.encryptionSettingsCollection.enabled == BOOLEAN
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.secretUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.keyUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettingsVersion == STRING
    input.Body.properties.diskIOPSReadWrite == INTEGER
    input.Body.properties.diskMBpsReadWrite == INTEGER
    input.Body.properties.diskIOPSReadOnly == INTEGER
    input.Body.properties.diskMBpsReadOnly == INTEGER
    input.Body.properties.maxShares == INTEGER
    input.Body.properties.encryption.diskEncryptionSetId == STRING
    input.Body.properties.encryption.type == enum_EncryptionType[_]
    input.Body.properties.networkAccessPolicy == enum_NetworkAccessPolicy[_]
    input.Body.properties.diskAccessId == STRING
    input.Body.properties.tier == STRING
    input.Body.properties.burstingEnabled == BOOLEAN
    input.Body.properties.purchasePlan.name == STRING
    input.Body.properties.purchasePlan.publisher == STRING
    input.Body.properties.purchasePlan.product == STRING
    input.Body.properties.purchasePlan.promotionCode == STRING
    input.Body.properties.supportedCapabilities.acceleratedNetwork == BOOLEAN
    input.Body.properties.supportsHibernation == BOOLEAN
    input.Body.properties.publicNetworkAccess == enum_PublicNetworkAccess[_]
    input.Body.tags.STRING == STRING
    input.Body.sku.name == enum_DiskSkuName[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.diskName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Snapshots_CreateOrUpdate

enum_CreationDataCreateOption := [ "Empty", "Attach", "FromImage", "Import", "Copy", "Restore", "Upload", "CopyStart", "ImportSecure", "UploadPreparedSecure" ]
enum_DiskSecurityType := [ "TrustedLaunch", "ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey", "ConfidentialVM_DiskEncryptedWithPlatformKey", "ConfidentialVM_DiskEncryptedWithCustomerKey" ]
enum_EncryptionType := [ "EncryptionAtRestWithPlatformKey", "EncryptionAtRestWithCustomerKey", "EncryptionAtRestWithPlatformAndCustomerKeys" ]
enum_ExtendedLocationType := [ "EdgeZone" ]
enum_NetworkAccessPolicy := [ "AllowAll", "AllowPrivate", "DenyAll" ]
enum_PublicNetworkAccess := [ "Enabled", "Disabled" ]
enum_SnapshotPropertiesHyperVGeneration := [ "V1", "V2" ]
enum_SnapshotPropertiesOsType := [ "Windows", "Linux" ]
enum_SnapshotSkuName := [ "Standard_LRS", "Premium_LRS", "Standard_ZRS" ]

valid {
    input.Body.sku.name == enum_SnapshotSkuName[_]
    input.Body.extendedLocation.name == STRING
    input.Body.extendedLocation.type == enum_ExtendedLocationType[_]
    input.Body.properties.osType == enum_SnapshotPropertiesOsType[_]
    input.Body.properties.hyperVGeneration == enum_SnapshotPropertiesHyperVGeneration[_]
    input.Body.properties.purchasePlan.name == STRING
    input.Body.properties.purchasePlan.publisher == STRING
    input.Body.properties.purchasePlan.product == STRING
    input.Body.properties.purchasePlan.promotionCode == STRING
    input.Body.properties.supportedCapabilities.acceleratedNetwork == BOOLEAN
    input.Body.properties.creationData.createOption == enum_CreationDataCreateOption[_]
    input.Body.properties.creationData.storageAccountId == STRING
    input.Body.properties.creationData.imageReference.id == STRING
    input.Body.properties.creationData.imageReference.lun == INTEGER
    input.Body.properties.creationData.galleryImageReference.id == STRING
    input.Body.properties.creationData.galleryImageReference.lun == INTEGER
    input.Body.properties.creationData.sourceUri == STRING
    input.Body.properties.creationData.sourceResourceId == STRING
    input.Body.properties.creationData.uploadSizeBytes == INTEGER
    input.Body.properties.creationData.logicalSectorSize == INTEGER
    input.Body.properties.creationData.securityDataUri == STRING
    input.Body.properties.diskSizeGB == INTEGER
    input.Body.properties.encryptionSettingsCollection.enabled == BOOLEAN
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.secretUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.keyUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettingsVersion == STRING
    input.Body.properties.incremental == BOOLEAN
    input.Body.properties.encryption.diskEncryptionSetId == STRING
    input.Body.properties.encryption.type == enum_EncryptionType[_]
    input.Body.properties.networkAccessPolicy == enum_NetworkAccessPolicy[_]
    input.Body.properties.diskAccessId == STRING
    input.Body.properties.securityProfile.securityType == enum_DiskSecurityType[_]
    input.Body.properties.securityProfile.secureVMDiskEncryptionSetId == STRING
    input.Body.properties.supportsHibernation == BOOLEAN
    input.Body.properties.publicNetworkAccess == enum_PublicNetworkAccess[_]
    input.Body.properties.completionPercent == NUMBER
    input.Body.location == STRING
    input.Body.tags.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.snapshotName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Snapshots_Delete

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

Snapshots_Get

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

Snapshots_GrantAccess

enum_GrantAccessDataAccess := [ "None", "Read", "Write" ]

valid {
    input.Body.access == enum_GrantAccessDataAccess[_]
    input.Body.durationInSeconds == INTEGER
    input.Body.getSecureVMGuestStateSAS == BOOLEAN
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.snapshotName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Snapshots_List

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

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

Snapshots_RevokeAccess

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

Snapshots_Update

enum_EncryptionType := [ "EncryptionAtRestWithPlatformKey", "EncryptionAtRestWithCustomerKey", "EncryptionAtRestWithPlatformAndCustomerKeys" ]
enum_NetworkAccessPolicy := [ "AllowAll", "AllowPrivate", "DenyAll" ]
enum_PublicNetworkAccess := [ "Enabled", "Disabled" ]
enum_SnapshotSkuName := [ "Standard_LRS", "Premium_LRS", "Standard_ZRS" ]
enum_SnapshotUpdatePropertiesOsType := [ "Windows", "Linux" ]

valid {
    input.Body.properties.osType == enum_SnapshotUpdatePropertiesOsType[_]
    input.Body.properties.diskSizeGB == INTEGER
    input.Body.properties.encryptionSettingsCollection.enabled == BOOLEAN
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].diskEncryptionKey.secretUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.sourceVault.id == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettings[_].keyEncryptionKey.keyUrl == STRING
    input.Body.properties.encryptionSettingsCollection.encryptionSettingsVersion == STRING
    input.Body.properties.encryption.diskEncryptionSetId == STRING
    input.Body.properties.encryption.type == enum_EncryptionType[_]
    input.Body.properties.networkAccessPolicy == enum_NetworkAccessPolicy[_]
    input.Body.properties.diskAccessId == STRING
    input.Body.properties.supportsHibernation == BOOLEAN
    input.Body.properties.publicNetworkAccess == enum_PublicNetworkAccess[_]
    input.Body.properties.supportedCapabilities.acceleratedNetwork == BOOLEAN
    input.Body.tags.STRING == STRING
    input.Body.sku.name == enum_SnapshotSkuName[_]
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.snapshotName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}