MICROSOFT.KUBERNETESCONFIGURATION

ClusterExtensionType_Get

enum_ClusterResourceNameParameter := [ "managedClusters", "connectedClusters" ]
enum_ClusterRpParameter := [ "Microsoft.ContainerService", "Microsoft.Kubernetes" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == enum_ClusterRpParameter[_]
    input.ReqMap.clusterResourceName == enum_ClusterResourceNameParameter[_]
    input.ReqMap.clusterName == STRING
    input.ReqMap.extensionTypeName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ClusterExtensionTypes_List

enum_ClusterResourceNameParameter := [ "managedClusters", "connectedClusters" ]
enum_ClusterRpParameter := [ "Microsoft.ContainerService", "Microsoft.Kubernetes" ]

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == enum_ClusterRpParameter[_]
    input.ReqMap.clusterResourceName == enum_ClusterResourceNameParameter[_]
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExtensionTypes_ClusterGetVersion

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

ExtensionTypes_ClusterListVersions

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.extensionTypeName == STRING
    input.Qs.releaseTrain == STRING
    input.Qs.majorVersion == STRING
    input.Qs.showLatest == BOOLEAN
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExtensionTypes_Get

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

ExtensionTypes_GetVersion

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

ExtensionTypes_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.publisherId == STRING
    input.Qs.offerId == STRING
    input.Qs.planId == STRING
    input.Qs.releaseTrain == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

ExtensionTypes_ListVersions

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.location == STRING
    input.ReqMap.extensionTypeName == STRING
    input.Qs.releaseTrain == STRING
    input.Qs.clusterType == STRING
    input.Qs.majorVersion == STRING
    input.Qs.showLatest == BOOLEAN
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

ExtensionTypes_LocationGet

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

ExtensionTypes_LocationList

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.location == STRING
    input.Qs.publisherId == STRING
    input.Qs.offerId == STRING
    input.Qs.planId == STRING
    input.Qs.releaseTrain == STRING
    input.Qs.clusterType == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Extensions_Create

enum_ExtensionPropertiesAksAssignedIdentityType := [ "SystemAssigned", "UserAssigned" ]
enum_IdentityType := [ "SystemAssigned" ]

valid {
    input.Body.properties.extensionType == STRING
    input.Body.properties.autoUpgradeMinorVersion == BOOLEAN
    input.Body.properties.releaseTrain == STRING
    input.Body.properties.version == STRING
    input.Body.properties.scope.cluster.releaseNamespace == STRING
    input.Body.properties.scope.namespace.targetNamespace == STRING
    input.Body.properties.configurationSettings.STRING == STRING
    input.Body.properties.configurationProtectedSettings.STRING == STRING
    input.Body.properties.statuses[_] == None
    input.Body.properties.aksAssignedIdentity.type == enum_ExtensionPropertiesAksAssignedIdentityType[_]
    input.Body.identity.type == enum_IdentityType[_]
    input.Body.plan.name == STRING
    input.Body.plan.publisher == STRING
    input.Body.plan.product == STRING
    input.Body.plan.promotionCode == STRING
    input.Body.plan.version == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == 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.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.Qs.forceDelete == BOOLEAN
    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.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Extensions_List

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

Extensions_Update

valid {
    input.Body.properties.autoUpgradeMinorVersion == BOOLEAN
    input.Body.properties.releaseTrain == STRING
    input.Body.properties.version == STRING
    input.Body.properties.configurationSettings.STRING == STRING
    input.Body.properties.configurationProtectedSettings.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.extensionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FluxConfigOperationStatus_Get

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

FluxConfigurations_CreateOrUpdate

enum_OperationDefinition := [ "extract", "copy" ]
enum_ScopeDefinition := [ "cluster", "namespace" ]
enum_SourceKindDefinition := [ "GitRepository", "Bucket", "AzureBlob", "OCIRepository" ]

valid {
    input.Body.properties.scope == enum_ScopeDefinition[_]
    input.Body.properties.namespace == STRING
    input.Body.properties.sourceKind == enum_SourceKindDefinition[_]
    input.Body.properties.suspend == BOOLEAN
    input.Body.properties.gitRepository.url == STRING
    input.Body.properties.gitRepository.timeoutInSeconds == INTEGER
    input.Body.properties.gitRepository.syncIntervalInSeconds == INTEGER
    input.Body.properties.gitRepository.repositoryRef.branch == STRING
    input.Body.properties.gitRepository.repositoryRef.tag == STRING
    input.Body.properties.gitRepository.repositoryRef.semver == STRING
    input.Body.properties.gitRepository.repositoryRef.commit == STRING
    input.Body.properties.gitRepository.sshKnownHosts == STRING
    input.Body.properties.gitRepository.httpsUser == STRING
    input.Body.properties.gitRepository.httpsCACert == STRING
    input.Body.properties.gitRepository.localAuthRef == STRING
    input.Body.properties.bucket.url == STRING
    input.Body.properties.bucket.bucketName == STRING
    input.Body.properties.bucket.insecure == BOOLEAN
    input.Body.properties.bucket.timeoutInSeconds == INTEGER
    input.Body.properties.bucket.syncIntervalInSeconds == INTEGER
    input.Body.properties.bucket.accessKey == STRING
    input.Body.properties.bucket.localAuthRef == STRING
    input.Body.properties.azureBlob.url == STRING
    input.Body.properties.azureBlob.containerName == STRING
    input.Body.properties.azureBlob.timeoutInSeconds == INTEGER
    input.Body.properties.azureBlob.syncIntervalInSeconds == INTEGER
    input.Body.properties.azureBlob.servicePrincipal.clientId == STRING
    input.Body.properties.azureBlob.servicePrincipal.tenantId == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientSecret == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientCertificate == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientCertificatePassword == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientCertificateSendChain == BOOLEAN
    input.Body.properties.azureBlob.accountKey == STRING
    input.Body.properties.azureBlob.sasToken == STRING
    input.Body.properties.azureBlob.managedIdentity.clientId == STRING
    input.Body.properties.azureBlob.localAuthRef == STRING
    input.Body.properties.ociRepository.url == STRING
    input.Body.properties.ociRepository.timeoutInSeconds == INTEGER
    input.Body.properties.ociRepository.syncIntervalInSeconds == INTEGER
    input.Body.properties.ociRepository.repositoryRef.tag == STRING
    input.Body.properties.ociRepository.repositoryRef.semver == STRING
    input.Body.properties.ociRepository.repositoryRef.digest == STRING
    input.Body.properties.ociRepository.layerSelector.mediaType == STRING
    input.Body.properties.ociRepository.layerSelector.operation == enum_OperationDefinition[_]
    input.Body.properties.ociRepository.verify.provider == STRING
    input.Body.properties.ociRepository.verify.verificationConfig.STRING == STRING
    input.Body.properties.ociRepository.verify.matchOidcIdentity[_].issuer == STRING
    input.Body.properties.ociRepository.verify.matchOidcIdentity[_].subject == STRING
    input.Body.properties.ociRepository.insecure == BOOLEAN
    input.Body.properties.ociRepository.useWorkloadIdentity == BOOLEAN
    input.Body.properties.ociRepository.serviceAccountName == STRING
    input.Body.properties.ociRepository.tlsConfig.clientCertificate == STRING
    input.Body.properties.ociRepository.tlsConfig.privateKey == STRING
    input.Body.properties.ociRepository.tlsConfig.caCertificate == STRING
    input.Body.properties.ociRepository.localAuthRef == STRING
    input.Body.properties.kustomizations.STRING.path == STRING
    input.Body.properties.kustomizations.STRING.dependsOn[_] == STRING
    input.Body.properties.kustomizations.STRING.timeoutInSeconds == INTEGER
    input.Body.properties.kustomizations.STRING.syncIntervalInSeconds == INTEGER
    input.Body.properties.kustomizations.STRING.retryIntervalInSeconds == INTEGER
    input.Body.properties.kustomizations.STRING.prune == BOOLEAN
    input.Body.properties.kustomizations.STRING.force == BOOLEAN
    input.Body.properties.kustomizations.STRING.wait == BOOLEAN
    input.Body.properties.kustomizations.STRING.postBuild.substitute.STRING == STRING
    input.Body.properties.kustomizations.STRING.postBuild.substituteFrom[_].kind == STRING
    input.Body.properties.kustomizations.STRING.postBuild.substituteFrom[_].name == STRING
    input.Body.properties.kustomizations.STRING.postBuild.substituteFrom[_].optional == BOOLEAN
    input.Body.properties.configurationProtectedSettings.STRING == STRING
    input.Body.properties.waitForReconciliation == BOOLEAN
    input.Body.properties.reconciliationWaitDuration == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.fluxConfigurationName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FluxConfigurations_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.fluxConfigurationName == STRING
    input.Qs.api-version == STRING
    input.Qs.forceDelete == BOOLEAN
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

FluxConfigurations_Get

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

FluxConfigurations_List

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

FluxConfigurations_Update

enum_OperationDefinition := [ "extract", "copy" ]
enum_SourceKindDefinition := [ "GitRepository", "Bucket", "AzureBlob", "OCIRepository" ]

valid {
    input.Body.properties.sourceKind == enum_SourceKindDefinition[_]
    input.Body.properties.suspend == BOOLEAN
    input.Body.properties.gitRepository.url == STRING
    input.Body.properties.gitRepository.timeoutInSeconds == INTEGER
    input.Body.properties.gitRepository.syncIntervalInSeconds == INTEGER
    input.Body.properties.gitRepository.repositoryRef.branch == STRING
    input.Body.properties.gitRepository.repositoryRef.tag == STRING
    input.Body.properties.gitRepository.repositoryRef.semver == STRING
    input.Body.properties.gitRepository.repositoryRef.commit == STRING
    input.Body.properties.gitRepository.sshKnownHosts == STRING
    input.Body.properties.gitRepository.httpsUser == STRING
    input.Body.properties.gitRepository.httpsCACert == STRING
    input.Body.properties.gitRepository.localAuthRef == STRING
    input.Body.properties.bucket.url == STRING
    input.Body.properties.bucket.bucketName == STRING
    input.Body.properties.bucket.insecure == BOOLEAN
    input.Body.properties.bucket.timeoutInSeconds == INTEGER
    input.Body.properties.bucket.syncIntervalInSeconds == INTEGER
    input.Body.properties.bucket.accessKey == STRING
    input.Body.properties.bucket.localAuthRef == STRING
    input.Body.properties.azureBlob.url == STRING
    input.Body.properties.azureBlob.containerName == STRING
    input.Body.properties.azureBlob.timeoutInSeconds == INTEGER
    input.Body.properties.azureBlob.syncIntervalInSeconds == INTEGER
    input.Body.properties.azureBlob.servicePrincipal.clientId == STRING
    input.Body.properties.azureBlob.servicePrincipal.tenantId == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientSecret == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientCertificate == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientCertificatePassword == STRING
    input.Body.properties.azureBlob.servicePrincipal.clientCertificateSendChain == BOOLEAN
    input.Body.properties.azureBlob.accountKey == STRING
    input.Body.properties.azureBlob.sasToken == STRING
    input.Body.properties.azureBlob.managedIdentity.clientId == STRING
    input.Body.properties.azureBlob.localAuthRef == STRING
    input.Body.properties.ociRepository.url == STRING
    input.Body.properties.ociRepository.timeoutInSeconds == INTEGER
    input.Body.properties.ociRepository.syncIntervalInSeconds == INTEGER
    input.Body.properties.ociRepository.repositoryRef.tag == STRING
    input.Body.properties.ociRepository.repositoryRef.semver == STRING
    input.Body.properties.ociRepository.repositoryRef.digest == STRING
    input.Body.properties.ociRepository.layerSelector.mediaType == STRING
    input.Body.properties.ociRepository.layerSelector.operation == enum_OperationDefinition[_]
    input.Body.properties.ociRepository.verify.provider == STRING
    input.Body.properties.ociRepository.verify.verificationConfig.STRING == STRING
    input.Body.properties.ociRepository.verify.matchOidcIdentity[_].issuer == STRING
    input.Body.properties.ociRepository.verify.matchOidcIdentity[_].subject == STRING
    input.Body.properties.ociRepository.insecure == BOOLEAN
    input.Body.properties.ociRepository.useWorkloadIdentity == BOOLEAN
    input.Body.properties.ociRepository.serviceAccountName == STRING
    input.Body.properties.ociRepository.tlsConfig.clientCertificate == STRING
    input.Body.properties.ociRepository.tlsConfig.privateKey == STRING
    input.Body.properties.ociRepository.tlsConfig.caCertificate == STRING
    input.Body.properties.ociRepository.localAuthRef == STRING
    input.Body.properties.kustomizations.STRING.path == STRING
    input.Body.properties.kustomizations.STRING.dependsOn[_] == STRING
    input.Body.properties.kustomizations.STRING.timeoutInSeconds == INTEGER
    input.Body.properties.kustomizations.STRING.syncIntervalInSeconds == INTEGER
    input.Body.properties.kustomizations.STRING.retryIntervalInSeconds == INTEGER
    input.Body.properties.kustomizations.STRING.prune == BOOLEAN
    input.Body.properties.kustomizations.STRING.force == BOOLEAN
    input.Body.properties.kustomizations.STRING.wait == BOOLEAN
    input.Body.properties.kustomizations.STRING.postBuild.substitute.STRING == STRING
    input.Body.properties.kustomizations.STRING.postBuild.substituteFrom[_].kind == STRING
    input.Body.properties.kustomizations.STRING.postBuild.substituteFrom[_].name == STRING
    input.Body.properties.kustomizations.STRING.postBuild.substituteFrom[_].optional == BOOLEAN
    input.Body.properties.configurationProtectedSettings.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.fluxConfigurationName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

OperationStatus_Get

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

OperationStatus_List

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.Qs.api-version == 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
}

PrivateEndpointConnections_CreateOrUpdate

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

valid {
    input.Body.properties.privateEndpoint == {}
    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.scopeName == STRING
    input.ReqMap.privateEndpointConnectionName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrivateEndpointConnections_Delete

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

PrivateEndpointConnections_Get

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

PrivateEndpointConnections_ListByPrivateLinkScope

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

PrivateLinkResources_Get

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

PrivateLinkResources_ListByPrivateLinkScope

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

PrivateLinkScopes_CreateOrUpdate

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

valid {
    input.Body.properties.publicNetworkAccess == enum_PublicNetworkAccessType[_]
    input.Body.properties.clusterResourceId == STRING
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.scopeName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

PrivateLinkScopes_Delete

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

PrivateLinkScopes_Get

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

PrivateLinkScopes_List

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

PrivateLinkScopes_ListByResourceGroup

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

PrivateLinkScopes_UpdateTags

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

SourceControlConfigurations_CreateOrUpdate

enum_OperatorScopeDefinition := [ "cluster", "namespace" ]
enum_OperatorTypeDefinition := [ "Flux" ]

valid {
    input.Body.properties.repositoryUrl == STRING
    input.Body.properties.operatorNamespace == STRING
    input.Body.properties.operatorInstanceName == STRING
    input.Body.properties.operatorType == enum_OperatorTypeDefinition[_]
    input.Body.properties.operatorParams == STRING
    input.Body.properties.configurationProtectedSettings.STRING == STRING
    input.Body.properties.operatorScope == enum_OperatorScopeDefinition[_]
    input.Body.properties.sshKnownHostsContents == STRING
    input.Body.properties.enableHelmOperator == BOOLEAN
    input.Body.properties.helmOperatorProperties.chartVersion == STRING
    input.Body.properties.helmOperatorProperties.chartValues == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.clusterRp == STRING
    input.ReqMap.clusterResourceName == STRING
    input.ReqMap.clusterName == STRING
    input.ReqMap.sourceControlConfigurationName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

SourceControlConfigurations_Delete

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

SourceControlConfigurations_Get

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

SourceControlConfigurations_List

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