pspulumiyaml.azurenative.securityandcompliance.psm1

using module pspulumiyaml
function Invoke-AzureNativeFunctionSecurityandcomplianceGetprivateLinkServicesForMIPPolicySync
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getprivateLinkServicesForMIPPolicySync -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetprivateLinkServicesForO365ManagementActivityAPI
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getprivateLinkServicesForO365ManagementActivityAPI -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetprivateLinkServicesForSCCPowershell
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getprivateLinkServicesForSCCPowershell -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetPrivateEndpointConnectionsSec
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["privateEndpointConnectionName"] = $privateEndpointConnectionName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getPrivateEndpointConnectionsSec -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetprivateLinkServicesForM365ComplianceCenter
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getprivateLinkServicesForM365ComplianceCenter -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetprivateLinkServicesForM365SecurityCenter
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getprivateLinkServicesForM365SecurityCenter -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetPrivateEndpointConnectionsForMIPPolicySync
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["privateEndpointConnectionName"] = $privateEndpointConnectionName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getPrivateEndpointConnectionsForMIPPolicySync -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetPrivateEndpointConnectionsForSCCPowershell
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["privateEndpointConnectionName"] = $privateEndpointConnectionName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getPrivateEndpointConnectionsForSCCPowershell -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetPrivateEndpointConnectionsForEDM
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["privateEndpointConnectionName"] = $privateEndpointConnectionName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getPrivateEndpointConnectionsForEDM -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetprivateLinkServicesForEDMUpload
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName
    )

    process
    {
        $arguments = @{}
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getprivateLinkServicesForEDMUpload -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetPrivateEndpointConnectionsComp
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["privateEndpointConnectionName"] = $privateEndpointConnectionName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getPrivateEndpointConnectionsComp -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionSecurityandcomplianceGetPrivateEndpointConnectionsAdtAPI
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName
    )

    process
    {
        $arguments = @{}
        $arguments["privateEndpointConnectionName"] = $privateEndpointConnectionName
        $arguments["resourceGroupName"] = $resourceGroupName
        $arguments["resourceName"] = $resourceName

        $functionObject = Invoke-PulumiFunction -Name azure-native:securityandcompliance:getPrivateEndpointConnectionsAdtAPI -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
class PrivateLinkServiceConnectionState
{
    [string] $actionsRequired
    [string] $description
    [ArgumentCompletions('Pending', 'Approved', 'Rejected')]
    [string] $status
}
function New-AzureNativeTypeSecurityandcompliancePrivateLinkServiceConnectionState
{
    param (
        [parameter(mandatory=$False,HelpMessage='A message indicating if changes on the service provider require any updates on the consumer.)')]
        [string]
        $actionsRequired,
        [parameter(mandatory=$False,HelpMessage='The reason for approval/rejection of the connection.)')]
        [string]
        $description,
        [parameter(mandatory=$False,HelpMessage='Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.)')]
        [string]
        [ValidateSet('Pending', 'Approved', 'Rejected')]
        $status
    )

    process
    {
        return $([PrivateLinkServiceConnectionState]$PSBoundParameters)
    }
}
function New-AzureNativeSecurityandcompliancePrivateEndpointConnectionsSec
{
    [Alias('azure_native_securityandcompliance_privateendpointconnectionssec')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='A collection of information about the state of the connection between service consumer and provider.)')]
        [PrivateLinkServiceConnectionState]
        $privateLinkServiceConnectionState,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:PrivateEndpointConnectionsSec")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["privateLinkServiceConnectionState"] = $privateLinkServiceConnectionState
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["resourceName"] = $resourceName

        if($PSBoundParameters.Keys -icontains 'privateEndpointConnectionName')
        {
            $resource.properties["privateEndpointConnectionName"] = $privateEndpointConnectionName
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
class ServicesResourceIdentity
{
    [ArgumentCompletions('SystemAssigned', 'None')]
    [string] $type
}
function New-AzureNativeTypeSecurityandcomplianceServicesResourceIdentity
{
    param (
        [parameter(mandatory=$False,HelpMessage='Type of identity being specified, currently SystemAssigned and None are allowed.)')]
        [string]
        [ValidateSet('SystemAssigned', 'None')]
        $type
    )

    process
    {
        return $([ServicesResourceIdentity]$PSBoundParameters)
    }
}
class ServiceAuthenticationConfigurationInfo
{
    [bool] $smartProxyEnabled
    [string] $authority
    [string] $audience
}
function New-AzureNativeTypeSecurityandcomplianceServiceAuthenticationConfigurationInfo
{
    param (
        [parameter(mandatory=$False,HelpMessage='If the SMART on FHIR proxy is enabled)')]
        [bool]
        $smartProxyEnabled,
        [parameter(mandatory=$False,HelpMessage='The authority url for the service)')]
        [string]
        $authority,
        [parameter(mandatory=$False,HelpMessage='The audience url for the service)')]
        [string]
        $audience
    )

    process
    {
        return $([ServiceAuthenticationConfigurationInfo]$PSBoundParameters)
    }
}
class ServiceAccessPolicyEntry
{
    [string] $objectId
}
function New-AzureNativeTypeSecurityandcomplianceServiceAccessPolicyEntry
{
    param (
        [parameter(mandatory=$False,HelpMessage='An Azure AD object ID (User or Apps) that is allowed access to the FHIR service.)')]
        [string]
        $objectId
    )

    process
    {
        return $([ServiceAccessPolicyEntry]$PSBoundParameters)
    }
}
class PrivateEndpointConnection
{
    [PrivateLinkServiceConnectionState] $privateLinkServiceConnectionState
}
function New-AzureNativeTypeSecurityandcompliancePrivateEndpointConnection
{
    param (
        [parameter(mandatory=$False,HelpMessage='A collection of information about the state of the connection between service consumer and provider.)')]
        [PrivateLinkServiceConnectionState]
        $privateLinkServiceConnectionState
    )

    process
    {
        return $([PrivateEndpointConnection]$PSBoundParameters)
    }
}
class ServiceCosmosDbConfigurationInfo
{
    [int] $offerThroughput
    [string] $keyVaultKeyUri
}
function New-AzureNativeTypeSecurityandcomplianceServiceCosmosDbConfigurationInfo
{
    param (
        [parameter(mandatory=$False,HelpMessage='The provisioned throughput for the backing database.)')]
        [int]
        $offerThroughput,
        [parameter(mandatory=$False,HelpMessage='The URI of the customer-managed key for the backing database.)')]
        [string]
        $keyVaultKeyUri
    )

    process
    {
        return $([ServiceCosmosDbConfigurationInfo]$PSBoundParameters)
    }
}
class ServiceExportConfigurationInfo
{
    [string] $storageAccountName
}
function New-AzureNativeTypeSecurityandcomplianceServiceExportConfigurationInfo
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the default export storage account.)')]
        [string]
        $storageAccountName
    )

    process
    {
        return $([ServiceExportConfigurationInfo]$PSBoundParameters)
    }
}
class ServiceCorsConfigurationInfo
{
    [int] $maxAge
    [bool] $allowCredentials
    [string[]] $methods
    [string[]] $headers
    [string[]] $origins
}
function New-AzureNativeTypeSecurityandcomplianceServiceCorsConfigurationInfo
{
    param (
        [parameter(mandatory=$False,HelpMessage='The max age to be allowed via CORS.)')]
        [int]
        $maxAge,
        [parameter(mandatory=$False,HelpMessage='If credentials are allowed via CORS.)')]
        [bool]
        $allowCredentials,
        [parameter(mandatory=$False,HelpMessage='The methods to be allowed via CORS.)')]
        [string[]]
        $methods,
        [parameter(mandatory=$False,HelpMessage='The headers to be allowed via CORS.)')]
        [string[]]
        $headers,
        [parameter(mandatory=$False,HelpMessage='The origins to be allowed via CORS.)')]
        [string[]]
        $origins
    )

    process
    {
        return $([ServiceCorsConfigurationInfo]$PSBoundParameters)
    }
}
class ServicesProperties
{
    [ServiceAuthenticationConfigurationInfo] $authenticationConfiguration
    [ServiceAccessPolicyEntry[]] $accessPolicies
    [PrivateEndpointConnection[]] $privateEndpointConnections
    [ServiceCosmosDbConfigurationInfo] $cosmosDbConfiguration
    [ArgumentCompletions('Enabled', 'Disabled')]
    [string] $publicNetworkAccess
    [ServiceExportConfigurationInfo] $exportConfiguration
    [ServiceCorsConfigurationInfo] $corsConfiguration
}
function New-AzureNativeTypeSecurityandcomplianceServicesProperties
{
    param (
        [parameter(mandatory=$False,HelpMessage='The authentication configuration for the service instance.)')]
        [ServiceAuthenticationConfigurationInfo]
        $authenticationConfiguration,
        [parameter(mandatory=$False,HelpMessage='The access policies of the service instance.)')]
        $accessPolicies,
        [parameter(mandatory=$False,HelpMessage='The list of private endpoint connections that are set up for this resource.)')]
        $privateEndpointConnections,
        [parameter(mandatory=$False,HelpMessage='The settings for the Cosmos DB database backing the service.)')]
        [ServiceCosmosDbConfigurationInfo]
        $cosmosDbConfiguration,
        [parameter(mandatory=$False,HelpMessage='Control permission for data plane traffic coming from public networks while private endpoint is enabled.)')]
        [string]
        [ValidateSet('Enabled', 'Disabled')]
        $publicNetworkAccess,
        [parameter(mandatory=$False,HelpMessage='The settings for the export operation of the service instance.)')]
        [ServiceExportConfigurationInfo]
        $exportConfiguration,
        [parameter(mandatory=$False,HelpMessage='The settings for the CORS configuration of the service instance.)')]
        [ServiceCorsConfigurationInfo]
        $corsConfiguration
    )

    process
    {
        return $([ServicesProperties]$PSBoundParameters)
    }
}
function New-AzureNativeSecurityandcompliancePrivateLinkServicesForM365ComplianceCenter
{
    [Alias('azure_native_securityandcompliance_privatelinkservicesform365compliancecenter')]
    param (
        [parameter(mandatory=$False,HelpMessage='The kind of the service.)')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='Setting indicating whether the service has a managed identity associated with it.)')]
        [ServicesResourceIdentity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The common properties of a service.)')]
        [ServicesProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:privateLinkServicesForM365ComplianceCenter")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'identity')
        {
            $resource.properties["identity"] = $identity
        }

        if($PSBoundParameters.Keys -icontains 'resourceName')
        {
            $resource.properties["resourceName"] = $resourceName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateLinkServicesForEDMUpload
{
    [Alias('azure_native_securityandcompliance_privatelinkservicesforedmupload')]
    param (
        [parameter(mandatory=$False,HelpMessage='The kind of the service.)')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='Setting indicating whether the service has a managed identity associated with it.)')]
        [ServicesResourceIdentity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The common properties of a service.)')]
        [ServicesProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:privateLinkServicesForEDMUpload")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'identity')
        {
            $resource.properties["identity"] = $identity
        }

        if($PSBoundParameters.Keys -icontains 'resourceName')
        {
            $resource.properties["resourceName"] = $resourceName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateLinkServicesForSCCPowershell
{
    [Alias('azure_native_securityandcompliance_privatelinkservicesforsccpowershell')]
    param (
        [parameter(mandatory=$False,HelpMessage='The kind of the service.)')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='Setting indicating whether the service has a managed identity associated with it.)')]
        [ServicesResourceIdentity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The common properties of a service.)')]
        [ServicesProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:privateLinkServicesForSCCPowershell")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'identity')
        {
            $resource.properties["identity"] = $identity
        }

        if($PSBoundParameters.Keys -icontains 'resourceName')
        {
            $resource.properties["resourceName"] = $resourceName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateEndpointConnectionsForMIPPolicySync
{
    [Alias('azure_native_securityandcompliance_privateendpointconnectionsformippolicysync')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='A collection of information about the state of the connection between service consumer and provider.)')]
        [PrivateLinkServiceConnectionState]
        $privateLinkServiceConnectionState,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:PrivateEndpointConnectionsForMIPPolicySync")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["privateLinkServiceConnectionState"] = $privateLinkServiceConnectionState
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["resourceName"] = $resourceName

        if($PSBoundParameters.Keys -icontains 'privateEndpointConnectionName')
        {
            $resource.properties["privateEndpointConnectionName"] = $privateEndpointConnectionName
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateLinkServicesForMIPPolicySync
{
    [Alias('azure_native_securityandcompliance_privatelinkservicesformippolicysync')]
    param (
        [parameter(mandatory=$False,HelpMessage='The kind of the service.)')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='Setting indicating whether the service has a managed identity associated with it.)')]
        [ServicesResourceIdentity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The common properties of a service.)')]
        [ServicesProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:privateLinkServicesForMIPPolicySync")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'identity')
        {
            $resource.properties["identity"] = $identity
        }

        if($PSBoundParameters.Keys -icontains 'resourceName')
        {
            $resource.properties["resourceName"] = $resourceName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateEndpointConnectionsAdtAPI
{
    [Alias('azure_native_securityandcompliance_privateendpointconnectionsadtapi')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='A collection of information about the state of the connection between service consumer and provider.)')]
        [PrivateLinkServiceConnectionState]
        $privateLinkServiceConnectionState,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:PrivateEndpointConnectionsAdtAPI")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["privateLinkServiceConnectionState"] = $privateLinkServiceConnectionState
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["resourceName"] = $resourceName

        if($PSBoundParameters.Keys -icontains 'privateEndpointConnectionName')
        {
            $resource.properties["privateEndpointConnectionName"] = $privateEndpointConnectionName
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateEndpointConnectionsComp
{
    [Alias('azure_native_securityandcompliance_privateendpointconnectionscomp')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='A collection of information about the state of the connection between service consumer and provider.)')]
        [PrivateLinkServiceConnectionState]
        $privateLinkServiceConnectionState,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:PrivateEndpointConnectionsComp")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["privateLinkServiceConnectionState"] = $privateLinkServiceConnectionState
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["resourceName"] = $resourceName

        if($PSBoundParameters.Keys -icontains 'privateEndpointConnectionName')
        {
            $resource.properties["privateEndpointConnectionName"] = $privateEndpointConnectionName
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateEndpointConnectionsForSCCPowershell
{
    [Alias('azure_native_securityandcompliance_privateendpointconnectionsforsccpowershell')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='A collection of information about the state of the connection between service consumer and provider.)')]
        [PrivateLinkServiceConnectionState]
        $privateLinkServiceConnectionState,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:PrivateEndpointConnectionsForSCCPowershell")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["privateLinkServiceConnectionState"] = $privateLinkServiceConnectionState
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["resourceName"] = $resourceName

        if($PSBoundParameters.Keys -icontains 'privateEndpointConnectionName')
        {
            $resource.properties["privateEndpointConnectionName"] = $privateEndpointConnectionName
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateEndpointConnectionsForEDM
{
    [Alias('azure_native_securityandcompliance_privateendpointconnectionsforedm')]
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='A collection of information about the state of the connection between service consumer and provider.)')]
        [PrivateLinkServiceConnectionState]
        $privateLinkServiceConnectionState,
        [parameter(mandatory=$False,HelpMessage='The name of the private endpoint connection associated with the Azure resource)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:PrivateEndpointConnectionsForEDM")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["privateLinkServiceConnectionState"] = $privateLinkServiceConnectionState
        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["resourceName"] = $resourceName

        if($PSBoundParameters.Keys -icontains 'privateEndpointConnectionName')
        {
            $resource.properties["privateEndpointConnectionName"] = $privateEndpointConnectionName
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateLinkServicesForO365ManagementActivityAPI
{
    [Alias('azure_native_securityandcompliance_privatelinkservicesforo365managementactivityapi')]
    param (
        [parameter(mandatory=$False,HelpMessage='The kind of the service.)')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='Setting indicating whether the service has a managed identity associated with it.)')]
        [ServicesResourceIdentity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The common properties of a service.)')]
        [ServicesProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:privateLinkServicesForO365ManagementActivityAPI")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'identity')
        {
            $resource.properties["identity"] = $identity
        }

        if($PSBoundParameters.Keys -icontains 'resourceName')
        {
            $resource.properties["resourceName"] = $resourceName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}
function New-AzureNativeSecurityandcompliancePrivateLinkServicesForM365SecurityCenter
{
    [Alias('azure_native_securityandcompliance_privatelinkservicesform365securitycenter')]
    param (
        [parameter(mandatory=$False,HelpMessage='The kind of the service.)')]
        $kind,
        [parameter(mandatory=$False,HelpMessage='Setting indicating whether the service has a managed identity associated with it.)')]
        [ServicesResourceIdentity]
        $identity,
        [parameter(mandatory=$False,HelpMessage='The name of the service instance.)')]
        [string]
        $resourceName,
        [parameter(mandatory=$False,HelpMessage='The common properties of a service.)')]
        [ServicesProperties]
        $properties,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the service instance.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid,
        [parameter(mandatory,HelpMessage='Pass in the resources you make to make this resource dependant on')]
        [object]
        $DependsOn
    )

    process
    {
        $resource = [pulumiresource]::new($pulumiid, "azure-native:securityandcompliance:privateLinkServicesForM365SecurityCenter")

        foreach($Dependency in $DependsOn)
        {
            if($Dependency -is [pulumiresource])
            {
                $resource.dependson += $Dependency.Reference()
            } else
            {
                $resource.dependson += $Dependency
            }
        }
        $resource.properties["kind"] = $kind
        $resource.properties["resourceGroupName"] = $resourceGroupName

        if($PSBoundParameters.Keys -icontains 'identity')
        {
            $resource.properties["identity"] = $identity
        }

        if($PSBoundParameters.Keys -icontains 'resourceName')
        {
            $resource.properties["resourceName"] = $resourceName
        }

        if($PSBoundParameters.Keys -icontains 'properties')
        {
            $resource.properties["properties"] = $properties
        }

        if($PSBoundParameters.Keys -icontains 'tags')
        {
            $resource.properties["tags"] = $tags
        }

        if($PSBoundParameters.Keys -icontains 'location')
        {
            $resource.properties["location"] = $location
        }

        $global:pulumiresources += $resource
        return $resource
    }
}