pspulumiyaml.azurenative.iotcentral.psm1

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

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:iotcentral:getApp -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
function Invoke-AzureNativeFunctionIotcentralGetPrivateEndpointConnection
{
    param (
        [parameter(mandatory=$False,HelpMessage='The private endpoint connection name.)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the IoT Central application.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The ARM resource name of the IoT Central application.)')]
        [string]
        $resourceName
    )

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

        $functionObject = Invoke-PulumiFunction -Name azure-native:iotcentral:getPrivateEndpointConnection -variableName $([guid]::NewGuid().Guid) -Arguments $arguments
        return $functionObject
    }
}
class PrivateLinkServiceConnectionState
{
    [string] $description
    [string] $actionsRequired
    [ValidateSet('Pending', 'Approved', 'Rejected')]
    [string] $status
}
function New-AzureNativeTypeIotcentralPrivateLinkServiceConnectionState
{
    param (
        [parameter(mandatory=$False,HelpMessage='The reason for approval/rejection of the connection.)')]
        [string]
        $description,
        [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='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-AzureNativeIotcentralPrivateEndpointConnection
{
    [Alias('azure_native_iotcentral_privateendpointconnection')]
    param (
        [parameter(mandatory=$False,HelpMessage='The private endpoint connection name.)')]
        [string]
        $privateEndpointConnectionName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the IoT Central application.)')]
        [string]
        $resourceGroupName,
        [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 ARM resource name of the IoT Central application.)')]
        [string]
        $resourceName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid
    )

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

        $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 AppSkuInfo
{
    [ValidateSet('F1', 'S1', 'ST0', 'ST1', 'ST2')]
    [string] $name
}
function New-AzureNativeTypeIotcentralAppSkuInfo
{
    param (
        [parameter(mandatory=$False,HelpMessage='The name of the SKU.)')]
        [string]
        [ValidateSet('F1', 'S1', 'ST0', 'ST1', 'ST2')]
        $name
    )

    process
    {
        return $([AppSkuInfo]$PSBoundParameters)
    }
}
function New-AzureNativeIotcentralApp
{
    [Alias('azure_native_iotcentral_app')]
    param (
        [parameter(mandatory=$False,HelpMessage='A valid instance SKU.)')]
        [AppSkuInfo]
        $sku,
        [parameter(mandatory=$False,HelpMessage='The resource tags.)')]
        [hashtable]
        $tags,
        [parameter(mandatory=$False,HelpMessage='The ID of the application template, which is a blueprint that defines the characteristics and behaviors of an application. Optional; if not specified, defaults to a blank blueprint and allows the application to be defined from scratch.)')]
        [string]
        $template,
        [parameter(mandatory=$False,HelpMessage='The resource location.)')]
        [string]
        $location,
        [parameter(mandatory=$False,HelpMessage='The subdomain of the application.)')]
        [string]
        $subdomain,
        [parameter(mandatory=$False,HelpMessage='The display name of the application.)')]
        [string]
        $displayName,
        [parameter(mandatory=$False,HelpMessage='The name of the resource group that contains the IoT Central application.)')]
        [string]
        $resourceGroupName,
        [parameter(mandatory=$False,HelpMessage='The ARM resource name of the IoT Central application.)')]
        [string]
        $resourceName,
        [parameter(mandatory,HelpMessage='The reference to call when you want to make a dependency to another resource')]
        [string]
        $pulumiid
    )

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

        $resource.properties["resourceGroupName"] = $resourceGroupName
        $resource.properties["sku"] = $sku

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

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

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

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

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

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

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